llm-min.txt:革命性技术文档压缩工具,为AI助手节省95%上下文空间
llm-min.txt:革命性技术文档压缩工具,为AI助手节省95%上下文空间
在AI驱动的开发时代,技术文档的"知识鸿沟"始终困扰着开发者——当你使用GitHub Copilot或Cursor等AI编码助手时,它们往往因文档体积过大而无法完整处理最新的库信息。llm-min.txt作为一款革命性的技术文档压缩工具,采用Min.js式的精简哲学,通过AI驱动的结构化压缩技术,将原本动辄数十万token的技术文档压缩至仅需1万token左右,为AI助手节省高达95%的上下文空间,让AI瞬间掌握完整的库知识。
为什么需要llm-min.txt?技术文档的"AI适配难题"
现代AI助手面临的核心挑战在于上下文窗口限制。以流行的llms.txt格式为例,许多技术文档文件体积超过80万token,远超大多数AI系统的处理能力:
传统解决方案各有局限:完整的llms-full.txt文件体积庞大难以处理,而精简版本往往仅包含文档链接,需要AI额外联网获取信息。Context7等服务虽能动态提供上下文,但存在信息选择不透明、依赖现有仓库等问题。
llm-min.txt的创新之处在于:它不是简单删减内容,而是通过AI将文档重构为机器优化的结构化格式(SKF),在保留核心技术信息的同时实现极致压缩。就像网页开发中的min.js文件剔除冗余代码,llm-min.txt专注保留AI最需要的类定义、方法签名和使用模式。
眼见为实:90-95%的压缩率如何实现?
llm-min.txt的压缩效果令人惊叹。通过对比原始文档(llm-full.txt)与压缩后的llm-min.txt文件,我们可以清晰看到高达90-95%的token减少:
以Svelte、Crawl4AI和Google GenAI三个项目为例,压缩率分别达到92.2%、92.1%和88.7%。这种级别的压缩意味着原本需要37万token的Google GenAI文档,经处理后仅需4.2万token,轻松放入主流AI的上下文窗口。
项目的sample目录中提供了完整对比:
- sample/crawl4ai/llm-full.txt:原始未压缩文档
- sample/crawl4ai/llm-min.txt:压缩后的SKF格式文件
- sample/crawl4ai/llm-min-guideline.md:AI解析指南
核心技术:SKF结构化知识格式详解
llm-min.txt采用Structured Knowledge Format (SKF),这是一种专为AI解析优化的紧凑格式,而非面向人类阅读。其核心结构包括:
1. 头部元数据
- 格式标识与版本(如
# IntegratedKnowledgeManifest_SKF/1.4 LA) - 原始文档来源(
# SourceDocs: [...]) - 生成时间戳与命名空间信息
2. 三大核心结构化区块
- DEFINITIONS (D):静态组件定义,包含类、方法签名、参数类型等
D001:G001_Greeter [CompDef] [NAMESPACE "."] [OPERATIONS {greet:Str(name:Str)}] ("A simple greeter class") - INTERACTIONS (I):动态行为描述,记录方法调用关系与错误处理逻辑
I001:G001_Greeter.greet INVOKES G003_Logger.log ("Logs greeting activity") - USAGE_PATTERNS (U):使用模式示例,提供完整工作流程步骤
U_BasicGreeting.1:[User] CREATE (G001_Greeter) -> [greeter_instance] U_BasicGreeting.2:[greeter_instance] INVOKE (greet name='Alice') -> [greeting_message]
3. 配套解析指南
llm-min-guideline.md提供详细的格式解码说明,确保AI能够正确理解SKF的语法规则与字段含义,这是实现高效解析的关键。
快速上手:3步生成你的第一个llm-min.txt文件
1. 安装工具
# 普通用户安装
pip install llm-min
playwright install # 安装浏览器自动化工具
# 开发者安装
git clone https://gitcode.com/gh_mirrors/ll/llm-min.txt
cd llm-min.txt
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
uv sync
uv pip install -e .
2. 配置Gemini API密钥
# Linux/macOS
export GEMINI_API_KEY=your_api_key_here
# Windows (PowerShell)
$env:GEMINI_API_KEY="your_api_key_here"
密钥可从Google AI Studio获取。
3. 生成压缩文档
根据需求选择输入源:
# 处理Python包文档
llm-min -pkg "typer" -o my_docs -p 50
# 处理文档网站
llm-min -u "https://fastapi.tiangolo.com/" -o my_docs
# 处理本地文档文件夹
llm-min -i "./project-docs" -o my_docs -n "my-project" -V "1.2.3"
生成的文件结构清晰有序:
my_docs/
└── typer/
├── llm-full.txt # 原始完整文档
├── llm-min.txt # 压缩的SKF格式文件
└── llm-min-guideline.md # AI解析指南
实际效果演示:AI如何利用llm-min.txt
只需将生成的llm-min.txt文件提供给AI助手,即可显著提升其对库的理解能力。以下是在AI对话界面中使用llm-min.txt的实际效果:
在测试中,对于Crawl4AI、Google GenAI等当前AI常出错的库,使用llm-min.txt后代码生成成功率大幅提升,证明了压缩文档的实用价值。
技术实现:llm-min的工作原理探秘
llm-min的核心处理流程在src/llm_min/compacter.py中实现,采用三阶段AI分析 pipeline:
- 全局术语表生成:识别文档中的关键实体,合并重复项并分配全局ID
- 定义与交互提取:生成D和I区块内容,确保跨文档一致性
- 使用模式生成:提炼U区块的工作流程示例,建立实体间关系
这种分阶段处理确保了SKF文件的全面性和一致性,即使处理大型文档也能保持高质量的结构化输出。
常见问题解答
Q: 生成llm-min.txt需要高性能AI模型吗?
A: 是的,生成过程需要Gemini等具备强推理能力的模型来提取结构化信息。但生成后的文件可被任何主流AI助手使用。
Q: 压缩会丢失重要信息吗?
A: llm-min.txt是有损压缩,刻意省略解释性文字和边缘信息,只保留AI最需要的技术细节(类、方法、参数等)。
Q: 生成一个文件的成本大概是多少?
A: 通常在$0.01到$1.00 USD之间,取决于文档大小和复杂度,具体可参考Google Cloud的Gemini定价。
Q: 可以处理本地私有文档吗?
A: 完全可以!使用--input-folder选项可递归处理本地.md、.txt和.rst文件,适合内部文档或无网络环境。
未来展望
llm-min项目正探索多个发展方向:
- 公共llm-min.txt仓库:建立社区共享的预生成文件库
- 代码驱动文档推断:结合AST分析增强文档准确性
- 多模型支持:扩展对更多AI模型的兼容
欢迎通过项目贡献代码、报告问题或提出建议,共同完善这一工具。
许可证
本项目采用MIT许可证,详见LICENSE文件。
更多推荐



所有评论(0)