Les embeddings de texte sont des représentations numériques du texte qui permettent de mesurer la similarité sémantique. Ce guide présente les embeddings, leurs applications et comment utiliser les modèles d’embedding pour des tâches comme la recherche, les recommandations et la détection d’anomalies.
Modèle | Longueur de contexte | Dimension d’embedding | Description |
---|---|---|---|
voyage-3-large | 32 000 | 1024 (par défaut), 256, 512, 2048 | La meilleure qualité de récupération générale et multilingue. |
voyage-3 | 32 000 | 1024 | Optimisé pour la qualité de récupération générale et multilingue. Voir le billet de blog pour plus de détails. |
voyage-3-lite | 32 000 | 512 | Optimisé pour la latence et le coût. Voir le billet de blog pour plus de détails. |
voyage-code-3 | 32 000 | 1024 (par défaut), 256, 512, 2048 | Optimisé pour la récupération de code. Voir le billet de blog pour plus de détails. |
voyage-finance-2 | 32 000 | 1024 | Optimisé pour la récupération et le RAG en finance. Voir le billet de blog pour plus de détails. |
voyage-law-2 | 16 000 | 1024 | Optimisé pour la récupération et le RAG juridique et long contexte. Performances également améliorées dans tous les domaines. Voir le billet de blog pour plus de détails. |
Modèle | Longueur de contexte | Dimension d’embedding | Description |
---|---|---|---|
voyage-multimodal-3 | 32000 | 1024 | Modèle d’embedding multimodal riche qui peut vectoriser du texte entrelacé et des images riches en contenu, comme des captures d’écran de PDF, des diapositives, des tableaux, des figures, et plus encore. Voir le billet de blog pour plus de détails. |
package Python voyageai
officiel, soit via des requêtes HTTP, comme décrit ci-dessous.
voyageai
peut être installé en utilisant la commande suivante :
result.embeddings
sera une liste de deux vecteurs d’embedding, chacun contenant 1024 nombres à virgule flottante. Après avoir exécuté le code ci-dessus, les deux embeddings seront affichés à l’écran :
embed()
. Vous pouvez en savoir plus sur la spécification ici
curl
dans un terminal :
input_type="document"
et input_type="query"
pour encoder respectivement le document et la requête. Plus de spécifications peuvent être trouvées ici.
La sortie serait le 5e document, qui est en effet le plus pertinent pour la requête :
Pourquoi les embeddings Voyage ont-ils une qualité supérieure ?
Quels modèles d'embedding sont disponibles et lequel devrais-je utiliser ?
voyage-3-large
: Meilleure qualitévoyage-3-lite
: Latence et coût les plus basvoyage-3
: Performance équilibrée avec une qualité de récupération supérieure à un prix compétitifinput_type
pour spécifier le type de requête ou de document.Modèles spécifiques au domaine :voyage-law-2
voyage-code-3
voyage-finance-2
Quelle fonction de similarité devrais-je utiliser ?
Comment devrais-je utiliser le paramètre input_type ?
Quelles options de quantification sont disponibles ?
output_dtype
) :Type | Description | Réduction de taille |
---|---|---|
float | Nombres à virgule flottante simple précision 32 bits (par défaut) | Aucune |
int8 /uint8 | Entiers 8 bits (-128 à 127 / 0 à 255) | 4x |
binary /ubinary | Valeurs sur un bit compactées | 32x |
binary
utilisant la méthode binaire décalée.Comment puis-je tronquer les embeddings Matryoshka ?
input_type
comme “query” ou “document”. Cette optimisation améliore la qualité de récupération grâce à un préfixage de prompt spécialisé :Pour les requêtes :input_type
ou le définir àNone
pour les tâches de récupération.