Sentence Transformers: all-MiniLM-L6-v2
Sentence Transformers all-MiniLM-L6-v2 représente des phrases et de courts paragraphes par des vecteurs de 384 dimensions pour la recherche sémantique, le regroupement et la similarité. Sa recette publiée associe une agrégation par moyenne, une normalisation L2 et un réglage par défaut de 256 sous-unités de mots.
À propos du modèle
Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.
all-MiniLM-L6-v2 est un encodeur de phrases et de courts paragraphes de Sentence Transformers. Il projette chaque texte vers un vecteur dense de 384 dimensions pour la recherche d’information, le regroupement et la similarité entre phrases. Le modèle a été ajusté à partir de l’architecture MiniLM-L6-H384-uncased par apprentissage contrastif sur une collection d’un milliard de paires de phrases.
Préparer des enregistrements concis et porteurs de sens
Choisissez la phrase ou le paragraphe qui doit apparaître dans un résultat de recherche. Pour une collection de FAQ, conservez la question et la courte explication qui distingue son sujet. Un passage sur la réinitialisation d’un mot de passe oublié doit garder la procédure de réinitialisation, plutôt que d’être réduit à un mot isolé tel que « Account ».
Pour un long article, indexez des sections courtes et cohérentes et gardez leurs emplacements sources. Retrouvez les sections candidates en comparant le vecteur de la requête aux représentations stockées, puis affichez les passages d’origine pour que le lecteur puisse examiner les instructions réelles.
Obtenir la représentation de la phrase
La recette d’encodage direct du fabricant calcule la moyenne des représentations des tokens avec le masque d’attention, en excluant les positions de remplissage de cette moyenne. Elle applique ensuite une normalisation L2. Ces étapes produisent le plongement de phrase utilisé pour la comparaison ; les représentations individuelles des tokens du transformer sous-jacent jouent un rôle différent.
Chaque sortie possède 384 composantes. Utilisez la même version, la même agrégation et la même normalisation lorsque vous constituez la collection et encodez les requêtes ultérieures. La similarité cosinus peut comparer les vecteurs obtenus. Une valeur de similarité est utile pour classer les candidats dans cette configuration, tandis que le texte d’origine détermine si un candidat répond à la question.
Longueur et limites de l’édition
Le réglage par défaut publié tronque les entrées dépassant 256 sous-unités de mots. Cette unité du tokenizer ne correspond pas directement à un mot courant ou à un caractère. Gardez les conditions importantes dans l’unité indexée et découpez une longue procédure selon des limites porteuses de sens avant de l’encoder.
Les séquences d’entraînement étaient limitées à 128 tokens. Ce réglage d’entraînement est distinct du réglage par défaut de 256 sous-unités de mots utilisé pour l’encodage. Pour des passages exceptionnellement longs ou spécialisés, utilisez des exemples représentatifs de requêtes et de passages afin d’évaluer le comportement de recherche, plutôt que de supposer que le respect de la limite d’entrée garantit un traitement égal de chaque détail.
L’édition exacte L6-v2 est un profil anglophone de plongement. Les éditions L12-v2 et paraphrase-MiniLM possèdent des identités et des configurations distinctes. Leur nom MiniLM commun ou leur sortie de 384 dimensions n’établissent pas que leurs vecteurs sont interchangeables.
Recherche, similarité et regroupement
Pour vérifier des questions en double, retrouvez les questions similaires et comparez leur formulation réelle avant de fusionner les enregistrements. « Can I reset my password? » et « Can an administrator reset another user’s password? » concernent des sujets liés, mais des permissions différentes. Préservez cette distinction dans le texte encodé et lors de la vérification.
Pour le regroupement, utilisez les plongements comme entrées numériques d’un processus de formation de groupes, puis examinez des enregistrements représentatifs avant de nommer un groupe. Ce modèle fournit des vecteurs plutôt que des libellés de groupes écrits ou une réponse de FAQ générée. Son résultat utile est une représentation compacte d’un court passage source qui reste liée à l’enregistrement d’origine.
Ailoot Ultra · Embeddings POST /v1/embeddings sentence-transformers/all-minilm-l6-v2
sentence-transformers/all-minilm-l6-v2
sentence-transformers/all-minilm-l6-v2Premiers pas
Sentence Transformers all-MiniLM-L6-v2 représente des phrases et de courts paragraphes par des vecteurs de 384 dimensions pour la recherche sémantique, le regroupement et la similarité. Sa recette publiée associe une agrégation par moyenne, une normalisation L2 et un réglage par défaut de 256 sous-unités de mots.
- Entrées acceptées
- Texte · token_ids
- Résultats
- embedding
Disponible dans Ailoot · entrées et méthodes
Ailoot Ultra · Embeddings POST /v1/embeddings
- Types d’entrée
text,token_ids- Types de sortie
embedding- Format de sortie
- json
| Champ | Type | Exigence | Valeurs et limites | Par défaut |
|---|---|---|---|---|
Champmodel | Typestring | ExigenceObligatoire | Valeurs et limites sentence-transformers/all-minilm-l6-v2 | Par défaut— |
Champinput | Typestring|string[]|integer[]|integer[][] | ExigenceObligatoire | Valeurs et limites Nombre minimal d’éléments: 1 Conditions: Lot homogène non vide. Les identifiants de jetons sont des entiers positifs ou nuls. Budget d’entrée : Maximum: 512 · Unité de texte: octets UTF8 · Unité de tokens: éléments du tableau de tokens | Par défaut— |
Champencoding_format | Typestring | ExigenceFacultatif | Valeurs et limites float | Par défautfloat |
Champdimensions | Typeinteger | ExigenceNon pris en charge | Valeurs et limites Minimum: 1 | Par défaut— |
Champuser | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champsession_id | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champtrace | Typejson_value | ExigenceFacultatif | Valeurs et limites Conditions: Source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
Champprovider | Typeobject | ExigenceFacultatif | Valeurs et limites Conditions: provider.options est refusé | Par défaut— |
Combinaisons d’éléments d’entrée
text_to_embedding
Paramètres et cycle de vie de la méthode
| Paramètre | Contrat |
|---|---|
Paramètrecontent_type | Contratapplication/json |
Paramètrerequired | Contratmodel, input |
Paramètreinput_shapes | Contratstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Paramètreencoding_format | Contratfloat |
Paramètredimensions_override | Contratfalse |
Paramètremax_input_budget_units | Contrat512 |
Paramètremultimodal_objects | Contratfalse |
Paramètrematerial_types | Contrattext, token_ids |
Cycle de vie : synchronous_json
Conservez tous les indices et toutes les dimensions des vecteurs.
Un nom de modèle multimodal n’autorise pas les objets image sur ce chemin précis.
Tarifs
Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.
- Mode rapide
- Non précisé Lorsque le mode rapide est sélectionné
- Mode Flex
- Non précisé Lorsque le mode flex est sélectionné
- Effort de raisonnement maximal
- Non précisé Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)
Tarifs Ailoot
Prix par configuration
| Configuration | Barème tarifaire | Coût |
|---|---|---|
| ConfigurationTarifs de base des tokens | Barème tarifaireTarif de base | Coût Entrée · Tokens en entrée $0.00001 / 1K tokens Sortie · Tokens en sortie $0 / 1K tokens Entrée · Lecture du cache — / 1K tokens Entrée · Écriture dans le cache — / 1K tokens Entrée · Écriture dans le cache, 1 h — / 1K tokens |
Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. Fonctionnement de la réservation et du débit →
Exemples de requêtes
Ailoot Ultra · Embeddings
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "sentence-transformers/all-minilm-l6-v2", "input": ["First document", "Second document"]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='sentence-transformers/all-minilm-l6-v2',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Recevoir et enregistrer les résultats
Ailoot Ultra · Embeddings
json
Conserver tous les résultats terminés
Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.
Conservez chaque vecteur avec son indice. Le nombre de vecteurs doit être égal au nombre d’entrées ; les dimensions doivent être cohérentes.
Si la réponse d’origine doit être vérifiée
Aucun point de terminaison dédié aux tâches d’embedding n’est ajouté.
Champs de la réponse
| Champ | Type |
|---|---|
Champobject | Typestring |
Champmodel | Typestring |
Champdata[].index | Typeinteger |
Champdata[].embedding | Typefinite float[] |
Champusage | Typeobject |
Erreurs et étapes suivantes
| Réponse | Condition | Étape suivante |
|---|---|---|
Réponse400 · invalid_request_error | ConditionChamps obligatoires, représentation des contenus ou valeur de paramètre non valides | Étape suivanteCorrigez les champs indiqués avant une nouvelle requête de création. |
Alias
Alias du modèle
Ailoot Ultra sentence-transformers/all-minilm-l6-v2
Alias des chemins de méthode
Utilisez les chemins de méthode indiqués ci-dessus.
ID d’appel associés
FAQ · Sentence Transformers: all-MiniLM-L6-v2
- Quelles entrées et quels résultats sont disponibles ?
POST /v1/embeddings·sentence-transformers/all-minilm-l6-v2:text,token_ids→embedding- Quels champs la requête utilise-t-elle ?
POST /v1/embeddings·sentence-transformers/all-minilm-l6-v2:model,input,encoding_format,provider- Quelles limites s’appliquent ?
POST /v1/embeddings·sentence-transformers/all-minilm-l6-v2:input.budget.maximum:512(octets UTF8);input.min_items:1