AI 辅助实验记录生成器

一个面向机器学习实验场景的自动化文档生成工具。它读取实验配置、运行日志与指标数据,结合 LLM 自动总结实验目的、过程与结论,并通过 Jinja2 模板渲染为结构化的 Markdown 实验记录。

技术栈

Python Jinja2 LLM PyYAML Pandas

核心功能

  • 1 读取 YAML/JSON 实验配置、CSV 指标文件与训练日志,统一提取关键信息。
  • 2 对长日志进行分段摘要,自动识别超参数、损失曲线趋势与异常中断。
  • 3 调用 LLM 生成实验背景、方法描述、结果分析与下一步建议等自然语言段落。
  • 4 使用 Jinja2 模板引擎渲染 Markdown,支持自定义实验记录格式与风格。
  • 5 命令行一键运行,可集成到训练脚本结束后的回调中,实现实验结束自动归档。

实现亮点

模板驱动的文档生成

将实验记录抽象为“元数据 + 自动摘要 + 人工批注”三层结构,用户可通过 Jinja2 模板自由组合章节,兼顾自动化与可读性。

指标可视化嵌入

在生成 Markdown 之前,工具会自动绘制关键指标曲线并保存为图片,最终文档中以相对路径引用,方便后续在 Obsidian 或 GitHub 中查看。

遇到的挑战

训练日志通常包含大量冗余信息,直接送入 LLM 会导致上下文浪费。通过正则提取关键事件(如 epoch 结束、验证指标、EarlyStopping),并只保留最近若干轮日志,显著压缩了输入长度。

另一个难点是保证生成内容的可复现性:同样的实验多次运行可能得到措辞不同的记录。通过固定模板中的结构化字段(如超参数表格、指标对比表),仅让 LLM 负责自然语言段落的润色,降低了不确定性。

后续计划

  • 支持多实验对比报告,自动总结不同超参数设置下的性能差异。
  • 接入 Weights & Biases、TensorBoard 等实验跟踪工具的导出数据。
  • 提供 Web 界面,允许在线编辑摘要结果后再导出最终 Markdown。