桃子桃子 AI 快讯
返回首页
工具

开发者开源 claude_converter:一键将 Claude Code 会话转为微调数据

社区开发者发布开源工具 claude_converter,可将本地 Claude Code 的 .jsonl 会话日志转…

2026.06.28 · 周日3 分钟阅读评分 35
评分细项加权总分 35
重要性
28
新颖性
45
影响面
22
可信度
40
实质性
55

一名社区开发者近日在 Reddit 的 r/LocalLLaMA 板块发布了一款名为 claude_converter 的开源工具,专门用于把本地 Claude Code 的会话日志文件转换为可直接用于大模型微调的标准格式。该工具已在 GitHub 开源,并可通过 uv pip install claude-converter 安装,零外部依赖。

工具核心功能

Claude Code 会将每一次编程会话以 .jsonl 文件的形式保存在 ~/.claude/projects/ 目录下,记录多轮编辑、工具调用以及推理过程。开发者认为这些会话本身就是高质量的真实编码交互数据,但原始格式与现有微调框架不兼容,因此写了 claude_converter 来补齐这一转换环节。

主要特性包括:

  • 将 .jsonl 会话转换为 apply_chat_template() 可直接消费的 messages 格式;
  • 输出兼容 TRL/SFTTrainer、Axolotl 与 LLaMA-Factory(sharegpt 格式);
  • 提供 clean_messages() 辅助函数,可在训练前剥离 <tool_use>、<tool_result>、<thinking> 等特殊块;
  • 内置 inspect_session() 检查函数,输出 token 数与块结构统计,帮助用户在训练前了解数据构成;
  • 零依赖,纯 Python 实现。

使用方式与注意事项

官方示例展示了一个常见流程:使用 glob 扫描 ~/.claude/projects/ 下的全部 .jsonl 文件,经 session_to_messages() 转换并通过 clean_messages() 清洗后,只保留长度不少于 2 轮的会话,再借助 Hugging Face Datasets 装载即可送入 SFTTrainer 进行监督微调。

开发者也在 README 中明确提醒:原始会话中包含失败尝试、重试和走入死胡同的片段,不能盲目全量训练。他建议筛选出「最终 assistant 回复确实解决了问题」的会话作为训练数据,以避免负面样本污染模型行为。

适用场景与局限

claude_converter 主要面向使用 Claude Code 进行日常编码、同时希望基于自身交互数据微调本地开源模型(如 Qwen、Llama 系列)的开发者。对希望低成本获取真实多轮工具调用训练数据的小团队或个人研究者来说,这一工具有一定实用价值。

不过需要指出的是,该工具由个人开发者发布,尚未公布大规模验证数据或下游模型评测结果;同时其覆盖范围限于 Claude Code 自身的日志格式,迁移到其他编码助手仍需额外适配。对于不依赖 Claude Code 的用户而言,该工具的实际意义较为有限。

信源