ArrayKit

JSONL 查看与校验

读取、筛选并检查 JSONL 文件,每个问题都落到具体行上。

JSONL 查看与校验

读取、筛选并检查 JSONL 文件,每个问题都落到具体行上。

日志与数据集在浏览器里读取。不会上传,关闭页面后也不留存。

把它当作训练集来校验

关于 JSONL 查看与校验

对话日志、评测集、训练数据和批处理任务最后都落到 JSONL 里,而它的出错方式和普通 JSON 不一样。五万行好行里夹着一行坏行;末尾多出一个空行;或者一个其实是每行末尾带逗号的美化过的数组的文件。对着一个四十兆的文件说"JSON 无效",谁都帮不上。所以这里的一切都按行报告,用编辑器会显示的行号。空行被跳过而不是算作错误,而数组冒充 JSONL 的情形会被识别出来,并给出一键转换。

功能特性

  • 每个失败都落到它的行号上
  • 跳过空行且不打乱行号
  • 识别被当作 JSONL 粘贴的美化数组,并完成转换
  • 记录里出现过的全部键,以及带有各键的记录数
  • 按点号路径筛选,或在整条记录里筛选
  • 逐条翻看记录,格式化显示
  • 与 JSON 数组互相转换
  • 拖入文件,或直接粘贴

如何使用 JSONL 查看与校验

  1. 拖入 .jsonl 文件或粘贴内容
  2. 查看有效与无效的计数
  3. 筛选到你关心的记录
  4. 逐条翻看,或导出为数组

示例

输入

line 2: not json

输出

Unexpected token o in JSON at position 1

其余 49,999 行仍然解析成功、可以使用。

常见错误与故障排除

  • 所有行都失败了。 — 它多半是美化过的 JSON 数组而不是 JSONL。这种情形会被识别出来,并提供转换。
  • 行号和我的编辑器对不上。 — 应该是对得上的——空行在解析时被跳过,但不会打乱行号。
  • 我的筛选路径什么都找不到。 — 路径用点号分隔,数组下标用数字:messages.0.content。筛选框上方的键列表会显示实际存在的键。
  • 很大的文件很慢。 — 一切都在浏览器里解析,所以超大文件受内存限制。拆开比等待更快。

常见问题

JSONL 是什么?
每行一个完整的 JSON 值,之间没有逗号,外面也没有方括号。它便于流式处理和追加,所以日志和数据集都用它,而且单独一行畸形也不会让整个文件失效。
为什么我的文件看着像 JSONL 却失败了?
几乎总是因为它是美化过的数组:一个对象铺在好几行上,每行末尾还有逗号。那是合法 JSON、不是合法 JSONL,这里会识别出来并提供转换。
按路径筛选是怎么工作的?
用点号分隔的片段,数组下标用数字。该路径上的值会以不区分大小写的子串方式搜索,所以按第一条消息的内容筛选只要一个表达式。
末尾的空行有问题吗?
没有。以换行结尾的文件既正常又正确;空行单独计数,永远不会被报成错误。
我的文件会被上传吗?
不会。一切都在浏览器里解析。考虑到 JSONL 里通常装着什么,这一点很重要:对话日志和训练数据是团队里最敏感的文件之一。

相关工具

更多AI 与智能体工具

查看全部AI 与智能体工具 · 全部工具