>_toolkitbox

~/tools / AI JSONL Checker

AI JSONL Checker — Vérifiez ligne par ligne un fichier JSONL de lot ou de fine-tuning

Vérifiez ligne par ligne un fichier JSONL destiné à l'API OpenAI Batch, à l'API Anthropic Message Batches ou au fine-tuning OpenAI. Repérez le JSON invalide, les valeurs custom_id en double, les endpoints et paramètres non pris en charge, et les limites de taille avant l'envoi. Rien ne quitte votre navigateur.

Format

Règles vérifiées dans la documentation le 2026-10-23.

Documentation : OpenAI Batch / Anthropic Message Batches / Fine-tuning OpenAI

Non vérifié : les noms de modèles, le contenu des paramètres, le nombre de tokens et les règles que la documentation n'indique pas, par exemple si toutes les requêtes d'un même lot OpenAI doivent utiliser le même endpoint.

Tout s'exécute dans votre navigateur. Le fichier n'est pas envoyé.

Les API de traitement par lots et le fine-tuning prennent en entrée un fichier JSONL, c'est-à-dire une valeur JSON sur chaque ligne. Une seule ligne invalide peut faire échouer tout l'envoi, et l'erreur désigne souvent le fichier plutôt que la ligne. Cet outil lit le texte que vous collez et le vérifie selon ce que dit la documentation pour le format choisi : pour OpenAI Batch, un custom_id unique, un endpoint listé, un seul modèle par fichier et pas de streaming ; pour Anthropic Message Batches, un custom_id de 1 à 64 lettres, chiffres, tirets et tirets bas, ainsi que les paramètres qu'un lot rejette ; pour le fine-tuning OpenAI, un tableau messages sur chaque ligne, au moins 10 lignes et un weight de 0 ou 1. Les résultats indiquent le numéro de ligne de chaque problème, et les règles ont été vérifiées dans la documentation à la date indiquée sous l'outil.

Cas d'usage

  • Vérifier un fichier d'entrée de lot avant de l'envoyer, pour qu'une ligne invalide ne fasse pas échouer tout le lot
  • Trouver les valeurs custom_id en double, ou une requête qui définit stream sur true, dans un fichier de plusieurs milliers de lignes
  • Contrôler des données de fine-tuning pour repérer les lignes sans messages, sans réponse de l'assistant ou avec un weight différent de 0 ou 1

Utilisation

  1. Choisissez le format : OpenAI Batch, Anthropic Message Batches ou fine-tuning OpenAI.
  2. Collez le contenu du fichier, ou chargez l'exemple de ce format.
  3. Lisez la liste des problèmes avec leurs numéros de ligne. À corriger signifie que, selon la documentation, la ligne sera rejetée ou est invalide, À vérifier signifie qu'elle mérite un coup d'œil, et Info sert à titre d'information. Corrigez le fichier puis collez-le à nouveau.

FAQ

Qu'est-ce que le JSONL ?

JSON Lines : un fichier texte contenant une valeur JSON complète sur chaque ligne, sans virgule entre les lignes. La documentation du fine-tuning OpenAI demande une structure JSON complète sur chaque ligne. Un document JSON réparti sur plusieurs lignes, ou un simple tableau, n'est pas du JSONL.

L'API Anthropic Message Batches accepte-t-elle un fichier JSONL ?

Elle accepte une liste de requêtes, chacune avec un custom_id et un objet params, dans le paramètre requests de l'appel de création. Ses résultats sont renvoyés sous forme de fichier .jsonl. Cet outil traite chaque ligne comme une requête, et accepte aussi un tableau JSON ou un objet contenant un tableau requests.

Quelles limites vérifie-t-il ?

Pour OpenAI Batch : 50 000 requêtes par lot, un fichier d'entrée de 200 MB et 50 000 entrées d'embeddings sur l'ensemble du lot. Pour Anthropic : 100 000 requêtes ou 256 MB par lot. Pour le fine-tuning OpenAI : au moins 10 lignes. La taille affichée est la taille en UTF-8 du texte que vous avez collé.

Pourquoi une requête avec stream défini sur true est-elle signalée comme un problème ?

La documentation OpenAI indique que le worker Batch rejette les requêtes qui définissent stream sur true. La documentation Anthropic cite stream: true, speed, fallbacks et max_tokens: 0 comme des paramètres qui renvoient une erreur de validation dans un lot.

Que ne vérifie-t-il pas ?

Les noms de modèles, le contenu des paramètres, le nombre de tokens, la prise en charge de l'endpoint par votre compte, ni rien de ce que la documentation n'indique. Par exemple, il ne dit pas si toutes les requêtes d'un même lot OpenAI doivent utiliser le même endpoint. Un fichier qui passe la vérification peut quand même échouer côté API : testez d'abord avec un petit fichier.

Mon fichier est-il envoyé à un serveur ?

Non. La vérification s'exécute dans votre navigateur, donc le contenu n'est pas envoyé.

Voir aussi