ndjson · 技术漫谈

2025 年 1 月 14 日周二,有关于 ollama API 的相关操作及发现。

  • 进行 API 操作:通过 curl 向 http://localhost:11434/api/generate 发送请求,包含 model 为 "llama3.2" 和 prompt 为 "Where is Dublin? Answer in a six words",得到一系列包含 modelcreated_atresponse 等字段的 JSON 数据,其中响应是流式 JSON,且 HTTP 响应头的 Content-Typeapplication/x-ndjsonTransfer-Encoding 为 chunked。
  • 探索 JSON 流式格式:进一步研究 JSON 流式,介绍了 ndjson(使用换行符 \n 分隔每个 JSON 对象,不允许对象或值之间有空白)、jsonl(类似 ndjson,允许 \n 分隔符周围有可选空白和 Windows 系统的 \r\n)、json-seq(每个 JSON 对象前有 ASCII 记录分隔符 0x1E,后有 ASCII 换行符 0x0A),这些格式可用于处理和并行处理大型 JSON 对象而无需将整个数据集加载到内存中,且 jq 可处理新行分隔的 JSON。
阅读 17
0 条评论