1. 项目概述:从PPT文本到Obsidian知识库的自动化转换
这个工具的核心目标是实现PPT内容到Obsidian知识库的自动化转换。作为一名长期使用Obsidian进行知识管理的用户,我深知手动整理PPT内容的痛苦——每次看完演示文档,要么截图保存失去可搜索性,要么手工复制文本破坏原有结构。这个Python脚本通过结合vLLM的AI能力和结构化输出,完美解决了这个问题。
工具的工作流程非常清晰:将PPT逐页提取为JSONL格式的文本文件,然后通过vLLM模型分析内容,最终生成符合Obsidian Wiki规范的Markdown笔记。每个生成的笔记包含:
- 智能摘要(2-6行核心内容总结)
- 关键词(5-15个专业术语或关键概念)
- 标签(3-12个分类标签)
- 引用页和原文证据(确保摘要的可验证性)
这种结构化处理使得大量PPT内容可以快速转化为可链接、可搜索的知识节点,特别适合需要处理大量技术文档、培训材料或研究报告的场景。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与数据格式说明
2.1 输入数据准备
输入数据需要是JSONL格式,每个PPT对应一个.jsonl文件,存放在scripts/data目录下。文件结构示例:
json复制{"page":1,"text":"机器学习基础概念","imgs":0}
{"page":2,"text":"监督学习的三要素:模型、损失函数、优化算法","imgs":1}
实际操作中发现,如果PPT包含大量图表,建议先用OCR工具提取图表中的文字,合并到对应页的text字段中,这样AI生成的摘要会更准确。
2.2 vLLM服务部署
脚本依赖vLLM的OpenAI兼容接口,推荐使用Docker快速部署:
bash复制docker run --gpus all -p 8000:8000 vllm/vllm:latest --model qwen/qwen-7b
常见问题排查:
- 端口冲突:确认8000端口未被占用,或修改为其他端口
- GPU内存不足:可添加--max-model-len 1024限制上下文长度
- 模型下载失败:提前从HuggingFace下载模型到本地,通过--model参数指定本地路径
2.3 目录结构规范
code复制scripts/
