Recherche vectorielle dans l'outil d'analyse de données

Vous pouvez utiliser les fonctionnalités d'Oracle AI Vector Search pour rechercher du texte pertinent à partir de vos données sources dans une colonne spécifique.

La recherche vectorielle permet de localiser et de mettre en correspondance rapidement des données similaires au texte que vous fournissez en tant qu'entrée de recherche.

Conditions requises

Pour utiliser la fonction de recherche vectorielle dans l'outil Analyse de données, vous avez besoin des éléments suivants :
  • Vous devez avoir une base de données 26ai avec la prise en charge de Vector.
  • Les API REST ORDS doivent prendre en charge le type de données VECTOR.
  • Vous devez utiliser la page Paramètres de Data Studio pour sélectionner les données d'identification que vous utilisez pour la recherche vectorielle.
  • Les données sources doivent déjà avoir une colonne non numérique pour être intégrées en premier.
  • Pour utiliser la recherche vectorielle dans l'outil d'analyse de données, vous devez disposer des éléments suivants :
    • Un service de compte OpenAI, ou Cohere ou un service de compte Azure OpenAI avec crédit
    • Accès à l'ensemble DBMS_VECTOR et DBMS_VECTOR_CHAIN.UTL_TO_EMBEDDING.
    Note

L'outil d'analyse de données utilise les ensembles PL/SQL de l'utilitaire Vector DBMS_VECTOR et DBMS_VECTOR_CHAIN.UTL_TO_EMBEDDING pour fournir les API REST de tierce partie qui vous permettent d'interagir avec des modèles d'intégration externes tels que Cohere, Google AI, Hugging Face, Oracle Cloud Infrastructure (OCI) Generative AI, OpenAI ou Vertex AI. Vous devez comprendre les termes d'utilisation de modèles d'intégration de tierce partie.

Note

Certaines fonctionnalités de la base de données peuvent vous permettre d'accéder aux services offerts séparément par des tiers, par exemple, à l'aide des spécifications JSON qui facilitent votre accès aux API REST.

Votre utilisation de ces fonctionnalités est à vos propres risques, et vous êtes seul responsable de vous conformer à toutes les conditions liées à l'utilisation de ces services tiers. Nonobstant toutes autres conditions relatives aux services de tiers, votre utilisation desdites fonctionnalités de base de données constitue votre acceptation de ce risque et votre exclusion expresse de la responsabilité d'Oracle ou de toute responsabilité pour les dommages résultant d'un tel accès.

Supposons que vous soyez un passionné des finances et que vous souhaitiez en apprendre davantage sur les finances grâce aux nouvelles pour mieux comprendre les produits financiers et les investissements. Dans cet exemple, vous pouvez utiliser la fonction de recherche vectorielle pour rechercher des informations relatives au mot Bank.

Considérez une table contenant les colonnes CATEGORY, FILENAME, TITLE, CONTENT et une autre colonne étiquetée VECTOR, qui contient la représentation vectorielle de la colonne CONTENT. Comme nous pouvons utiliser la recherche vectorielle sur des colonnes sources avec des données non numériques (image ou texte), n'importe laquelle des colonnes non numériques peut être intégrée et stockée en tant que colonne vectorielle. Mais dans cet exemple, nous devons rechercher du texte pertinent à partir de la colonne CONTENT.

Vous pouvez utiliser l'outil Analyse de données pour effectuer une recherche vectorielle.

Pour indiquer quelle colonne l'intégration est conservée dans la colonne vectorielle, nous devons d'abord mapper la colonne appropriée avec le vecteur approprié à l'aide de l'outil Analyse de données, rechercher du texte similaire, puis exécuter la requête. L'onglet Résultat de l'interrogation affiche le contenu similaire à Bank.

  1. Dans l'outil Analyse de données, cliquez sur + sous Analyses pour créer une nouvelle analyse.
  2. Sélectionnez le schéma dans la liste déroulante Schéma et l'interrogation dans la liste déroulante Type.
  3. Sélectionnez la table à interroger à partir du navigateur de tables. Dans cet exemple, vous sélectionnez BBCNEWS_DATA_ENCODE.



  4. Entrez l'énoncé Select dans la zone de modification SQL Worksheet pour extraire toutes les colonnes de la table BBCNEWS_DATA_ENCODE.

    Indiquez la commande suivante :
    Select * from BBCNEWS_DATA_ENCODE;
  5. Cliquez sur Exécuter.



    Vous pouvez voir toutes les colonnes de la table BBCNEWS_DATA_ENCODE dans l'onglet Résultats de l'interrogation.

  6. Sélectionnez une vue tabulaire du mode parmi les icônes qui affichent différents modes de visualisation du résultat de l'interrogation.



  7. Glissez-déposez la colonne CONTENT dans la zone de dépôt Colonne et cliquez dessus pour mapper la colonne vectorielle.



  8. Dans l'assistant Map Vector Column, indiquez les valeurs de champ suivantes :
    • Mapper le vecteur : Sélectionnez la colonne qui se compose des plongements vectoriels de la colonne sélectionnée dans la liste déroulante. Dans cet exemple, il s'agit de VECTOR.
    • Sélectionner un service : Sélectionnez le service d'intelligence artificielle que vous utiliserez pour utiliser cette fonction de l'outil. Dans cet exemple, il s'agit du service IA générative pour OCI.
    • Sélectionner les données d'identification : Entrez les données d'identification que vous créez à partir des paramètres Data Studio pour accéder au fournisseur de services tiers. Vous avez besoin de ces données d'identification pour permettre l'accès lors des appels d'API REST au fournisseur de services tiers de votre choix.
    • URL de l'IA générative : Spécifiez l'URL de l'IA générative que vous utiliserez pour appeler le fournisseur de services tiers, tel que Cohere, Google AI, Hugging Face, Oracle Cloud Infrastructure (OCI) Generative AI, OpenAI ou Vertex AI.
    • Sélectionner un modèle : Spécifiez le modèle intégré que vous utiliserez pour générer des intégrations à partir du texte. Dans cet exemple, vous entrez cohere.embed-english-light-v2.0.

    Cliquez sur enregistrer pour enregistrer le mappage. Sélectionnez Effacer pour effacer les valeurs de champ que vous mentionnez à cette étape.

  9. Dans les filtres à facettes, vous pouvez afficher la zone de texte sous la colonne Content. Cliquez sur le signe + pour développer la zone de texte.



  10. Entrez le texte suivant dans la zone de texte pour un contenu similaire au mot Bank dans la colonne CONTENT :
    BANK

    Cliquez sur Rechercher.



  11. L'onglet Résultats de l'interrogation du panneau Sortie affiche la colonne de contenu qui se compose du contenu lié à Bank.



    Vous pouvez pointer la souris sur chaque contenu pour voir son format développé.