first commit
This commit is contained in:
		
							
								
								
									
										68
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -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 已经启动并正在运行 | ||||
| - 如果没有一级标题,整个内容将作为一个块处理 | ||||
| - 如果单个块超过最大长度,将进一步分割 | ||||
		Reference in New Issue
	
	Block a user