API Embeddings

Qu'est-ce qu'un encastrement ?

Les embeddings sont des représentations vectorielles de morceaux de texte. Si deux morceaux de texte ont une représentation vectorielle similaire, cela signifie très probablement qu'ils ont un sens similaire.

Imaginez que vous ayez les 3 phrases suivantes :

NLP Cloud is an API for natural language processing.

NLP Cloud proposes an API dedicated to NLP at scale.

I went to the cinema yesterday. It was great!

Voici les embeddings des 3 phrases ci-dessus (tronqués pour des raisons de simplicité) :

[[0.0927242711186409,-0.19866740703582764,-0.013638739474117756,-0.11876793205738068,0.011521861888468266,-0.03629707545042038, -0.030676838010549545,-0.03159608319401741,0.021390020847320557,0.03344911336898804,0.1698218137025833,-0.0009996045846492052, -0.07465217262506485,-0.21483412384986877,0.11283198744058609,0.03549865633249283,0.04985387250781059,-0.027558118104934692, 0.06297887861728668,0.09421529620885849,0.03700404614210129,0.06565431505441666,0.02284885197877884,0.06327767670154572, -0.09266531467437744,-0.014569456689059734,-0.06129194051027298,0.1818675994873047,0.09628438949584961,-0.09874546527862549, 0.030865425243973732, [...] ,-0.02097163535654545,0.021617714315652847,0.11045169830322266,0.01000999379903078,0.11451057344675064,0.18813028931617737, 0.007419265806674957,0.1630171686410904,0.21308083832263947,-0.03355317562818527,0.0778832957148552,0.2268853485584259,-0.13271427154541016, 0.005264544393867254,0.16081497073173523,0.09937280416488647,-0.12673905491828918,-0.12035898119211197,-0.06462062895298004, -0.0024213052820414305,0.08730605989694595,-0.04702030122280121,-0.03694896399974823,0.002265638206154108,-0.027780283242464066, -0.00017151003703474998,-0.20887477695941925,-0.2585527300834656,0.3124837279319763,0.05403835326433182,0.027094876393675804, -0.022925367578864098,0.038322173058986664]]

Les encastrements sont une caractéristique essentielle du traitement du langage naturel car, une fois qu'une machine est capable de détecter des similitudes entre des textes, elle ouvre la voie à de nombreuses applications intéressantes telles que la similarité sémantique, les systèmes RAG (retrieval augmented generation), la recherche sémantique, la détection de paraphrases, le regroupement, et bien d'autres encore.

Emboîtements d'IA

Pourquoi extraire des emboîtements ?

Voici quelques exemples où les embeddings sont extrêmement utiles :

Similitude sémantique

Vous pourriez vouloir détecter si deux phrases parlent de la même chose ou non. C'est utile pour détecter les paraphrases (plagiats), par exemple. C'est également utile pour comprendre si plusieurs personnes parlent du même sujet ou non.

Recherche sémantique

La recherche sémantique est la méthode moderne de recherche d'informations. Au lieu de rechercher naïvement des textes contenant des mots-clés spécifiques, vous pouvez désormais rechercher des textes traitant d'un sujet qui vous intéresse, même si les mots-clés ne correspondent pas (dans le cas de synonymes par exemple).

Regroupement

Vous pourriez vouloir regrouper les choses par catégories (idées, discours, conversations...). Le regroupement est une ancienne technique d'apprentissage automatique qui peut désormais être appliquée efficacement au traitement du langage naturel.

RAG Systems

Les systèmes RAG (Retrieval Augmented Generation) sont un type de modèle de traitement du langage naturel qui génère du texte en combinant les capacités d'un modèle de langage à grande échelle avec un composant de recherche qui récupère des informations pertinentes dans une base de données ou un corpus de textes. Cette approche permet de générer des réponses plus précises, plus informatives et plus pertinentes sur le plan contextuel en exploitant des sources de connaissances externes.

L'API Embeddings de NLP Cloud

NLP Cloud propose une API d'embeddings qui vous donne la possibilité d'extraire des embeddings dès le départ, en se basant sur des modèles de Sentence Transformers tels que Paraphrase Multilingual Mpnet Base v2.
Le temps de réponse (latence) est très faible pour les modèles d'embeddings, ce qui vous permet d'inclure facilement l'extraction d'embeddings dans un flux de travail plus large et plus complexe.

Pour plus d'informations, voir notre documentation sur les encastrements. ici.

Tester les embeddings localement est une chose, mais les utiliser de manière fiable en production en est une autre. Avec NLP Cloud, vous pouvez faire les deux !

Questions fréquemment posées

Pourquoi les embeddings sont-ils importants dans l'apprentissage automatique et l'IA ?

Les encastrements sont essentiels dans l'apprentissage automatique et l'IA car ils permettent la représentation de données éparses à haute dimension (comme des mots, des images ou des comportements d'utilisateurs) dans un espace dense à plus faible dimension, préservant ainsi les relations sémantiques et les modèles. Cela facilite un apprentissage plus efficace des modèles, ce qui permet d'améliorer les performances dans des tâches telles que la classification, la recommandation et la compréhension du langage naturel.

Comment évaluer la qualité des encastrements ?

La qualité des embeddings peut être évaluée par des méthodes intrinsèques, telles que des tâches d'analogie ou des évaluations de regroupement qui mesurent directement la représentation des relations linguistiques ou conceptuelles par les embeddings. D'autres méthodes d'évaluation extrinsèques évaluent l'amélioration des performances des tâches en aval, telles que la classification des textes ou l'analyse des sentiments, lors de l'utilisation des enchâssements.

Comment les embeddings sont-ils utilisés dans les systèmes de recommandation ?

Dans les systèmes de recommandation, les encastrements sont utilisés pour convertir les éléments et les utilisateurs en vecteurs dans un espace de dimension inférieure, capturant des modèles et des préférences complexes. En calculant les mesures de similarité entre ces vecteurs, le système peut recommander efficacement des articles susceptibles de plaire à un utilisateur sur la base de ses interactions historiques et des interactions d'autres personnes ayant des goûts similaires.

Qu'est-ce que l'intégration contextuelle et pourquoi est-elle importante ?

Les enchâssements contextuels sont des représentations avancées des mots qui capturent le sens en fonction du texte environnant, contrairement aux enchâssements statiques qui attribuent un seul enchâssement à chaque mot, quel que soit son contexte. Ils sont importants car ils permettent aux modèles de comprendre les nuances du langage, comme les homonymes ou les mots qui changent de sens en fonction des mots environnants, ce qui conduit à des interprétations plus précises dans les tâches de traitement du langage naturel. Cette fonction est activée par défaut sur NLP Cloud.

Quelle est l'utilité des embeddings dans un système RAG ?

Dans un système de génération assistée par récupération (RAG), les enchâssements sont essentiels pour récupérer efficacement des documents ou des entrées de données pertinents à partir d'un vaste corpus, sur la base de la similarité sémantique avec une requête donnée. Cette étape d'extraction enrichit l'entrée du composant de génération, ce qui permet d'obtenir des réponses ou une génération de contenu plus informées, plus précises et plus adaptées au contexte.

Quelle est l'utilité des embeddings dans la recherche sémantique ?

Les encastrements sont utiles dans la recherche sémantique car ils convertissent le texte en vecteurs denses qui capturent le sens sémantique et les relations entre les mots ou les phrases, permettant à l'algorithme de recherche de comprendre et d'extraire le contenu qui est contextuellement pertinent pour la requête, même si les mots-clés exacts ne sont pas présents. Cela améliore considérablement la précision et la pertinence des résultats de recherche en se concentrant sur l'intention et le sens de la requête de l'utilisateur plutôt qu'en s'appuyant uniquement sur la correspondance des mots-clés.

Puis-je essayer l'API "embeddings" gratuitement ?

Oui, comme tous les modèles de NLP Cloud, le point d'accès à l'API embeddings peut être testé gratuitement.

Comment votre API d'IA gère-t-elle la confidentialité et la sécurité des données au cours du processus d'extraction d'embeddings ?

NLP Cloud se concentre sur la confidentialité des données dès la conception : nous n'enregistrons pas et ne stockons pas le contenu des requêtes que vous effectuez sur notre API. NLP Cloud est conforme aux normes HIPAA et GDPR.

Quelles sont les langues ou locales prises en charge pour cette API d'intégration ?

Notre API d'intégration prend en charge 50 langues