Estensione azure_ai in Database di Azure per PostgreSQL

L'estensione azure_ai in Database di Azure per PostgreSQL consente l'uso nel database di modelli di linguaggio di grandi dimensioni per creare applicazioni di intelligenza artificiale generative. Consente al database di chiamare Azure OpenAI nei modelli di Microsoft Foundry, Servizio Azure OpenAI, Azure Cognitive Services (Azure Language in Foundry Tools) e i Servizi di Machine Learning di Azure, semplificando lo sviluppo grazie a un'integrazione fluida con questi servizi.

Abilitare l'estensione azure_ai

Prima di poter usare l'estensione azure_ai, è necessario metterla nella lista consentita e quindi installarla nella tua istanza di Azure Database per PostgreSQL. Per iniziare, seguire questa procedura.

Aggiungere l'estensione all'elenco elementi consentiti

Aggiungere azure_ai all'elenco di elementi consentiti del server flessibile di Database di Azure per PostgreSQL come descritto in come usare le estensioni PostgreSQL. Verificare che sia stato aggiunto correttamente eseguendo la SHOW azure.extensions; query.

Installare l'estensione

Connettersi al database ed eseguire il CREATE EXTENSION comando :

CREATE EXTENSION IF NOT EXISTS azure_ai;

Ripetere questo comando per ogni database in cui è necessaria l'estensione.

Quando si installa azure_ai, crea gli schemi seguenti:

  • azure_ai: schema principale per la configurazione e le funzioni correlate
  • azure_openai: funzioni e tipi per Azure OpenAI nei modelli Foundry e nei modelli OpenAI in Microsoft Foundry
  • azure_cognitive: funzioni e tipi per Servizi Cognitivi di Azure (Azure Language in Foundry Tools)
  • azure_ml: funzioni e tipi per i servizi Azure Machine Learning

Suggerimento

Potresti anche abilitare e utilizzare pgvector in Database di Azure per PostgreSQL perché viene comunemente usato con azure_ai.

Annotazioni

Per rimuovere l'estensione dal database corrente, eseguire DROP EXTENSION azure_ai;.

Configurare l'estensione azure_ai

Per configurare l'estensione, specificare endpoint e dettagli di autenticazione (chiave API o identità gestita) per i servizi di intelligenza artificiale e Machine Learning Azure da usare. Usare la azure_ai.set_setting funzione di configurazione con varie chiavi di configurazione per archiviare questi valori.

Permissions

L'estensione definisce un ruolo azure_ai_settings_manager che concede l'autorizzazione per leggere e scrivere le impostazioni di configurazione usando le azure_ai.set_getting funzioni e azure_ai.set_setting . Solo gli utenti avanzati e i membri di questo ruolo possono chiamare queste funzioni. In Azure Database per PostgreSQL Server Flessibile, il ruolo azure_pg_admin concede questo ruolo per impostazione predefinita.

Funzioni di configurazione

azure_ai_set_setting

Imposta la configurazione di intelligenza artificiale e Machine Learning.

Utilizzo:

-- Syntax
azure_ai.set_setting(key TEXT, value TEXT)

-- Usage example: Set the Endpoint and an API Key for 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>');

Elenco di chiavi e valori di configurazione supportati:

key value
azure_openai.endpoint Endpoint OpenAI supportato (ad esempio, https://example.openai.azure.com).
azure_openai.auth_type subscription-key O managed-identity
azure_openai.subscription_key Chiave di sottoscrizione per una risorsa OpenAI.
azure_cognitive.endpoint Endpoint di Servizi cognitivi supportato (ad esempio, https://example.cognitiveservices.azure.com)
azure_cognitive.auth_type subscription-key O managed-identity
azure_cognitive.subscription_key Chiave di sottoscrizione per una risorsa di Servizi cognitivi.
azure_ml.scoring_endpoint URI dell'endpoint online di Machine Learning supportato.
azure_ml.auth_type subscription-key O managed-identity
azure_ml.endpoint_key Una chiave endpoint per un endpoint Azure ML.

azure_ai.get_setting

Ottiene i valori di configurazione correnti per un dato key (vedere chiavi supportate nell'elenco precedente). Restituisce TEXT un valore che rappresenta il valore corrente dell'impostazione selezionata.

Utilizzo:

-- Syntax
azure_ai.get_setting(key TEXT)

-- Usage example: Get the Endpoint and API Key for Azure OpenAI
select azure_ai.get_setting('azure_openai.endpoint');
select azure_ai.get_setting('azure_openai.subscription_key');

azure_ai.version

Restituisce TEXT un valore che rappresenta la versione corrente dell'estensione azure_ai .

Utilizzo:

SELECT azure_ai.version()

Abilitare l'autenticazione dell'identità gestita

L'estensione azure_ai per Database di Azure per PostgreSQL supporta l'identità gestita assegnata dal sistema (SAMI), che offre vantaggi di sicurezza avanzati. Usando Microsoft Entra ID, è possibile eseguire l'autenticazione senza chiavi di accesso, riducendo il rischio di accesso non autorizzato e semplificando la gestione delle credenziali.

Per abilitare l'autenticazione dell'identità gestita, vedere questa guida pratica.

Funzionalità dell'estensione azure_ai

Funzioni di intelligenza artificiale

L'estensione azure_ai abilita le chiamate nel database ai modelli ospitati in Foundry e Azure OpenAI tramite le funzioni AI (anteprima):

Funzionalità aggiuntive

L'estensione supporta anche la chiamata

Aggiornare l'estensione intelligenza artificiale e Machine Learning

Per controllare la versione installata e gli aggiornamenti disponibili, eseguire:

SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'

Per aggiornare l'estensione alla versione supportata più recente, eseguire:

ALTER EXTENSION azure_ai UPDATE;