Partager via


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;

Étapes suivantes