Gérer les profils d'IA
Vous pouvez créer et gérer vos profils d'IA via le package DBMS_CLOUD_AI.
Remarque
Voir aussi : Utiliser Select AI pour l'interaction du langage naturel avec votre base de données
Utilisation de DBMS_CLOUD_AI pour configurer des profils AI
Autonomous AI Database utilise des profils d'IA pour faciliter et configurer l'accès à un LLM et pour configurer la génération, l'exécution et l'explication du code SQL en fonction des invites de langage naturel. Il facilite également la génération augmentée de récupération à l'aide de modèles d'intégration et d'index vectoriels et permet de discuter avec le LLM.
Les profils AI incluent des objets de base de données qui sont la cible des requêtes en langage naturel. Les métadonnées utilisées à partir de ces cibles peuvent inclure des noms de table de base de données, des noms de colonne, des types de données de colonne et des commentaires. Vous créez et configurez des profils AI à l'aide des procédures DBMS_CLOUD_AI.CREATE_PROFILE et DBMS_CLOUD_AI.SET_PROFILE.
En plus de spécifier des tables et des vues dans le profil AI, vous pouvez également spécifier des tables mises en correspondance avec des tables externes, y compris celles décrites dans Requête de données externes avec Data Catalog. Vous pouvez ainsi interroger des données non seulement à l'intérieur de la base, mais également des données stockées dans la banque d'objets d'un lac de données.
Effectuer les prérequis pour Select AI
Avant d'utiliser Select AI, voici les étapes à suivre pour activer DBMS_CLOUD_AI.
Les éléments suivants sont requis pour utiliser DBMS_CLOUD_AI :
-
Accès à un compte cloud Oracle Cloud Infrastructure et à une instance de base de données Autonomous AI.
-
Compte d'API payante d'un fournisseur d'IA pris en charge, parmi les suivants :
Fournisseur d'intelligence artificielle Clés d'API OpenAI Reportez-vous à Utilisation d'OpenAI pour obtenir vos clés d'API. Fournisseurs compatibles OpenAI Reportez-vous à Utilisation des fournisseurs compatibles OpenAI pour obtenir vos clés d'API et à provider_endpoint.Cohere Reportez-vous à Utilisation de Cohere pour obtenir vos clés d'API secrètes. Service Azure OpenAI Pour plus d'informations sur la configuration d'Azure OpenAI Service, reportez-vous à Utilisation d'Azure OpenAI Service. OCI Generative AI Reportez-vous à Utilisation d'OCI Generative AI. Google Reportez-vous à Utilisation de Google pour obtenir vos clés d'API. Anthropique Reportez-vous à Utilisation anthropique pour obtenir vos clés d'API. Hugging Face Reportez-vous à Utilisation de Hugging Face pour obtenir vos clés d'API. AWS Reportez-vous à Utilisation d'AWS pour obtenir vos clés d'API et votre ID de modèle. -
Privilèges d'ACL réseau pour accéder à votre fournisseur d'IA externe.
Remarque
Remarque : les privilèges d'ACL réseau ne sont pas requis pour OCI Generative AI. -
Informations d'identification qui permettent d'accéder au fournisseur d'IA.
Octroi de privilèges pour Select AI
Pour utiliser Select AI, l'administrateur doit accorder le privilège EXECUTE sur le package DBMS_CLOUD_AI. Découvrez les privilèges supplémentaires requis pour Select AI et ses fonctionnalités.
Pour configurer DBMS_CLOUD_AI, procédez comme suit :
-
Accordez le privilège
EXECUTEsur le packageDBMS_CLOUD_AIà l'utilisateur qui souhaite utiliser Select AI.Par défaut, seul l'administrateur système dispose du privilège
EXECUTE. L'administrateur peut accorder le privilègeEXECUTEà d'autres utilisateurs. -
Accordez le privilège
EXECUTEsurDBMS_CLOUD_PIPELINEà l'utilisateur qui souhaite utiliser Select AI avec RAG.Remarque
Remarque : si l'utilisateur dispose déjà du rôleDWROLE, ce privilège est inclus et aucun droit d'accès supplémentaire n'est requis. -
Accordez l'accès ACL réseau à l'utilisateur qui souhaite utiliser Select AI et à l'adresse du fournisseur AI.
L'administrateur système peut accorder l'accès à l'ACL réseau. Pour plus d'informations, reportez-vous à Procédure APEND_HOST_ACE.
-
Créez des informations d'identification pour activer l'accès à votre fournisseur d'IA.
Pour plus d'informations, reportez-vous à Procédure CREATE_CREDENTIAL.
-
Accordez des quotas dans le tablespace pour gérer la quantité d'espace dans un tablespace spécifique à l'utilisateur qui souhaite utiliser Select AI avec RAG.
Exemples de privilèges pour exécuter Select AI
Consultez des exemples de privilèges requis pour utiliser Select AI et ses fonctionnalités.
L'exemple suivant accorde le privilège EXECUTE à ADB_USER :
GRANT execute on DBMS_CLOUD_AI to ADB_USER;L'exemple suivant accorde le privilège EXECUTE pour le package DBMS_CLOUD_PIPELINE requis pour la RAG :
GRANT EXECUTE on DBMS_CLOUD_PIPELINE to ADB_USER;Pour vérifier les privilèges accordés à un utilisateur pour les packages DBMS_CLOUD_AI et DBMS_CLOUD_PIPELINE, un administrateur peut exécuter les opérations suivantes :
SELECT table_name AS package_name, privilege
FROM DBA_TAB_PRIVS
WHERE grantee = '<username>'
AND (table_name = 'DBMS_CLOUD_PIPELINE'
OR table_name = 'DBMS_CLOUD_AI');L'exemple suivant accorde à ADB_USER le privilège d'utiliser l'adresse api.openai.com.
Remarque
Remarque : cette procédure n'est pas applicable à OCI Generative AI.
BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => 'api.openai.com',
ace => xs$ace_type(privilege_list => xs$name_list('http'),
principal_name => 'ADB_USER',
principal_type => xs_acl.ptype_db)
);
END;
/Les paramètres sont les suivants :
-
host: hôte qui peut être le nom ou l'adresse IP de l'hôte. Vous pouvez utiliser un caractère générique pour indiquer un domaine ou un sous-réseau IP. L'hôte ou le nom de domaine n'est pas sensible à la casse.Fournisseur d'intelligence artificielle Hôte OpenAI api.openai.com Fournisseurs compatibles OpenAI Par exemple, pour Fireworks AI, utilisez api.fireworks.ai Cohere api.cohere.ai Service Azure OpenAI <azure_resource_name>.openai.azure.com. Pour en savoir plus surazure_resource_name, reportez-vous à Attributs de profil.Google Généraliste.googleapis.com Anthropique api.anthropic.com Hugging Face api-inférence.huggingface.co AWS Bedrock-runtime.us-east-1.amazonaws.com -
ace: entrées de contrôle d'accès (ACE). Le typeXS$ACE_TYPEest fourni pour construire chaque entrée ACE pour l'ACL. Pour plus d'informations, reportez-vous à Création d'ACL et d'ACE.
L'exemple suivant crée des informations d'identification pour activer l'accès à OpenAI.
EXEC
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'OPENAI_CRED',
username => 'OPENAI',
password => '<your_api_token>');Les paramètres sont les suivants :
-
credential_name: nom des informations d'identification à stocker. Le paramètrecredential_namedoit être conforme aux conventions de dénomination des objets Oracle. -
username: les argumentsusernameetpasswordindiquent ensemble vos informations d'identification de fournisseur d'IA.usernameest un nom utilisateur spécifié par l'utilisateur. -
password: les argumentsusernameetpasswordindiquent ensemble vos informations d'identification de fournisseur d'IA.passwordest la clé d'API de clé secrète du fournisseur d'IA et dépend du fournisseur :Fournisseur d'intelligence artificielle Clés d'API OpenAI Reportez-vous à Utilisation d'OpenAI pour obtenir vos clés d'API. Fournisseurs compatibles OpenAI Reportez-vous à Utilisation de fournisseurs compatibles OpenAI pour obtenir vos clés d'API et à provider_endpoint.Cohere Reportez-vous à Utilisation de Cohere pour obtenir vos clés d'API. Service Azure OpenAI Reportez-vous à Utilisation d'Azure OpenAI Service pour obtenir vos clés d'API et configurer le service.
Remarque
Si vous utilisez le principal de service Azure OpenAI pour l'authentification, vous pouvez ignorer la procédureDBMS_CLOUD.CREATE_CREDENTIAL. Reportez-vous à Exemples d'utilisation de Select AI pour obtenir un exemple d'authentification à l'aide du principal de service Azure OpenAI.OCI Generative AI Reportez-vous à Utilisation d'OCI Generative AI pour générer des clés de signature d'API. Google Reportez-vous à Utilisation de Google pour générer vos clés d'API. Anthropique Reportez-vous à Utilisation anthropique pour générer vos clés d'API. Hugging Face Reportez-vous à Utilisation de Hugging Face pour générer vos clés d'API. AWS Reportez-vous à Utilisation d'AWS pour obtenir vos clés d'API et votre ID de modèle.
L'exemple suivant accorde des quotas sur le tablespace à ADB_USER pour utiliser Select AI avec RAG :
ALTER USER ADB_USER QUOTA 1T ON <tablespace_name>;Pour vérifier le quota de tablespace accordé à un utilisateur, exécutez la commande suivante :
SELECT TABLESPACE_NAME, BYTES, MAX_BYTES
FROM DBA_TS_QUOTAS
WHERE USERNAME = '<username>' AND
TABLESPACE_NAME LIKE 'DATA%';Les paramètres sont les suivants :
-
TABLESPACE_NAME: tablespace auquel le quota est affecté. Dans la base de données Autonomous AI, les tablespaces sont gérés automatiquement et ontDATAcomme préfixe. -
BYTES: quantité d'espace actuellement utilisée par l'utilisateur dans le tablespace. -
MAX_BYTES: quota maximal affecté (en octets). SiMAX_BYTESa la valeur -1, cela signifie que l'utilisateur dispose d'un quota illimité sur le tablespace. L'utilisateur de base de données qui crée l'index vectoriel doit avoirMAX_BYTESsuffisamment grand que les octets pour accueillir l'index vectoriel, ouMAX_BYTESdoit avoir la valeur -1 pour un quota illimité.
Configuration de Select AI pour utiliser les fournisseurs d'IA pris en charge
Découvrez comment permettre à vos fournisseurs d'IA d'utiliser Select AI.
Utiliser l'anthropique
Pour permettre à Anthropic Developer Console de générer des réponses SQL et textuelles à vos invites en langage naturel, obtenez des clés d'API à partir de votre compte payant Anthropic Developer Console.
-
Accédez à la console de développement anthropique.
-
Créez un compte si vous n'en avez pas déjà un.
-
Une fois connecté, accédez à la section API ou au tableau de bord.
-
Recherchez une option pour générer ou afficher les clés d'API.
-
Cliquez sur cette option pour créer une clé d'API.
-
Copiez la clé d'API générée et enregistrez-la.
L'API Claude est un service payant. Vous devrez ajouter des crédits à votre compte avant de pouvoir utiliser la clé d'API.
Utiliser AWS
Pour activer AWS, obtenez votre clé d'API et votre ID de modèle.
Obtenez votre clé d'API et utilisez-la pour créer des informations d'identification via DBMS_CLOUD.CREATE_CREDENTIAL.
Suivez cette procédure pour obtenir votre clé d'API et votre nom de modèle :
-
Inscrivez-vous à un compte AWS si vous n'en avez pas déjà un.
-
Créez vos clés d'accès et vos clés secrètes à partir de la console AWS Bedrock.
-
Copiez les clés générées et enregistrez-les.
-
Demander l'accès à leurs modèles de base. Reportez-vous à Accès aux modèles de base Amazon Bedrock.
-
Obtenez l'ID du modèle. Vous avez besoin de l'ID de modèle dans la procédure
DBMS_CLOUD_AI.CREATE_PROFILE. L'ID de modèle dépend des ressources que vous utilisez. Si vous utilisez :-
un modèle de base, spécifiez l'ID du modèle ou son ARN (Amazon Resource Names). Pour obtenir la liste des ID de modèle pour les modèles de base, voir ID de modèle de base Amazon Bedrock
-
un profil d'inférence, indiquez le code profil d'inférence ou son numéro ARN. Pour obtenir la liste des ID de profil d'inférence, reportez-vous à Régions et modèles pris en charge pour l'inférence inter-région.
-
un modèle provisionné, indiquez l'ARN du débit provisionné. Pour plus d'informations, reportez-vous à Exécuter l'inférence à l'aide d'un débit provisionné.
-
un modèle personnalisé, achetez-lui le débit provisionné. Indiquez ensuite l'ARN du modèle provisionné résultant. Pour plus d'informations, reportez-vous à Utilisation d'un modèle personnalisé dans Amazon Bedrock.
-
un modèle Amazon Bedrock Marketplace, indiquez l'ID ou l'ARN de l'adresse de marché que vous avez créée. Reportez-vous à Amazon Bedrock Marketplace.
-
Remarque
Remarque : Le modèle importé n'est pas pris en charge avec l'API Bedrock Converse.
Pour utiliser AWS en tant que fournisseur, reportez-vous à Exemple : sélection d'une IA avec AWS.
Utiliser le service Azure OpenAI
Pour permettre au service Azure OpenAI de générer des réponses SQL et textuelles à vos invites en langage naturel, configurez et fournissez l'accès au fournisseur d'IA.
Pour utiliser le service Azure OpenAI, procédez comme suit :
-
Obtenez vos clés d'API secrètes. Vous pouvez trouver vos clés d'API dans la section Resource Management de votre portail Azure. Sur la page Ressource de service Azure OpenAI, cliquez sur Clés et adresse. Vous pouvez copier KEY1 ou KEY2.
-
Créez une ressource de service Azure OpenAI et déployez un modèle : Créer et déployer une ressource de service Azure OpenAI.
Conseil :
-
Notez le nom de la ressource et le nom du déploiement car ces paramètres sont utilisés pour fournir des droits d'accès réseau et pour créer votre profil de service Azure OpenAI à l'aide de la procédure
DBMS_CLOUD_AI.CREATE_PROFILE. -
Pour connaître les limites de débit d'un jeton par minute sur un modèle, reportez-vous à Quotas et limites du service Azure OpenAI.
-
-
Autoriser l'accès au service Azure OpenAI :
-
Vous pouvez utiliser votre clé d'API secrète pour autoriser l'accès au service Azure OpenAI. Pour en savoir plus, reportez-vous à l'exemple dans Exemples d'utilisation de Select AI.
-
Autoriser le principal de service à accéder au service Azure OpenAI et à accorder les droits d'accès requis au principal de service : Utiliser le principal de service Azure pour accéder aux ressources Azure et Contrôle d'accès basé sur les rôles pour le service Azure OpenAI. Pour en savoir plus, reportez-vous à l'exemple dans Exemples d'utilisation de Select AI.
-
Utiliser Cohere
Pour permettre à Cohere de générer des réponses SQL et textuelles à vos invites en langage naturel, obtenez des clés d'API à partir de votre compte payant Cohere.
-
Connectez-vous au site Web de Cohere avec vos identifiants. Le tableau de bord Cohere apparaît par défaut.
-
Vous pouvez également cliquer sur Tableau de bord.
-
Cliquez sur Clés d'API dans la navigation de gauche. Copiez la clé d'API par défaut ou créez une autre clé. Pour plus d'informations, reportez-vous à API-Keys.
Utiliser Google
Pour permettre à Google AI Studio de générer des réponses SQL et texte à vos invites en langage naturel, obtenez des clés d'API à partir de votre compte payant Google AI Studio.
-
Accédez à Google AI Studio.
-
Cliquez sur Se connecter à Google AI Studio.
-
Cliquez sur Get API key (Obtenir la clé d'API) dans l'écran d'invite.
-
Sélectionnez toutes les options applicables sur la page suivante.
-
Cliquez sur Créer une clé d'API.
-
Cliquez sur Créer une clé d'API dans le nouveau projet.
L'écran affiche la progression et génère une clé d'API. Copiez la clé et enregistrez-la.
Utiliser Hugging Face
Pour activer Hugging Face en tant que fournisseur d'IA pour générer des réponses SQL et texte à vos invites en langage naturel, obtenez des clés d'API à partir de votre compte payant Hugging Face.
-
Accédez à Hugging Face.
-
Créez un compte si vous n'en avez pas déjà un.
-
Accédez aux paramètres de votre compte.
-
Dans le menu de navigation, localisez les jetons d'accès.
-
Cliquez sur cette option pour créer une clé d'API.
-
Copiez la clé d'API générée et enregistrez-la.
Utiliser OCI Generative AI
Pour permettre à OCI Generative AI de générer des réponses SQL et textuelles à vos invites de langage naturel, générez une clé de signature d'API.
Utilisez la console ou la ligne de commande pour générer une clé de signature d'API pour n'importe quelle instance Oracle AI Database. Reportez-vous à Procédure de génération de la clé de signature d'API.
Utiliser OpenAI
Pour permettre à OpenAI de générer des réponses SQL et textuelles à vos invites en langage naturel, obtenez des clés d'API à partir de votre compte payant OpenAI.
La clé d'API secrète se trouve dans le tableau de bord de votre profil, sous Clés d'API.
Utiliser des fournisseurs compatibles avec OpenAI
Pour activer les fournisseurs compatibles avec OpenAI, obtenez votre clé d'API.
Les fournisseurs compatibles OpenAI utilisent l'authentification au porteur. Obtenez votre clé d'API et utilisez-la pour créer des informations d'identification via DBMS_CLOUD.CREATE_CREDENTIAL. Par exemple, Fireworks AI est un fournisseur compatible OpenAI.
Suivez le processus pour obtenir votre clé d'API AI Fireworks, l'URL du chemin de base du modèle et le nom du modèle :
-
Inscrivez-vous à un compte Fireworks AI si vous n'en avez pas déjà un.
-
Créez une clé d'API à partir de la console AI Fireworks.
-
Copiez la clé d'API générée et enregistrez-la.
-
Obtenez l'adresse de fournisseur dont vous avez besoin dans la procédure
DBMS_CLOUD_AI.CREATE_PROFILE:-
Sélectionnez l'un des modèles disponibles en cliquant sur les modèles disponibles.
-
Accédez à l'exemple d'API et obtenez le chemin d'URL de base compatible avec OpenAI.
Pour le modèle
Llama 3.2 3B Instruct, l'URL de chemin de base est :https://api.fireworks.ai/inference/v1/chat/completions. Pour le paramètreprovider_endpoint, excluez/v1/chat/completions. La valeurprovider_endpointpour le modèle mentionné esthttps://api.fireworks.ai/inference.
Remarque
Remarque : certains fournisseurs peuvent nécessiter un préfixe pour le nom de modèle. Reportez-vous à la documentation du fournisseur d'IA pour connaître le format correct. -
-
A partir du même exemple d'API, copiez le nom du modèle. Vous devez indiquer le nom du modèle dans la procédure
DBMS_CLOUD_AI.CREATE_PROFILE. Par exemple,accounts/fireworks/models/llama-v3p2-3b-instruct.
Pour utiliser Firework AI en tant que fournisseur compatible OpenAI, voir Exemple : Sélectionner une IA avec des fournisseurs compatibles OpenAI.
Création et définition d'un profil AI
Décrit les étapes de création et d'activation d'un profil AI.
Utilisez DBMS_CLOUD_AI.CREATE_PROFILE pour créer un profil AI. Exécutez DBMS_CLOUD_AI.SET_PROFILE pour activer le profil AI afin de pouvoir utiliser SELECT AI avec une invite en langage naturel.
Remarque
Remarque : vous devez exécuter DBMS_CLOUD_AI.SET_PROFILE dans chaque nouvelle session de base de données avec conservation de statut (connexion) avant d'utiliser SELECT AI. Si vous utilisez une connexion sans conservation de statut, vous devez utiliser la fonction DBMS_CLOUD_AI.GENERATE qui vous permet d'indiquer le nom du profil dans chaque appel.
L'exemple suivant avec le fournisseur OpenAI crée un profil AI nommé OPENAI et définit le profil OPENAI pour la session utilisateur en cours.
-- Create AI profile
--BEGIN
DBMS_CLOUD_AI.CREATE_PROFILE(
profile_name => 'OPENAI',
attributes =>'{"provider": "openai",
"credential_name": "OPENAI_CRED",
"object_list": [{"owner": "SH", "name": "customers"},
{"owner": "SH", "name": "sales"},
{"owner": "SH", "name": "products"},
{"owner": "SH", "name": "countries"}]
}');
END;
/
PL/SQL procedure successfully completed.
--
-- Enable AI profile in current session
--
EXEC DBMS_CLOUD_AI.set_profile('OPENAI');
PL/SQL procedure successfully completed.Remarque :
Vous pouvez également utiliser des blocs-notes de modèle prédéfinis dans l'interface utilisateur d'Oracle Machine Learning (OML) pour créer et configurer des profils d'IA. Dans l'interface utilisateur d'Oracle Machine Learning, accédez à Modèles, puis à Exemples. Filtrez les blocs-notes à l'aide du mot-clé SelectAI pour accéder aux exemples de configuration à l'aide d'API SQL et Python.
Pour plus d'informations sur les blocs-notes de modèle, voir SélectionnerAI4Py -0 - Prérequis et configuration et SélectionnerAI4SQL -0 - Prérequis et configuration :
-
Création d'informations d'identification d'authentification cloud pour les services OCI GenAI
-
Création d'un profil AI pour le chat, NL2SQL et la génération de données synthétiques (SDG)
-
Création d'un profil AI pour la RAG