Delen via


Azure AI-extensie in Azure Database voor PostgreSQL

Van toepassing op: Azure Database for PostgreSQL - Flexible Server

Met azure Database for PostgreSQL flexibele serverextensie voor Azure AI kunt u grote taalmodellen (LLMS) gebruiken en uitgebreide generatieve AI-toepassingen bouwen in de database.  Met de Azure AI-extensie kan de database verschillende Azure AI-services aanroepen, waaronder Azure OpenAI en Azure Cognitive Services , waardoor het ontwikkelingsproces wordt vereenvoudigd, waardoor naadloze integratie in deze services mogelijk is.

De azure_ai-extensie inschakelen

Voordat u azure_ai kunt inschakelen op uw flexibele Azure Database for PostgreSQL-instantieserver, moet u deze toevoegen aan uw toegestane lijst, zoals beschreven in hoe PostgreSQL-extensies te gebruiken en controleren of deze correct is toegevoegd door SHOW azure.extensions; uit te voeren.

Aanbeveling

Mogelijk wilt u de pgvector extensie ook inschakelen omdat deze vaak wordt gebruikt met azure_ai.

Vervolgens kunt u de extensie installeren door verbinding te maken met uw doeldatabase en de opdracht CREATE EXTENSION uit te voeren. U moet de opdracht afzonderlijk herhalen voor elke database waarin u wilt dat de extensie beschikbaar is.

CREATE EXTENSION IF NOT EXISTS azure_ai;

Opmerking

Als u de extensie wilt verwijderen uit de momenteel verbonden database, gebruikt u DROP EXTENSION azure_ai;.

Als u de extensie azure_ai installeert, worden de volgende drie schema's gemaakt:

  • azure_ai: principal-schema waarin de configuratietabel zich bevindt en functies om ermee te communiceren.
  • azure_openai: functies en samengestelde typen met betrekking tot OpenAI.
  • azure_cognitive: functies en samengestelde typen met betrekking tot Cognitive Services.

Met de extensie kunnen ook Azure OpenAI en Azure Cognitive Services worden aangeroepen.

De azure_ai-extensie configureren

Als u de extensie configureert, moet u de eindpunten opgeven om verbinding te maken met de Azure AI-services en de API-sleutels die vereist zijn voor verificatie. Service-instellingen worden opgeslagen met behulp van de volgende functies:

Machtigingen

Uw Azure AI-toegangssleutels zijn vergelijkbaar met een hoofdwachtwoord voor uw account. Wees altijd voorzichtig met het beveiligen van uw toegangssleutels. Gebruik Azure Key Vault om uw sleutels veilig te beheren en te roteren. Voor het beheren van servicesleutels die door de extensie worden gebruikt, hebben gebruikers de azure_ai_settings_manager rol nodig die aan hen is verleend. Voor de volgende functies is de rol vereist:

  • azure_ai.stel_instelling_in
  • azure_ai.get_setting

De azure_ai_settings_manager rol wordt standaard verleend aan de azure_pg_admin rol.

azure_ai.set_setting

Wordt gebruikt om configuratieopties in te stellen.

azure_ai.set_setting(key TEXT, value TEXT)

Argumenten

key

Naam van een configuratieoptie. Geldige waarden voor de key volgende zijn:

  • azure_openai.endpoint: Ondersteund OpenAI-eindpunt (bijvoorbeeld https://example.openai.azure.com).
  • azure_openai.subscription_key: Een abonnementssleutel voor een OpenAI-resource.
  • azure_cognitive.endpoint: Ondersteund Cognitive Services-eindpunt (bijvoorbeeld https://example.cognitiveservices.azure.com).
  • azure_cognitive.subscription_key: Een abonnementssleutel voor een Cognitive Services-resource.
value

TEXT de gewenste waarde van de geselecteerde instelling vertegenwoordigen.

azure_ai.get_setting

Wordt gebruikt om de huidige waarden van configuratieopties te verkrijgen.

azure_ai.get_setting(key TEXT)

Argumenten

Sleutelcode

Naam van een configuratieoptie. Geldige waarden voor de key volgende zijn:

  • azure_openai.endpoint: Ondersteund OpenAI-eindpunt (bijvoorbeeld https://example.openai.azure.com).
  • azure_openai.subscription_key: Een abonnementssleutel voor een OpenAI-resource.
  • azure_cognitive.endpoint: Ondersteund Cognitive Services-eindpunt (bijvoorbeeld https://example.cognitiveservices.azure.com).
  • azure_cognitive.subscription_key: Een abonnementssleutel voor een Cognitive Services-resource.

Resultaattype

TEXT de huidige waarde van de geselecteerde instelling weergeven.

azure_ai.version

azure_ai.version()

Resultaattype

TEXT vertegenwoordigt de huidige versie van de Azure AI-extensie.

Voorbeelden

Het eindpunt en een API-sleutel instellen voor Azure OpenAI

select azure_ai.set_setting('azure_openai.endpoint','https://<endpoint>.openai.azure.com'); 
select azure_ai.set_setting('azure_openai.subscription_key', '<API Key>'); 

Haal het eindpunt en de API-sleutel voor Azure OpenAI op

select azure_ai.get_setting('azure_openai.endpoint');
select azure_ai.get_setting('azure_openai.subscription_key');

De versie van de Azure AI-extensie controleren

select azure_ai.version();

Machtigingen

De azure_ai extensie definieert een rol genaamd azure_ai_settings_manager, waarmee u instellingen met betrekking tot de extensie kunt lezen en schrijven. Alleen supergebruikers en leden van de azure_ai_settings_manager rol kunnen de azure_ai.get_settings en azure_ai.set_settings functies aanroepen. In Azure Database for PostgreSQL flexibele server hebben alle beheerders de azure_ai_settings_manager rol toegewezen.

De Azure AI-extensie upgraden

Nieuwere versies van de extensie kunnen nieuwe functionaliteit introduceren en in-place upgrades van de extensie zijn toegestaan. U kunt de momenteel geïnstalleerde versie vergelijken met de nieuwste versie die is toegestaan met behulp van de SQL-opdracht:

SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'

Als u een geïnstalleerde extensie wilt bijwerken naar de nieuwste beschikbare versie die wordt ondersteund door Azure, gebruikt u de volgende SQL-opdracht:

ALTER EXTENSION azure_ai UPDATE;