models

OpenAI: Text Embedding 3 Small

Markdown · JSON

OpenAI: Text Embedding 3 Small

Le petit modèle de plongement textuel de troisième génération d’OpenAI renvoie des vecteurs de 1536 dimensions par défaut et prend en charge des représentations plus courtes. Utilisez la sortie numérique pour la recherche sémantique, la recherche de code, le regroupement, les recommandations et la classification.

À 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.

text-embedding-3-small est le plus petit modèle de plongement textuel de troisième génération d’OpenAI. Il convertit des contenus écrits en vecteurs numériques de 1536 composantes par défaut. Ces vecteurs mesurent les relations entre les textes pour une autre étape de recherche ou d’analyse ; le modèle ne génère pas de réponse conversationnelle à l’entrée.

Comme le plus grand modèle de troisième génération, il prend en charge la commande dimensions du producteur pour des plongements plus courts. L’entraînement est conçu pour conserver des informations représentant les concepts dans un vecteur raccourci, le choix de taille influant sur la qualité et les besoins en ressources de l’application. Gardez le modèle et les dimensions sélectionnées cohérents entre les enregistrements et les requêtes comparés.

Une application concrète est la recherche de code. Le guide du fabricant décrit la représentation de fonctions sources sous forme de texte et leur encodage, puis l’encodage d’une requête en langue naturelle avec le même modèle et la comparaison des vecteurs obtenus. Un résultat illustratif est un ensemble classé de fonctions pertinentes liées à leurs emplacements sources. Pour la recherche documentaire, l’artefact équivalent est un ensemble de passages dont le texte et les références d’origine restent disponibles pour le lecteur ou le modèle suivant.

Les autres usages documentés comprennent le regroupement, les recommandations de contenus liés, la classification, la détection d’éléments atypiques et la mesure de diversité. Un processus de messages ciblé peut regrouper des demandes similaires ou les comparer à des descriptions de catégories. L’application définit comment un résultat de similarité devient une catégorie, une recommandation ou un élément à vérifier ; le plongement lui-même reste constitué de données numériques.

OpenAI spécifie une entrée maximale de 8192 tokens par texte. Son API de plongement accepte des chaînes ou des entrées tokenisées et plusieurs entrées dans une même requête, rejette les chaînes vides et applique une limite cumulée de 300 000 tokens. Préparez les contenus longs sous forme de passages porteurs de sens et conservez les titres ou les définitions nécessaires à leur interprétation. Utilisez un ensemble cohérent de champs sources, plutôt que d’encoder différents types d’enregistrements selon des règles de préparation sans rapport.

Le producteur renvoie des vecteurs à virgule flottante par défaut et documente aussi l’encodage base64. Le guide indique que les plongements OpenAI sont normalisés à une norme unitaire et recommande la similarité cosinus ; un produit scalaire peut la calculer et la distance euclidienne donne le même classement. Si un plongement de troisième génération est raccourci manuellement après son renvoi, normalisez de nouveau ce vecteur raccourci comme le décrit le guide. La commande dimensions évite de faire de la troncature manuelle l’étape habituelle de préparation.

Consignez l’identité du modèle, les dimensions et le lien source avec chaque vecteur. Un artefact utile en aval est une liste classée, une collection regroupée ou un ensemble de caractéristiques de classification reliés au texte qui les a produits. Vérifiez si le matériau sélectionné étaye réellement la tâche et gardez les faits manquants distincts de la proximité sémantique. L’étape suivante peut alors utiliser la représentation pour un processus précis de recherche ou de décision.

Ailoot Ultra · Embeddings POST /v1/embeddings openai/text-embedding-3-small

openai/text-embedding-3-small

OpenAI /openai/text-embedding-3-small
ID du modèle
  • openai/text-embedding-3-small
  • text-embedding-3-small

Pour commencer

Le petit modèle de plongement textuel de troisième génération d’OpenAI renvoie des vecteurs de 1536 dimensions par défaut et prend en charge des représentations plus courtes. Utilisez la sortie numérique pour la recherche sémantique, la recherche de code, le regroupement, les recommandations et la classification.

Entrées acceptées
Texte · token_ids
Résultats
embedding

Disponible dans Ailoot · entrées et méthodes

Ailoot Ultra · Embeddings POST /v1/embeddings
Entrée
text, token_ids
Sortie
embedding
Contexte
8 192 tokens
Format de sortie
json
ChampTypeExigenceValeurs et limitesPar défaut
ChampmodelTypestringExigenceObligatoireValeurs et limites
openai/text-embedding-3-small
Par défaut—
ChampinputTypestring|string[]|integer[]|integer[][]ExigenceObligatoireValeurs 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: 8 192 · Unité de texte: octets UTF8 · Unité de jetons: éléments du tableau de jetons
Par défaut—
Champencoding_formatTypestringExigenceFacultatifValeurs et limites
float
Par défautfloat
ChampdimensionsTypeintegerExigenceNon pris en chargeValeurs et limites
Minimum: 1
Par défaut—
ChampuserTypejson_valueExigenceFacultatifValeurs et limites
Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle.
Par défaut—
Champsession_idTypejson_valueExigenceFacultatifValeurs et limites
Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle.
Par défaut—
ChamptraceTypejson_valueExigenceFacultatifValeurs et limites
Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle.
Par défaut—
ChampproviderTypeobjectExigenceFacultatifValeurs 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ètreContrat
Paramètrecontent_typeContratapplication/json
ParamètrerequiredContratmodel, input
Paramètreinput_shapesContratstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Paramètreencoding_formatContratfloat
Paramètredimensions_overrideContratfalse
Paramètremax_input_budget_unitsContrat8192
Paramètremultimodal_objectsContratfalse
Paramètrematerial_typesContrattext, 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
Tarif standard Lorsque le mode rapide est sélectionné
Mode Flex
Tarif standard Lorsque le mode flex est sélectionné
Effort de raisonnement maximal
Tarif standard Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)

Tarifs Ailoot

Prix par configuration

ConfigurationBarème tarifaireCoût
ConfigurationTarifs de base des jetonsBarème tarifaireTarif de baseCoût
Entrée · Jetons en entrée $0.00004 / 1K jetons
Sortie · Jetons en sortie $0 / 1K jetons
Entrée · Lecture du cache — / 1K jetons
Entrée · Écriture dans le cache — / 1K jetons
Entrée · Écriture dans le cache, 1 h — / 1K jetons

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

curlPython SDK
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "openai/text-embedding-3-small", "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='openai/text-embedding-3-small',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
ChampType
ChampobjectTypestring
ChampmodelTypestring
Champdata[].indexTypeinteger
Champdata[].embeddingTypefinite float[]
ChampusageTypeobject
Erreurs et étapes suivantes
RéponseConditionÉtape suivante
Réponse400 · invalid_request_errorConditionChamps obligatoires, représentation des éléments fournis ou valeur de paramètre invalidesÉtape suivanteCorrigez les champs indiqués avant une nouvelle requête de création.

Alias

Alias du modèle

Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small

Alias des chemins de méthode

Utilisez les chemins de méthode indiqués ci-dessus.

ID d’appel associés

openai/text-embedding-3-small, text-embedding-3-small

Ailoot Ultra · Plongements vectoriels · text-embedding-3-small POST /v1/embeddings text-embedding-3-small

text-embedding-3-small

OpenAI /text-embedding-3-small
ID du modèle
  • openai/text-embedding-3-small
  • text-embedding-3-small

Pour commencer

Le petit modèle de plongement textuel de troisième génération d’OpenAI renvoie des vecteurs de 1536 dimensions par défaut et prend en charge des représentations plus courtes. Utilisez la sortie numérique pour la recherche sémantique, la recherche de code, le regroupement, les recommandations et la classification.

Entrées acceptées
Texte
Résultats
embedding

Disponible dans Ailoot · entrées et méthodes

Ailoot Ultra · Plongements vectoriels · text-embedding-3-small POST /v1/embeddings
Entrée
text
Sortie
embedding
Contexte
8 192 tokens
Format de sortie
json
ChampTypeExigenceValeurs et limitesPar défaut
ChampmodelTypestringExigenceObligatoireValeurs et limites
text-embedding-3-small
Par défaut—
ChampinputTypestring|string[]|integer[]|integer[][]ExigenceObligatoireValeurs 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: 8 192 · Unité de texte: octets UTF8 · Unité de jetons: éléments du tableau de jetons
Par défaut—
Champencoding_formatTypestringExigenceFacultatifValeurs et limites
float
Par défautfloat
ChampdimensionsTypeintegerExigenceNon pris en chargeValeurs et limites
Minimum: 1
Par défaut—
ChampuserTypejson_valueExigenceFacultatifValeurs et limites
Conditions: Métadonnées JSON facultatives; la sémantique exacte en amont dépend du modèle sélectionné.
Par défaut—
Champsession_idTypejson_valueExigenceFacultatifValeurs et limites
Conditions: Métadonnées JSON facultatives; la sémantique exacte en amont dépend du modèle sélectionné.
Par défaut—
ChamptraceTypejson_valueExigenceFacultatifValeurs et limites
Conditions: Métadonnées JSON facultatives; la sémantique exacte en amont dépend du modèle sélectionné.
Par défaut—
ChampproviderTypeobjectExigenceFacultatifValeurs 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ètreContrat
Paramètrecontent_typeContratapplication/json
ParamètrerequiredContratmodel, input
Paramètreinput_shapesContratstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[]
Paramètreencoding_formatContratfloat
Paramètredimensions_overrideContratfalse
Paramètremax_input_budget_unitsContrat8192
Paramètremultimodal_objectsContratfalse
Paramètrematerial_typesContrattext
Paramètretext_file_materialContratLisez le document UTF-8 réel et placez son texte dans l’entrée indiquée ou dans la chaîne de contenu du message.

Cycle de vie : synchronous_json

Envoyez l’identifiant exact du modèle et les champs requis.

Conservez chaque élément retourné et ses identifiants d’origine.

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
Tarif standard Lorsque le mode rapide est sélectionné
Mode Flex
Tarif standard Lorsque le mode flex est sélectionné
Effort de raisonnement maximal
Tarif standard Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)

Tarifs Ailoot

Prix par configuration

ConfigurationBarème tarifaireCoût
ConfigurationTarifs de base des jetonsBarème tarifaireTarif de baseCoût
Entrée · Jetons en entrée $0.00004 / 1K jetons
Sortie · Jetons en sortie $0 / 1K jetons
Entrée · Lecture du cache — / 1K jetons
Entrée · Écriture dans le cache — / 1K jetons
Entrée · Écriture dans le cache, 1 h — / 1K jetons

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 · Plongements vectoriels · text-embedding-3-small

Corps JSON minimal completcurl · utilisez votre document UTF-8Python · enregistrez le résultat complet
{
  "model": "text-embedding-3-small",
  "input": [
    "First document",
    "Second document"
  ],
  "encoding_format": "float"
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-small', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
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

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
    print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'text-embedding-3-small', 'input': ['First document', 'Second document'], 'encoding_format': 'float'}
payload['input'] = [text]
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'Authorization': 'Bearer PLACEHOLDER_KEY', 'Content-Type': 'application/json'}
headers['Authorization'] = 'Bearer ' + api_key
request = Request('https://api.ailoot.ai/v1/embeddings', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
for vector in result.get('data', []):
    print('Vector', vector.get('index'), json.dumps(vector.get('embedding')))

Recevoir et enregistrer les résultats

Ailoot Ultra · Plongements vectoriels · text-embedding-3-small

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 fini avec son indice d’origine. Préservez toutes les dimensions et l’objet d’utilisation complet.

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
ChampType
ChampobjectTypestring
ChampmodelTypestring
Champdata[].indexTypeinteger
Champdata[].embeddingTypefinite float[]
ChampusageTypeobject
Erreurs et étapes suivantes
RéponseConditionÉtape suivante
Réponse400 · invalid_request_errorConditionChamps obligatoires, représentation des éléments fournis ou valeur de paramètre invalidesÉtape suivanteCorrigez les champs indiqués avant une nouvelle requête de création.

Alias

Alias du modèle

Ailoot Ultra openai/text-embedding-3-small, text-embedding-3-small

Alias des chemins de méthode

Utilisez les chemins de méthode indiqués ci-dessus.

ID d’appel associés

openai/text-embedding-3-small, text-embedding-3-small

FAQ · OpenAI: Text Embedding 3 Small
Quelles entrées et quels résultats sont disponibles ?

POST /v1/embeddings · openai/text-embedding-3-small: text, token_ids → embedding

POST /v1/embeddings · text-embedding-3-small: text → embedding

Quels champs la requête utilise-t-elle ?

POST /v1/embeddings · openai/text-embedding-3-small: model, input, encoding_format, provider

POST /v1/embeddings · text-embedding-3-small: model, input, encoding_format, provider

Quelles limites s’appliquent ?

POST /v1/embeddings · openai/text-embedding-3-small: ctx: 8192; input.budget.maximum: 8192 (octets UTF8); input.min_items: 1

POST /v1/embeddings · text-embedding-3-small: ctx: 8192; input.budget.maximum: 8192 (octets UTF8); input.min_items: 1

Plus de détails

Connectez Ailoot à Claude Code, OpenCode, Hermes ou à votre application.

L’entreprise et son portefeuille de projets

L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.

Achetez des tokens à prix réduit.

Une remise d’abonnement pour le travail régulier. Des codes promo jusqu’à 50% sur l’achat de tokens.

Abonnement
Choisissez une offre à tarif réduit pour vos requêtes régulières.
Code promo jusqu’à 50%
Saisissez le code à l’achat. Le prix est recalculé selon la promotion en cours.
Dépenses dans l’historique
Modèle, tokens et montant sont enregistrés pour chaque requête.

Choisir un abonnement · Voir les prix des modèles

Connectez l’API au produit que vous vendez.

SaaS, applications et bots selon l’offre officielle et le contrat de licence Ailoot. Pour la revente, demandez une licence revendeur.

Application commerciale
Intégrez la génération de texte, d’images, de vidéo et de son aux fonctions payantes de votre service.
Licence revendeur
Envoyez la description du projet et le mode d’accès. Demandez des conditions écrites d’utilisation et de revente.
Documents sur le site
L’offre officielle, le contrat de licence et la politique de traitement des données sont accessibles avant connexion.

Demander une licence revendeur · Offre officielle et contrat de licence