Formateur JSONL / JSON Lines

Validez et formatez les fichiers JSONL (JSON Lines / NDJSON) où chaque ligne est un objet JSON. Utile pour les ensembles de données d'apprentissage automatique, les fichiers journaux et les données en continu.

4 valid records

Table View

#idnameroleactive
11Alicedevelopertrue
22Bobdesignertrue
33Carolmanagerfalse
44Davedevelopertrue

Comment utiliser Formateur JSONL / JSON Lines

  1. 1Collez votre contenu JSONL (un objet JSON par ligne).
  2. 2Consultez les résultats de validation pour chaque ligne avec la mise en évidence des erreurs.
  3. 3Convertissez entre le format JSONL et un tableau JSON, ou compactez/formatez élégamment chaque enregistrement.
ZenovayAnalytics

Voyez qui est sur votre site en ce moment.

  • Suivi des visiteurs en temps réel
  • Vie privée d'abord, sans bandeau cookies
  • Installé en deux minutes
Découvrir Zenovay

Questions fréquemment posées

Qu'est-ce que JSONL (JSON Lines) ?
JSONL (JSON Lines) est un format textuel où chaque ligne est une valeur JSON valide (généralement un objet). Aussi connu sous le nom de NDJSON (Newline Delimited JSON) ou JSON Lines. Règles : chaque ligne est un objet JSON complet et valide. Les lignes sont séparées par des retours à la ligne (\n). Pas de virgule finale entre les lignes. Le fichier peut avoir un retour à la ligne final. Avantages par rapport aux tableaux JSON : compatible avec la diffusion en continu (lire une ligne à la fois sans charger l'intégralité du fichier), facile à ajouter, facile à grep, efficace en mémoire pour les grands ensembles de données. Utilisé par : Elasticsearch bulk API, ensembles de données de réglage fin OpenAI, agrégation de journaux, Clickhouse, BigQuery.
En quoi JSONL diffère-t-il d'un tableau JSON ?
Tableau JSON : [{...}, {...}, {...}] — doit lire l'intégralité du fichier avant l'analyse, bon pour les petits ensembles de données. JSONL : un objet par ligne, analysable en diffusion ligne par ligne. La conversion est simple : JSONL → tableau JSON : enveloppez les lignes dans [] et joignez avec des virgules. Tableau JSON → JSONL : stringifiez chaque élément sur sa propre ligne. Différence pratique : un fichier JSON de 10 Go nécessite 10 Go de RAM pour l'analyse ; un fichier JSONL de 10 Go nécessite seulement assez de RAM pour contenir un enregistrement à la fois. Outils : jq, bibliothèque jsonlines Python, Clickhouse, Apache Kafka supportent tous JSONL nativement.
Comment puis-je analyser JSONL en JavaScript ?
Ligne par ligne : const records = text.split("\n").filter(line => line.trim()).map(line => JSON.parse(line)). Traitement en continu : utilisez fs.createReadStream() avec interface readline en Node.js. readline.createInterface({ input: fileStream }).on("line", (line) => { if (line.trim()) process(JSON.parse(line)); }). Pour les grands fichiers, utilisez l'approche de diffusion en continu — ne chargez jamais l'intégralité du fichier en mémoire. Navigateur : récupérez le fichier et utilisez un TransformStream avec séparation de ligne. Gestion des erreurs : enveloppez chaque JSON.parse() dans try-catch pour gérer les lignes mal formées.
Quel est le format JSONL de réglage fin OpenAI ?
Le réglage fin OpenAI utilise JSONL avec un schéma spécifique. Format de conversation : chaque ligne est {"messages": [{"role": "system", "content": "..."}, {"role": "user", "content": "..."}, {"role": "assistant", "content": "..."}]}. Format de completion (hérité) : chaque ligne est {"prompt": "...", "completion": " ..."}. Exigences : au moins 10 exemples, 50-100+ recommandé. Taille du fichier : max 1 Go. Validation : utilisez la commande openai tools.fine_tunes.prepare_data. Le jeton "\n" après la completion est important pour que le modèle apprenne où les réponses se terminent.
Comment travailler avec de grands fichiers JSONL ?
Ligne de commande : compter les lignes : wc -l file.jsonl. Obtenir les 10 premiers : head -n 10 file.jsonl. Obtenir les 10 derniers : tail -n 10 file.jsonl. Filtrer avec jq : cat file.jsonl | jq -c 'select(.status == "active")'. Diffusion en continu Python : with open("file.jsonl") as f: for line in f: record = json.loads(line). Diviser par nombre de lignes : split -l 1000 file.jsonl chunk_. Fusionner : cat chunk_* > merged.jsonl. Trier : sort -t'"status"' file.jsonl (trier par ligne brute, soyez prudent). DuckDB : SELECT * FROM read_json_auto('file.jsonl', format='newline_delimited').