Utiliser le mot-clé AI pour saisir des invites

Utilisez AI comme mot-clé dans une instruction SELECT pour interagir avec la base de données à l'aide d'invites en langage naturel.

Le mot-clé AI dans une instruction SELECT indique au moteur d'exécution SQL d'utiliser le LLM identifié dans le profil AI actif pour traiter le langage naturel et générer du code SQL.

Vous pouvez utiliser le mot-clé AI dans une requête avec des clients Oracle, tels que SQL Developer, OML Notebooks et des outils tiers, pour interagir avec la base de données en langage naturel.

Remarque

Vous ne pouvez pas exécuter d'instructions PL/SQL, DDL ou DML à l'aide du mot-clé AI.

Syntaxe

La syntaxe d'exécution de l'invite AI est la suivante :
SELECT AI action natural_language_prompt

Paramètres

Voici les paramètres disponibles pour le paramètre action :
Paramètre Description

runsql

Exécute la commande SQL sous-jacente pour l'invite de langage naturel. Il s'agit de l'action par défaut et il est facultatif de spécifier ce paramètre.

showsql

Affiche l'instruction SQL d'une invite en langage naturel.

explainsql

Explique le code SQL généré à partir de l'invite en langage naturel. Cette option envoie le code SQL généré au fournisseur AI pour produire une explication en langage naturel.

narrate

Envoie le résultat de la requête SQL exécutée par la base de données au LLM pour générer une description en langage naturel de ce résultat.

Lorsqu'un index de vecteur est spécifié dans le profil AI pour activer la RAG, le système utilise le modèle de transformateur spécifié (ou transformateur par défaut) pour créer une intégration de vecteur à partir de l'invite de recherche de similarité sémantique sur le magasin de vecteurs. Le système ajoute ensuite le contenu extrait de la banque de vecteurs à l'invite utilisateur et l'envoie au LLM pour générer une réponse basée sur ces informations.

Si vous ne souhaitez pas que les données de table ou les documents de recherche vectorielle soient envoyés à un LLM, un utilisateur disposant de privilèges d'administrateur peut désactiver cet accès pour tous les utilisateurs de la base de données donnée. En fait, cette action désactive l'action narrate.

chat

Transmet l'invite utilisateur directement au LLM pour générer une réponse, qui est fournie à l'utilisateur. Si conversation dans la fonction DBMS_CLOUD_AI.CREATE_PROFILE est défini sur true, cette option inclut le contenu des interactions ou invites précédentes, y compris potentiellement les métadonnées de schéma.

Notes d'utilisation

  • Le mot-clé AI pour Select AI n'est pas pris en charge dans Database Actions ou le service APEX. Vous pouvez utiliser uniquement la fonction DBMS_CLOUD_AI.GENERATE.

    N'utilisez pas DBMS_CLOUD_AI.SET_PROFILE dans Database Actions ou le service APEX. Définissez plutôt le profil AI dans l'argument profile_name de DBMS_CLOUD_AI.GENERATE.

  • Le mot-clé AI est pris en charge uniquement dans une instruction SELECT.

  • Vous ne pouvez pas exécuter d'instructions PL/SQL, DDL ou DML à l'aide du mot-clé AI.

  • La séquence est SELECT, suivie de AI. Ces mots-clés ne respectent pas la casse. Après avoir défini votre profil AI à l'aide de DBMS_CLOUD_AI.SET_PROFILE et de l'action facultative, le texte après SELECT AI est une invite en langage naturel. Si aucun profil AI n'est défini, SELECT AI signale l'erreur suivante lors de l'exécution d'une instruction SELECT AI :

    ORA-00923: FROM keyword not found where expected
    00923. 00000 -  "FROM keyword not found where expected"
  • Les règles d'utilisation de caractères spéciaux s'appliquent conformément aux directives Oracle. Par exemple, utilisez deux apostrophes si vous utilisez une apostrophe dans une phrase.

    select ai how many customers in SF don''t own their own home
  • Les LLM sont soumis à des hallucinations et les résultats ne sont pas toujours corrects :

    • Il est possible que SELECT AI ne puisse pas exécuter la requête SQL générée pour une invite de langage naturel spécifique.

    • Il est possible que SELECT AI ne puisse pas générer de requête SQL pour une invite de langage naturel spécifique.

    • Il est possible que le LLM ne génère pas une requête SQL qui génère un résultat correct en fonction de votre invite en langage naturel.

    Dans un tel scénario, SELECT AI peut répondre avec des informations pour vous aider à générer des instructions SQL valides.

  • Pour obtenir de meilleurs résultats avec le langage naturel à la génération SQL, utilisez des vues de base de données ou des tables avec des noms de colonne contextuels ou envisagez d'ajouter des commentaires de colonne expliquant les valeurs stockées dans les colonnes.

  • Utilisez l'action explainsql, comme dans SELECT AI explainsql, pour obtenir une explication plus détaillée de l'instruction SQL, par rapport à SELECT AI showsql.
  • Pour accéder aux vues DBA ou USER, reportez-vous à la section DBMS_CLOUD_AI Views.