commit 18774df43d2f2c132283168afe3ffe507aa158a3 Author: glowz <24627181@qq.com> Date: Tue May 6 22:41:18 2025 +0800 first commit diff --git a/README.md b/README.md new file mode 100644 index 0000000..5e870c8 --- /dev/null +++ b/README.md @@ -0,0 +1,68 @@ +# Markdown 处理工具 + +这是一个用于处理 Markdown 文件的工具,它可以根据一级标题将文件内容分块,然后使用大型语言模型(LLM)处理每个块,最后将处理后的结果合并生成新的 Markdown 文件。 + +## 功能特点 + +- 读取 Markdown 文件 +- 根据一级标题(#)对文件内容进行切分 +- 确保每个块的长度小于指定的最大长度 +- 使用 LM-Studio 的 OpenAI 兼容接口处理每个块 +- 合并处理后的结果生成新的 Markdown 文件 + +## 安装要求 + +- Python 3.6+ +- OpenAI Python 库 +- LM-Studio(用于本地运行大语言模型) + +## 安装依赖 + +```bash +pip install openai +``` + +## 使用方法 + +1. 确保 LM-Studio 已启动并运行在默认端口(http://localhost:1234) + +2. 运行脚本处理 Markdown 文件: + +```bash +python markdown_processor.py input.md output.md +``` + +### 命令行参数 + +- `input_file`:输入的 Markdown 文件路径(必需) +- `output_file`:输出的 Markdown 文件路径(必需) +- `--max_length`:每个块的最大长度,默认为 4000 +- `--model`:使用的 LLM 模型名称,默认为 'gpt-3.5-turbo' +- `--api_base`:API 基础 URL,默认为 'http://localhost:1234/v1' + +### 示例 + +```bash +# 基本用法 +python markdown_processor.py my_document.md processed_document.md + +# 指定最大块长度 +python markdown_processor.py my_document.md processed_document.md --max_length 2000 + +# 指定不同的模型和API地址 +python markdown_processor.py my_document.md processed_document.md --model llama3 --api_base http://localhost:8000/v1 +``` + +## 工作原理 + +1. 读取指定的 Markdown 文件 +2. 根据一级标题(#)将内容分块,确保每个块小于指定的最大长度 +3. 使用 LM-Studio 的 OpenAI 兼容接口处理每个块 +4. 将处理后的块合并生成新的 Markdown 文件 +5. 保存结果到指定的输出文件 + +## 注意事项 + +- 确保 LM-Studio 已经启动并正在运行 +- 如果没有一级标题,整个内容将作为一个块处理 +- 如果单个块超过最大长度,将进一步分割 \ No newline at end of file