Extension Azure AI dans le serveur flexible Azure Database pour PostgreSQL
S’APPLIQUE À : Azure Database pour PostgreSQL : serveur flexible
L’extension Azure Database pour PostgreSQL - Serveur flexible pour Azure AI vous permet d’utiliser de grands modèles de langage (LLM) et de créer des applications d’IA générative complètes au sein de la base de données. L’extension Azure AI permet à la base de données d’appeler différents Azure AI services, notamment Azure OpenAI et Azure Cognitive Services, ce qui simplifie le processus de développement et permet une intégration transparente dans ces services.
Activer l’extension azure_ai
Avant de pouvoir activer azure_ai
sur votre instance Azure Database pour PostgreSQL - Serveur flexible, vous devez l’ajouter à votre liste d’autorisation comme décrit dans comment utiliser les extensions PostgreSQL et vérifier qu’il est correctement ajouté en exécutant SHOW azure.extensions;
.
Conseil
Vous pouvez également activer l’extension pgvector
, car elle est couramment utilisée avec azure_ai
.
Vous pouvez ensuite installer l’extension en vous connectant à votre base de données cible et en exécutant la commande CREATE EXTENSION. Vous devez répéter la commande séparément pour chaque base de données dans laquelle vous souhaitez que l’extension soit disponible.
CREATE EXTENSION azure_ai;
Remarque
Pour supprimer l’extension de la base de données actuellement connectée, utilisez DROP EXTENSION azure_ai;
.
L’installation de l’extension azure_ai
crée les trois schémas suivants :
azure_ai
: schéma principal où réside la table de configuration et les fonctions pour interagir avec elle.azure_openai
: fonctions et types composites liés à OpenAI.azure_cognitive
: fonctions et types composites liés à Cognitive Services.
L’extension permet également d’appeler Azure OpenAI et Azure Cognitive Services.
Configure l’extension azure_ai
La configuration de l’extension vous oblige à fournir les points de terminaison pour vous connecter aux Azure AI services et aux clés API requises pour l’authentification. Les paramètres de service sont stockés à l’aide des fonctions suivantes :
Autorisations
Vos clés d’accès Azure AI sont similaires au mot de passe racine de votre compte. Veillez toujours à protéger vos clés d’accès. Utilisez Azure Key Vault pour gérer et effectuer la rotation de vos clés en toute sécurité.
Pour gérer les clés de service utilisées par l’extension, les utilisateurs doivent se voir accorder le rôle azure_ai_settings_manager
. Les fonctions suivantes nécessitent le rôle :
- azure_ai.set_setting
- azure_ai.get_setting
Le rôle azure_ai_settings_manager
est accordé par défaut au rôle azure_pg_admin
.
azure_ai.set_setting
Utilisé pour définir les options de configuration.
azure_ai.set_setting(key TEXT, value TEXT)
Arguments
key
Nom d’une option de configuration. Les valeurs valides pour la key
sont les suivantes :
azure_openai.endpoint
: point de terminaison OpenAI pris en charge (par exemple,https://example.openai.azure.com
).azure_openai.subscription_key
: une clé d’abonnement pour une ressource OpenAI.azure_cognitive.endpoint
: point de terminaison Cognitive Services pris en charge (par exemple,https://example.cognitiveservices.azure.com
).azure_cognitive.subscription_key
: une clé d’abonnement pour une ressource Cognitive Services.
value
TEXT
représentant la valeur souhaitée du paramètre sélectionné.
azure_ai.get_setting
Permet d’obtenir les valeurs actuelles des options de configuration.
azure_ai.get_setting(key TEXT)
Arguments
Clé
Nom d’une option de configuration. Les valeurs valides pour la key
sont les suivantes :
azure_openai.endpoint
: point de terminaison OpenAI pris en charge (par exemple,https://example.openai.azure.com
).azure_openai.subscription_key
: une clé d’abonnement pour une ressource OpenAI.azure_cognitive.endpoint
: point de terminaison Cognitive Services pris en charge (par exemple,https://example.cognitiveservices.azure.com
).azure_cognitive.subscription_key
: une clé d’abonnement pour une ressource Cognitive Services.
Type de retour
TEXT
représentant la valeur actuelle du paramètre sélectionné.
azure_ai.version
azure_ai.version()
Type de retour
TEXT
représentant la version actuelle de l’extension Azure AI.
Exemples
Définir le point de terminaison et une clé API pour 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>');
Obtenir le point de terminaison et la clé API pour Azure OpenAI
select azure_ai.get_setting('azure_openai.endpoint');
select azure_ai.get_setting('azure_openai.subscription_key');
Vérifier la version de l’extension Azure AI
select azure_ai.version();
Autorisations
L’extension azure_ai
définit un rôle appelé azure_ai_settings_manager
, qui permet de lire et d’écrire les paramètres liés à l’extension. Seuls les superutilisateurs et les membres du rôle azure_ai_settings_manager
peuvent appeler les fonctions azure_ai.get_settings
et azure_ai.set_settings
. Dans Azure Database pour PostgreSQL - Serveur flexible, tous les utilisateurs administrateurs se voient attribuer le rôle azure_ai_settings_manager
.
Mise à niveau de l’extension Azure AI
Les versions plus récentes de l’extension peuvent introduire de nouvelles fonctionnalités et des mises à niveau sur place de l’extension sont autorisées. Vous pouvez comparer la version actuellement installée à la plus récente version autorisée à l’aide de la commande SQL :
SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'
Pour mettre à jour une extension installée vers la dernière version disponible prise en charge par Azure, utilisez la commande SQL suivante :
ALTER EXTENSION azure_ai UPDATE;