Validateur JSONL

Validez et inspectez des fichiers JSONL pour les datasets de fine-tuning IA. Outil gratuit pour les formats OpenAI, Anthropic et Mistral.

Gratuit Sans inscription Fonctionne dans votre navigateur
Format
Format détecté :

Tous les exemples sont valides pour ce format.

Vos données restent dans votre navigateur : rien n'est envoyé à nos serveurs.

Les tâches de fine-tuning échouent pour des détails : une ligne cassée, un rôle inconnu, un exemple sans réponse de l’assistant. Une simple vérification JSON n’en repère presque aucun. Ce validateur contrôle chaque ligne d’un fichier JSONL, à la fois la syntaxe JSON et le format de chat attendu par le fine-tuning d’OpenAI, de Mistral ou d’Anthropic, et vous dit précisément quelle ligne pose problème et pourquoi.

Comment valider un fichier JSONL

  1. Collez le contenu de votre fichier .jsonl, ou cliquez sur Essayer un exemple pour voir les erreurs courantes.
  2. Laissez le format sur Détection automatique, ou choisissez OpenAI, Anthropic, Mistral ou Syntaxe JSON uniquement.
  3. Lisez le résumé (lignes valides, erreurs, avertissements) et la liste en dessous. Les numéros de ligne correspondent à ceux de votre fichier, lignes vides comprises.
  4. Corrigez les erreurs dans votre éditeur et recollez jusqu’à ce que toutes les lignes soient valides.

Qu’est-ce que JSONL et à quoi ressemble un fichier de fine-tuning ?

JSONL (JSON Lines) stocke un objet JSON complet par ligne, sans virgule entre les lignes ni tableau englobant. Les gros jeux de données sont ainsi faciles à lire en flux et à compléter ; c’est le format attendu par la plupart des API de fine-tuning et de traitement par lot.

Pour le fine-tuning de chat, chaque ligne est un exemple d’entraînement : un objet contenant un tableau messages. Chaque message a un role et un content, qui est une chaîne ou une liste de parties de contenu. Le modèle apprend à partir des messages de l’assistant : chaque exemple doit donc en contenir au moins un.

  • OpenAI : rôles system, developer, user, assistant et tool ; les parties de contenu peuvent être du texte ou des images ; un message de l’assistant peut ne contenir que des appels d’outils.
  • Mistral : même principe avec les rôles system, user, assistant et tool.
  • Anthropic (fine-tuning de Claude) : le prompt système est une chaîne system de premier niveau ; les messages n’utilisent que user et assistant, doivent commencer par user, alterner et se terminer par assistant.

Les exigences des fournisseurs évoluent et certains ajoutent des champs (outils, poids, données de préférence). Considérez cette vérification comme un premier filtre rapide, puis confirmez avec le validateur ou la documentation du fournisseur avant d’envoyer une grosse tâche.

Questions fréquentes

Quelle différence entre JSON et JSONL ?

Un fichier JSON contient une seule valeur, souvent un grand tableau. Un fichier JSONL contient une valeur JSON par ligne, sans rien entre les lignes. On peut lire du JSONL ligne par ligne sans charger tout le fichier, d’où son usage pour les gros jeux de données.

Pourquoi une ligne vide est-elle signalée en avertissement ?

Beaucoup d’API de fine-tuning et de traitement par lot refusent les fichiers contenant des lignes vides, qui apparaissent facilement quand on concatène des fichiers. Un retour à la ligne tout à la fin du fichier est normal et n’est pas signalé.

Comment la détection automatique choisit-elle le format ?

Elle examine la première ligne valide. Une chaîne « system » de premier niveau avec uniquement des messages user et assistant est traitée comme Anthropic ; tout autre tableau « messages » comme OpenAI ; le reste n’est vérifié que pour la syntaxe JSON. Choisissez le format à la main si la détection se trompe.

Pourquoi un exemple sans message de l’assistant échoue-t-il ?

En fine-tuning de chat, le modèle apprend à produire les tours de l’assistant. Un exemple qui n’en contient aucun ne lui apprend rien, et les fournisseurs le refusent.

Mes données d’entraînement sont-elles envoyées ?

Non. Le fichier est analysé et validé dans votre navigateur, en JavaScript. Rien n’est envoyé à nos serveurs, ce qui compte pour des données privées ou des données clients.

Outils similaires