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'pgvector
estensione 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;