0 / 0
Retourner à la version anglaise de la documentation
Intégrations
Dernière mise à jour : 12 déc. 2024
Intégrations

Utilisez des modèles d'intégration pour créer des intégrations de texte qui capturent le sens d'une phrase ou d'un passage. Vous pouvez utiliser ces modèles avec des classificateurs tels que des machines à vecteurs de support. L'intégration de modèles peut également vous aider dans les tâches de génération augmentée par récupération.

Le diagramme suivant illustre le modèle de génération augmentée par récupération avec prise en charge de l'intégration.

Diagramme illustrant l'ajout de résultats de recherche dérivés d'un magasin de vecteurs à l'entrée pour une génération augmentée par récupération

Le modèle de génération augmentée par récupération avec prise en charge de l'intégration implique les étapes suivantes :

  1. Convertissez votre contenu en intégrations de texte et stockez-les dans un magasin de données vectorielles.
  2. Utilisez le même modèle d'intégration pour convertir les entrées de l'utilisateur en intégrations de texte.
  3. Exécutez une recherche de similarité ou sémantique dans votre base de connaissances pour le contenu lié à la question d'un utilisateur.
  4. Insérez les résultats de recherche les plus pertinents dans votre invite comme contexte et ajoutez une instruction, telle que « Répondez à la question suivante en utilisant uniquement les informations des passages suivants ».
  5. Envoyer le texte combiné de l'invite (instruction + résultats de la recherche + question) au foundation model.
  6. Le foundation model utilise les informations contextuelles de l'invite pour générer une réponse factuelle.

Pour plus d'informations, voir :

UTILISER les intégrations

Les intégrations USE sont des wrappers autour Google Intégrations Universal Sentence Encoder disponibles dans TFHub. Ces intégrations sont utilisées dans l'algorithme SVM de classification de documents. Pour obtenir une liste des USE embeddings pré-entraînés et des langues prises en charge, voir Included pretrained USE embeddings

Lorsque vous utilisez des représentations vectorielles continues USE, tenez compte des points suivants :

  • Choisissez embedding_use_en_stock si votre tâche implique un texte en anglais.

  • Choisissez l'un des éléments d'intégration multilingues si votre tâche implique du texte dans une langue autre que l'anglais ou si vous souhaitez former des modèles multilingues.

  • Les intégrations USE présentent des compromis différents entre la qualité du modèle formé et le débit au moment de l'inférence, comme décrit ci-dessous. Essayez différentes intégrations pour déterminer le compromis entre la qualité du résultat et le débit d'inférence approprié pour votre cas d'utilisation.

    • embedding_use_multi_small a une qualité raisonnable, mais il est rapide au moment de l'inférence
    • embedding_use_en_stock est une version anglaise uniquement de embedding_embedding_use_multi_small, elle est donc plus petite et présente un débit d'inférence plus élevé
    • embedding_use_multi_large est basé sur l'architecture Transformer et fournit donc une meilleure qualité de résultat, avec un débit inférieur au moment de l'inférence

Exemple de code

import watson_nlp

syntax_model = watson_nlp.load("syntax_izumo_en_stock")
embeddings_model = watson_nlp.load("embedding_use_en_stock")

text = "python"
syntax_doc = syntax_model.run(text)
embedding = embeddings_model.run(syntax_doc)
print(embedding)

Sortie de l'exemple de code :

{
  "data": {
    "data": [
      -0.01909315399825573,
      -0.009827353060245514,
...
      0.008978910744190216,
      -0.0702751949429512
    ],
    "rows": 1,
    "cols": 512,
    "dtype": "float32"
  },
  "offsets": null,
  "producer_id": null
}

Inclusion des USE embeddings pré-entraînés

Le tableau suivant répertorie les blocs pré-entraînés pour les représentations incorporées USE disponibles et les langues prises en charge. Pour obtenir la liste des codes de langue et de la langue correspondante, voir Codes de langue.

Liste des intégrations USE pré-entraînées avec leurs langues prises en charge
Nom de bloc Nom du modèle Langues prises en charge
use embedding_use_en_stock En anglais uniquement
use embedding_use_multi_small ar, de, el, en, es, fr, it, ja, ko, nb, nl, pl, pt, ru, th, tr, zh_tw, zh
use embedding_use_multi_large ar, de, el, en, es, fr, it, ja, ko, nb, nl, pl, pt, ru, th, tr, zh_tw, zh

GloVe intégrations

GloVe les intégrations sont utilisées par le classificateur CNN.

Nom du bloc :embedding_glove__stock

Langues prises en charge : ar, de, en, es, fr, it, ja, ko, nl, pt, zh-cn

Exemple de code

import watson_nlp

syntax_model = watson_nlp.load("syntax_izumo_en_stock")
embeddings_model = watson_nlp.load("embedding_glove_en_stock")

text = "python"
syntax_doc = syntax_model.run(text)
embedding = embeddings_model.run(syntax_doc)
print(embedding)

Sortie de l'exemple de code :

{
  "data": {
    "data": [
      -0.01909315399825573,
      -0.009827353060245514,
...
      0.008978910744190216,
      -0.0702751949429512
    ],
    "rows": 1,
    "cols": 512,
    "dtype": "float32"
  },
  "offsets": null,
  "producer_id": null
}

Intégrations de transformateurs

Noms de blocs

  • embedding_transformer_en_slate.125m
  • embedding_transformer_en_slate.30m

Langues prises en charge

En anglais uniquement

Exemple de code

import watson_nlp

# embeddings_model = watson_nlp.load("embedding_transformer_en_slate.125m")
embeddings_model = watson_nlp.load("embedding_transformer_en_slate.30m")
text = "python"

embedding = embeddings_model.run(text)
print(embedding)

Sortie de l'exemple de code

{
  "data": {
    "data": [
      -0.055536773055791855,
      0.008286023512482643,
      ...
      -0.3202415108680725,
      5.000295277568512e-05
    ],
    "rows": 1,
    "cols": 384,
    "dtype": "float32"
  },
  "offsets": null,
  "producer_id": {
    "name": "Transformer Embeddings",
    "version": "0.0.1"
  }
}

Sujet parent : Watson Catalogue de tâches de traitement du langage naturel

Recherche et réponse à l'IA générative
Ces réponses sont générées par un modèle de langue de grande taille dans watsonx.ai en fonction du contenu de la documentation du produit. En savoir plus