Décrire l’extension Azure AI

Effectué

L’extension azure_ai est un outil puissant créé par l’équipe Microsoft Postgres qui fournit une intégration transparente entre votre instance de serveur flexible Azure Database pour PostgreSQL et divers outils Foundry. Cette intégration simplifie le processus de développement et vous permet d’incorporer facilement des fonctionnalités IA dans vos applications.

Vous pouvez accéder aux outils Foundry, tels que le traitement en langage naturel, l’analyse de texte et les modèles de langage IA génératifs à partir de vos requêtes SQL à l’aide d’un appel de fonction simple. Cette extension vous permet d’utiliser la puissance d’Azure AI et de Machine Learning pour ajouter des analyses et des insights avancés à vos applications sans quitter votre base de données PostgreSQL.

L’extension facilite l’intégration d’Azure OpenAI, de Microsoft Foundry et d’Azure Machine Learning dans votre base de données. Dans l’ensemble, l’extension azure_ai est un changeur de jeu pour les développeurs qui cherchent à ajouter des fonctionnalités d’IA génératives à leurs applications. Ses fonctionnalités enrichies et son intégration transparente aux services Azure AI et Machine Learning simplifient le processus de développement et vous permettent de créer des applications IA avancées directement dans votre base de données PostgreSQL.

Qu’est-ce que l’extension azure_ai ?

L’extension azure_ai fournit une suite complète d’outils qui peuvent améliorer les fonctionnalités d’une base de données PostgreSQL en intégrant Azure AI et Machine Learning Services. Avec l’extension azure_ai , vous pouvez incorporer en toute transparence des fonctionnalités d’IA génératives dans votre base de données. Cette extension vous permet de créer du contenu basé sur des informations existantes. Ces outils incluent une collection de schémas, de fonctions définies par l’utilisateur (UDF) et de types composites qui peuvent être intégrés en toute transparence à n’importe quelle base de données PostgreSQL. Lorsque vous utilisez la puissance des outils Foundry, vous pouvez tirer parti de l’analytique avancée, du Machine Learning et d’autres fonctionnalités basées sur l’IA pour obtenir des insights plus approfondis et prendre de meilleures décisions. Avec l’extension azure_ai , PostgreSQL, vous pouvez déverrouiller un tout nouveau niveau de fonctionnalités et de performances. L’extension fournit trois intégrations de service principales :

Outils de fonderie

L’extension permet à votre base de données d’appeler différents outils Foundry pour extraire des insights à partir de données, telles que la synthèse de texte, la traduction et l’extraction d’entités. Ces services simplifient le processus de développement, ce qui rend l’intégration des fonctionnalités IA dans vos applications plus accessibles.

Azure OpenAI

L’intégration du service Azure OpenAI vous permet d’appeler l’API Azure OpenAI directement à partir de votre base de données pour générer des incorporations vectorielles. Combiné à l’extension vector , vous pouvez stocker les incorporations générées directement dans votre base de données PostgreSQL. Ces incorporations permettent de puissantes fonctionnalités telles que la recherche sémantique, les recommandations et la détection des anomalies.

Azure Machine Learning

L’extension vous permet de vous connecter à Azure Machine Learning pour effectuer l’inférence. Vous pouvez utiliser un modèle Machine Learning entraîné pour effectuer des prédictions ou générer des sorties basées sur de nouvelles données invisibles.

Activation de l’extension azure_ai

Avant de pouvoir utiliser l’extension azure_ai , elle doit être autorisée et installée avec votre base de données :

  1. Configuration de la liste d'autorisation : ajoutez l'extension à votre liste d'autorisation en exécutant SHOW azure.extensions;.
  2. Installation : Connectez-vous à votre base de données cible et exécutez la commande suivante pour installer l’extension :
CREATE EXTENSION IF NOT EXISTS azure_ai;

Création de schéma

Une fois installée, l’extension crée quatre schémas dans la base de données :

Schéma Descriptif
azure_ai Contient la table de configuration et les fonctions permettant d’interagir avec l’extension.
azure_cognitive Contient des fonctions et des types composites liés à Azure Cognitive Services.
azure_ml Contient des fonctions liées à l’inférence Azure Machine Learning.
azure_openai Contient les fonctions associées à Azure OpenAI.

Configuration de l’extension

L’extension crée la table azure_ai.settings, qui est cruciale pour la configuration et la gestion des paramètres d’extension. La table héberge en toute sécurité les paramètres de point de terminaison et de clé liés aux outils Foundry que vous intégrez à votre base de données. Pour configurer l’extension, fournissez les points de terminaison et les clés API nécessaires pour l’authentification.

  1. Définition des valeurs :

    • La azure_ai.set_setting() fonction vous permet de définir différentes valeurs de configuration pour Foundry Tools. Vous pouvez affecter des valeurs à des clés spécifiques à l’aide de cette fonction.
    • Par exemple, vous pouvez définir le point de terminaison Azure OpenAI et fournir la clé d’abonnement correspondante à l’aide des commandes suivantes :
    SELECT azure_ai.set_setting('azure_openai.endpoint', '{endpoint}');
    SELECT azure_ai.set_setting('azure_openai.subscription_key', '{api-key}');
    
  2. Récupération des paramètres :

    • La azure_ai.get_setting() fonction vous permet de récupérer les valeurs que vous avez définies précédemment à l’aide set_setting()de .
    • Spécifiez la clé du paramètre à afficher et la fonction retourne la valeur associée.
    • Par exemple, pour vérifier les paramètres écrits dans la table de configuration, utilisez :
    SELECT azure_ai.get_setting('azure_openai.endpoint');
    SELECT azure_ai.get_setting('azure_openai.subscription_key');
    

Clés d’accès et sécurité

Vos clés d’accès Azure AI sont similaires aux mots de passe racines de votre compte. Il est essentiel de les gérer avec soin. La meilleure approche consiste à utiliser Azure Key Vault pour gérer et faire pivoter vos clés.

Les utilisateurs qui doivent gérer les clés de service utilisées par l’extension nécessitent le azure_ai_settings_manager rôle dans la base de données. Fonctions qui nécessitent ce rôle incluent azure_ai.set_setting() et azure_ai.get_setting().

Comment fonctionne l’extension azure_ai ?

Voici un exemple rapide de la facilité d’utilisation de l’extension azure_ai dans un serveur flexible Azure Database pour PostgreSQL :

  • Génération d’incorporations : vous pouvez créer des incorporations en appelant une fonction définie par l’utilisateur (UDF) inline à partir de SQL. Par exemple:

    SELECT azure_openai.create_embeddings('text-embedding-ada-002', 'Learn about building intelligent applications with azure_ai extension and vector');
    
  • Services linguistiques : Besoin d’une analyse des sentiments ? C’est aussi simple qu’un appel UDF à partir de SQL :

    SELECT a.* FROM azure_cognitive.analyze_sentiment('The GenAI session was awesome', 'en') a;
    
  • Fonctionnalités supplémentaires : vous pouvez ajouter des colonnes vectorielles à des tables, créer des index HNSW (Hiérarchique Navigable Small World) et effectuer des recherches sémantiques, toutes alimentées par l’extension azure_ai .