Embeddings par lots
Le traitement par lots vectorise une longue liste de textes en une seule demande, au lieu de les envoyer un par un. Vous obtenez pour chaque entrée son embedding, dans le même ordre. C’est la façon pratique d’indexer un catalogue entier, une base d’articles ou un historique de tickets sans écrire de boucle interminable.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Pourquoi grouper plutôt qu’envoyer à l’unité
Traiter mille fiches une par une, c’est mille allers-retours, mille occasions de perdre le fil si l’une échoue. Le mode par lots regroupe tout en une requête ordonnée : vous fournissez votre liste, KIT renvoie les vecteurs alignés sur vos entrées. Rien à recoller à la main. Pour un catalogue de Menuiserie Rousseau & Fils ou un export de tickets, c’est la différence entre une manipulation d’une minute et un après-midi de bricolage.
Le bon format d’entrée
Chaque élément de la liste doit être un texte autonome et lisible : une fiche produit, un paragraphe d’aide, un avis client. Évitez d’y coller un document brut de dizaines de pages ; découpez-le d’abord en fragments cohérents, car un vecteur résume mal un texte trop long. Une demande accepte jusqu’à 10 000 fragments et 20 000 tokens au total, de quoi couvrir un catalogue de PME en une passe.
Facturation proportionnelle
Vous ne payez pas au nombre de textes mais au volume traité : $0.002 par requête, plus $0.0015 pour 1 000 tokens. Un lot de cinq cents fiches courtes revient à quelques centimes de dollar. Le montant se calcule sur ce que vous envoyez réellement, sans forfait ni ligne fixe mensuelle. Et comme un lot compte pour une seule requête, grouper vos textes réduit aussi le nombre d’appels facturés : c’est plus économique qu’un envoi à l’unité.
Cas d’usage
Indexer un catalogue complet
Une boutique de mobilier envoie ses 1 200 descriptions produit en un lot. Chaque fiche ressort avec son vecteur, prête à alimenter une recherche par le sens ou un moteur de recommandations sur le site.
Réveiller un historique de support
Studio Lumen SAS vectorise trois ans de tickets d’un coup pour retrouver, plus tard, les demandes déjà résolues qui ressemblent à une nouvelle. L’archive dormante redevient consultable par le sens.
Préparer une analyse d’avis
Une association vectorise les réponses à son questionnaire annuel afin de regrouper ensuite les commentaires par thème. Le lot unique évite de traiter chaque réponse séparément.
Questions fréquentes
Quelle différence avec la vectorisation d’un seul texte ?
Le résultat est identique pour chaque texte ; seul le confort change. Le mode par lots accepte une liste entière en une requête et renvoie les vecteurs dans l’ordre reçu, ce qui vous épargne des centaines d’appels séparés.
Que se passe-t-il si un élément de ma liste pose problème ?
Le lot signale l’entrée en cause au lieu de tout abandonner en silence. Vous voyez laquelle corriger et pouvez la renvoyer seule, sans relancer l’ensemble.
Combien de textes puis-je envoyer en une fois ?
Jusqu’à 10 000 fragments et 20 000 tokens par requête. Au-delà, découpez en plusieurs lots : rien n’empêche d’en enchaîner autant que nécessaire pour couvrir une très grande base.
Mes fichiers sont-ils lisibles par quelqu’un d’autre ?
Vos textes transitent chiffrés jusqu’à nos serveurs et n’y servent qu’à produire vos vecteurs. Ils ne sont ni publiés, ni partagés, ni réemployés pour entraîner un modèle. Une suppression peut être demandée à [email protected].
Quel est le prix pour un gros catalogue ?
Il dépend du volume, pas du nombre d’articles : $0.002 par requête et $0.0015 pour 1 000 tokens. Un catalogue de PME tient souvent en quelques centimes de dollar. Le total s’affiche avant lancement.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/search/embed-batch \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/search/embed-batch", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/search/embed-batch",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/search/embed-batch", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/search/embed-batch", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "search.embed_batch",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_chunks | 10000 |
max_tokens | 20000 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |