Condividi tramite


Estensioni di Azure per intelligenza artificiale nel Database di Azure per PostgreSQL - Server flessibile

SI APPLICA A: Database di Azure per PostgreSQL - Server flessibile

L'estensione del server flessibile di Database di Azure per PostgreSQL per Azure per intelligenza artificiale consente di usare modelli di linguaggio di grandi dimensioni (LLMS) e di creare applicazioni di intelligenza artificiale generativa avanzate all'interno del database.  L'estensione Azure per intelligenza artificiale consente al database di chiamare vari servizi di Azure per intelligenza artificiale, tra cui Azure OpenAI e Servizi cognitivi di Azure, semplificando il processo di sviluppo che consente un'integrazione uniforme in tali servizi.

Abilitare l'estensione azure_ai

Prima di poter abilitare azure_ai nell'istanza del server flessibile di Database di Azure per PostgreSQL, è necessario aggiungerla all'elenco di elementi consentiti come descritto in Come usare le estensioni PostgreSQL e verificare se sono state aggiunte correttamente eseguendo SHOW azure.extensions;.

Suggerimento

È anche possibile abilitare l'pgvectorestensione perché viene comunemente usata con azure_ai.

È quindi possibile installare l'estensione connettendosi al database di destinazione ed eseguendo il comando CREA ESTENSIONE. È necessario ripetere il comando separatamente per ogni database in cui si desidera che l'estensione sia disponibile.

CREATE EXTENSION azure_ai;

Nota

Per rimuovere l'estensione dal database attualmente connesso, usare DROP EXTENSION azure_ai;.

L'installazione dell'estensione azure_ai crea i tre schemi seguenti:

  • azure_ai: schema principale in cui risiede la tabella di configurazione e funzioni per interagire con esso.
  • azure_openai: funzioni e tipi compositi correlati a OpenAI.
  • azure_cognitive: funzioni e tipi compositi correlati a Servizi cognitivi.

L'estensione consente anche di chiamare Azure OpenAI e Servizi cognitivi di Azure.

Configurare l'estensione azure_ai

La configurazione dell'estensione richiede di fornire gli endpoint per connettersi ai servizi di intelligenza artificiale di Azure e alle chiavi API necessarie per l'autenticazione. Le impostazioni del servizio vengono archiviate usando le funzioni seguenti:

Autorizzazioni

Le chiavi di accesso di Azure per intelligenza artificiale sono simili a una password radice per l'account. Fare sempre attenzione a proteggere le chiavi di accesso. Usare Azure Key Vault per gestire e ruotare le chiavi in modo sicuro. Per gestire le chiavi del servizio usate dall'estensione, gli utenti richiedono il ruolo azure_ai_settings_manager loro concesso. Le funzioni seguenti richiedono il ruolo :

  • azure_ai.set_setting
  • azure_ai.get_setting

Il ruolo azure_ai_settings_manager viene concesso per impostazione predefinita al ruolo azure_pg_admin.

azure_ai.set_setting

Utilizzato per impostare le opzioni di configurazione.

azure_ai.set_setting(key TEXT, value TEXT)

Argomenti

key

Nome di un'opzione di configurazione. I valori validi per key sono:

  • azure_openai.endpoint: endpoint OpenAI supportato (ad esempio, https://example.openai.azure.com).
  • 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.subscription_key: chiave di sottoscrizione per una risorsa di Servizi cognitivi.
value

TEXT che rappresenta il valore desiderato dell'impostazione selezionata.

azure_ai.get_setting

Utilizzato per ottenere i valori correnti delle opzioni di configurazione.

azure_ai.get_setting(key TEXT)

Argomenti

Chiave

Nome di un'opzione di configurazione. I valori validi per key sono:

  • azure_openai.endpoint: endpoint OpenAI supportato (ad esempio, https://example.openai.azure.com).
  • 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.subscription_key: chiave di sottoscrizione per una risorsa di Servizi cognitivi.

Tipo restituito

TEXT che rappresenta il valore corrente dell'impostazione selezionata.

azure_ai.version

azure_ai.version()

Tipo restituito

TEXT che rappresenta la versione corrente dell'estensione Azure per intelligenza artificiale.

Esempi

Impostare l'endpoint e una chiave API per 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>'); 

Ottenere l'endpoint e la chiave API per Azure OpenAI

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

Controllare la versione dell'estensione Azure per intelligenza artificiale

select azure_ai.version();

Autorizzazioni

L'estensione azure_ai definisce un ruolo denominato azure_ai_settings_manager, che consente la lettura e la scrittura di impostazioni correlate all'estensione. Solo gli utenti avanzati e i membri del ruolo azure_ai_settings_manager possono richiamare le funzioni azure_ai.get_settings e azure_ai.set_settings. Nel server flessibile di Database di Azure per PostgreSQL tutti gli utenti amministratori hanno il ruolo azure_ai_settings_manager assegnato.

Aggiornare l'estensione Azure per intelligenza artificiale

Le versioni più recenti dell'estensione possono introdurre nuove funzionalità e gli aggiornamenti sul posto dell'estensione sono consentiti. È possibile confrontare la versione attualmente installata con la versione più recente consentita usando il comando SQL:

SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'

Per aggiornare un'estensione installata alla versione più recente disponibile supportata da Azure, usare il comando SQL seguente:

ALTER EXTENSION azure_ai UPDATE;

Passaggi successivi