游乐游手机版
首页/AI教程/文章详情

Python解析llms.txt一键生成大语言模型上下文XML详细教程

时间:2026-06-17 15:06
最近在研究 LLM 上下文工程(Context Engineering)时,发现一个特别实用的工具——`llms-txt`。它的职责非常纯粹:将项目里的 `llms txt` 文件转换成大型语言模型能够直接理解的 XML 上下文文档。 做 AI Agent、RAG、Claude 项目或 Prompt
最近在研究 LLM 上下文工程(Context Engineering)时,发现一个特别实用的工具——`llms-txt`。它的职责非常纯粹:将项目里的 `llms.txt` 文件转换成大型语言模型能够直接理解的 XML 上下文文档。 做 AI Agent、RAG、Claude 项目或 Prompt 工程的同学,应该都遇到过这样的需求:如何把项目文档自动整理成模型可读的结构化信息?这个工具正是为此而生。 下面从概念到操作,完整梳理它的用法和原理。 ## Python 解析 llms.txt 的教程:一键生成 LLM 上下文 XML ![在这里插入图片描述](https://img.318050.com/uploads/20260616/17815955646a30fdac4b9b0582344030.webp)
### 前言 `llms-txt` 的核心价值一句话就能说清楚:**将 Markdown 格式的项目描述,转化为 LLM 可以直接使用的结构化上下文**。 它主要完成三件事: - 解析 `llms.txt` 的区块结构 - 提取标题、摘要、文档链接、示例链接等信息 - 输出一个整洁的 XML 文档,直接喂给 Claude、GPT 等模型作为背景知识 接下来完整介绍:CLI 如何使用、Python API 如何调用、核心解析原理(附 20 行实现),以及适合在哪些场景落地。
### 一、什么是 llms.txt 简单来说,它是一种用 Markdown 描述项目的方式——把文档、示例、知识链接按照固定结构组织起来。 下面是一个典型示例: ```ja vascript # FastHTML > FastHTML is a python library which... When writing FastHTML apps remember to: - Thing to remember ## Docs - [Surreal](https://host/README.md): Tiny jQuery alternative - [FastHTML quick start](https://host/quickstart.html.md) ## Examples - [Todo app](https://host/adv_app.py) ## Optional - [Starlette docs](https://host/starlette-sml.md) ``` 核心区块只有四个: | 区块 | 含义 | |------|------| | Title | 项目名称 | | Summary | 项目简介(`>` 引用的文字) | | Info | 额外说明(标题和摘要之后、第一个 `##` 之前的内容) | | Sections | 文档、示例、可选等分类链接,每类下放一个列表 |
### 二、安装 llms-txt ```ja vascript pip install llms-txt ``` 安装完成后,命令行就会多出 `llms_txt2ctx` 命令。 ```ja vascript llms_txt2ctx ```
### 三、CLI 使用教程 查看帮助: ```ja vascript llms_txt2ctx -h ``` 将 `llms.txt` 转换为 XML 上下文(默认不包含 Optional 区块): ```ja vascript llms_txt2ctx llms.txt > llms.md ``` 如果需要包含 Optional 区块: ```ja vascript llms_txt2ctx llms.txt --optional True > llms.md ``` 生成的内容可以直接交给 Claude 或 GPT,无需额外处理。
### 四、Python API 使用 除了命令行,它还提供 Python 模块,适合在项目中实现自动化。 #### 导入模块 ```ja vascript from llms_txt import * from pathlib import Path ``` 读取 `llms.txt`: ```ja vascript samp = Path('llms-sample.txt').read_text() ```
#### 1️⃣ 解析 llms.txt ```ja vascript parsed = parse_llms_file(samp) ``` 解析后,得到的 `parsed` 是一个命名元组,包含四个字段: ```ja vascript list(parsed) # ['title', 'summary', 'info', 'sections'] ``` 查看标题和摘要: ```ja vascript parsed.title, parsed.summary # ('FastHTML', 'FastHTML is a python library...') ``` 查看所有 section 名称: ```ja vascript list(parsed.sections) # ['Docs', 'Examples', 'Optional'] ``` 查看某条链接的具体内容: ```ja vascript parsed.sections.Optional[0] # {"desc": "A subset of the Starlette documentation useful...", # "title": "Starlette full documentation", # "url": "https://..."} ```
#### 2️⃣ 生成 LLM XML 上下文 最关键的一步——把解析结果转成 XML 文档: ```ja vascript ctx = create_ctx(samp) print(ctx[:300]) ``` 输出的内容类似: ```ja vascript Remember: - Use serve() for running uvicorn... ``` 这一步就是 CLI 背后实际执行的逻辑。
### 五、核心实现原理(重点) 官方给出了一个**无依赖、20 行的解析器**,非常值得学习。 #### 完整解析器 ```ja vascript from pathlib import Path import re, itertools def chunked(it, chunk_sz): it = iter(it) return iter(lambda: list(itertools.islice(it, chunk_sz)), []) def parse_llms_txt(txt): "Parse llms.txt file contents in `txt` to a `dict`" def _p(links): link_pat = r'- \[(?P[^\]]+)\]\((?P<url>[^)]+)\)(?::\s*(?P<desc>.*))?' return [re.search(link_pat, l).groupdict() for l in re.split(r'\n', links.strip()) if l.strip()] start, *rest = re.split(r'^##\s*(.*?$)', txt, flags=re.MULTILINE) sects = {k: _p(v) for k,v in dict(chunked(rest, 2)).items()} pat = r'^#\s*(?P<title>.+?$)\s*(?:^>\s*(?P<summary>.+?$)\s*$)?\s*(?P<info>.*)' d = re.search(pat, start.strip(), (re.MULTILINE|re.DOTALL)).groupdict() d['sections'] = sects return d ``` ##### 关键技术点 | 技术 | 用途 | |------|------| | 正则分块解析 | 按 `##` 切分 Markdown 区块 | | `groupdict()` | 直接生成结构化字典 | | `itertools.islice` | 两两分组 section 名和链接列表 | | 无第三方依赖 | 轻量级,可嵌入任何 Python 项目 | 这是一个非常典型的**结构化文本解析器**——用正则拆结构,用迭代器分块,最后用命名分组提取字段。整段代码没有外部依赖,复制出去即可直接使用。 <hr/> ### 六、适用场景 这个工具在以下几个场景中尤其顺手: #### AI Agent 项目 自动将项目文档整理成 Claude / GPT 可理解的上下文,省去手工拼接 Prompt 的麻烦。 #### RAG 系统 把知识库统一转为 XML 格式,方便批量更新和索引。 #### 开源项目 为项目提供一个“AI Readme”,告诉模型从哪读文档、看哪些示例,大幅提升代码理解效率。 <hr/> ### 七、总结 `llms-txt` 堪称 **LLM 时代的 README 生成器**。它的核心价值: - 把 Markdown 文档 → LLM 可读的 XML - 提供 CLI 和 Python API 两种使用方式 - 可嵌入 AI Agent、RAG、自动文档系统 - 核心实现极为轻量(20 行即可实现) 如果你的工作涉及 AI 相关项目,这个工具值得加入你的工具链。</div> <div class="article-source">来源:https://cloud.tencent.com.cn/developer/article/2690162</div> <div class="article-tags"> <a href="/search/?q=Python" title="Python">Python</a> </div> <div class="article-switch"> <a class="article-switch__item" href="https://m.youleyou.com/wenzhang/3039512.html" title="Trae AI编程模型选择指南与实战教程"><span>上一篇</span><strong>Trae AI编程模型选择指南与实战教程</strong></a> <a class="article-switch__item" href="https://m.youleyou.com/wenzhang/3039514.html" title="TensorFlow模型部署全流程完整解析"><span>下一篇</span><strong>TensorFlow模型部署全流程完整解析</strong></a> </div> <div class="article-disclaimer">本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。</div> </section> <section class="section"> <div class="section-head"><div><h3>相关推荐</h3><p>补充同频道和同主题内容,方便继续浏览更多相关内容。</p></div></div> <div class="related-links"> <a href="https://m.youleyou.com/wenzhang/3079848.html" title="Amazon Q Developer 环境配置与 Python 虚拟环境安装教程及排查清单">Amazon Q Developer 环境配置与 Python 虚拟环境安装教程及排查清单</a> <a href="https://m.youleyou.com/wenzhang/3069176.html" title="Python应用简介:AI数据分析进阶教程">Python应用简介:AI数据分析进阶教程</a> <a href="https://m.youleyou.com/wenzhang/3069175.html" title="聊天机器人专家推荐:AI机器学习深度学习入门9大视频">聊天机器人专家推荐:AI机器学习深度学习入门9大视频</a> <a href="https://m.youleyou.com/wenzhang/3069174.html" title="Python决策树剪枝AI数据分析进阶教程">Python决策树剪枝AI数据分析进阶教程</a> <a href="https://m.youleyou.com/wenzhang/3069172.html" title="Seaborn样式与调色板的使用详解:Python AI数据分析进阶教程">Seaborn样式与调色板的使用详解:Python AI数据分析进阶教程</a> <a href="https://m.youleyou.com/wenzhang/3069171.html" title="AI大模型应用BERT实战教程从零入门与进阶">AI大模型应用BERT实战教程从零入门与进阶</a> <a href="https://m.youleyou.com/wenzhang/3069170.html" title="Python模块与包导入使用AI数据分析进阶教程">Python模块与包导入使用AI数据分析进阶教程</a> <a href="https://m.youleyou.com/wenzhang/3069167.html" title="Python字典操作核心技巧实战教程AI数据分析进阶">Python字典操作核心技巧实战教程AI数据分析进阶</a> </div> </section> <section class="section"> <div class="section-head"><div><h3>同类最新</h3><p>继续查看同栏目最近更新的文章。</p></div><a href="/wzlist/aitutorials" title="更多">更多</a></div> <div class="feed"> <a class="feed-card" href="https://m.youleyou.com/wenzhang/3084806.html" title="CapCut AI Docker 一键部署:镜像拉取、端口映射与数据目录配置教程"> <img class="feed-card__thumb" src="https://static.youleyou.com//uploadfile/2026/0630/36968e0bc18ae342b675ecc24e18e829.webp" alt="CapCut AI Docker 一键部署:镜像拉取、端口映射与数据目录配置教程" /> <div class="feed-card__body"><span class="feed-card__meta">AI教程 · 2026-06-30</span><h4>CapCut AI Docker 一键部署:镜像拉取、端口映射与数据目录配置教程</h4><p>CapCutAI容器化部署需先确认镜像来源与授权范围,再完成环境准备、镜像拉取、端口映射、数据目录挂载和启动验证,适合本地试用、团队内网演示与轻量化AI剪辑服务管理。</p></div> </a> <a class="feed-card" href="https://m.youleyou.com/wenzhang/3084805.html" title="CapCut AI Windows本地安装配置2026最新版含下载与环境要求"> <img class="feed-card__thumb" src="https://static.youleyou.com//uploadfile/2026/0630/ca90c2807f1e4a9a63dfc76d828bcee5.webp" alt="CapCut AI Windows本地安装配置2026最新版含下载与环境要求" /> <div class="feed-card__body"><span class="feed-card__meta">AI教程 · 2026-06-30</span><h4>CapCut AI Windows本地安装配置2026最新版含下载与环境要求</h4><p>CapCutAI与剪映AI在Windows端适合短视频、口播、课程和营销素材剪辑,安装前需确认系统、显卡、存储与网络条件,优先选择官方渠道下载,并完成账号、素材目录、硬件加速和导出参数配置。</p></div> </a> <a class="feed-card" href="https://m.youleyou.com/wenzhang/3084804.html" title="Veo新手保姆级安装教程:从下载到首次运行"> <img class="feed-card__thumb" src="https://static.youleyou.com//uploadfile/2026/0630/4412fd2e6c8fe71c4950920b682135f1.webp" alt="Veo新手保姆级安装教程:从下载到首次运行" /> <div class="feed-card__body"><span class="feed-card__meta">AI教程 · 2026-06-30</span><h4>Veo新手保姆级安装教程:从下载到首次运行</h4><p>Veo适合用文字生成短视频,新手应先确认官方入口、准备账号与设备环境,再按网页或应用方式完成启用。首次运行重点在提示词、参数、素材合规与结果保存,避免使用非官方安装包。</p></div> </a> <a class="feed-card" href="https://m.youleyou.com/wenzhang/3084803.html" title="Veo本地模型运行下载路径设置与性能优化指南"> <img class="feed-card__thumb" src="https://static.youleyou.com//uploadfile/2026/0630/df4e2467f4e09864d3e05bdc489de08a.webp" alt="Veo本地模型运行下载路径设置与性能优化指南" /> <div class="feed-card__body"><span class="feed-card__meta">AI教程 · 2026-06-30</span><h4>Veo本地模型运行下载路径设置与性能优化指南</h4><p>Veo本地模型部署需先确认模型来源与硬件条件,再完成下载校验、目录规划、路径配置和推理参数优化。重点关注显存占用、依赖版本、缓存位置、授权范围与常见报错处理。</p></div> </a> <a class="feed-card" href="https://m.youleyou.com/wenzhang/3084802.html" title="Veo安装失败解决指南:常见报错与日志排查及升级回滚方案"> <img class="feed-card__thumb" src="https://static.youleyou.com//uploadfile/2026/0630/99d7dfb9ab9bf279e1887d65604292ca.webp" alt="Veo安装失败解决指南:常见报错与日志排查及升级回滚方案" /> <div class="feed-card__body"><span class="feed-card__meta">AI教程 · 2026-06-30</span><h4>Veo安装失败解决指南:常见报错与日志排查及升级回滚方案</h4><p>Veo安装失败通常与系统环境、依赖版本、网络源、权限和缓存有关。排查时应先确认版本要求,再查看安装日志,按报错类型处理,并提前备份项目,确保升级与回滚可控。</p></div> </a> </div> </section> </main> <footer class="footer"> <div class="footer__card"> <strong>游乐游手机版</strong> <span>提供科技资讯、软件教程、专题内容、热词解释和热点整理等移动端内容入口。</span> <div class="footer__links"> <a href="/">首页</a> <a href="/wzlist/keji">科技资讯</a> <a href="/wzlist/terms/">AI热词</a> <a href="/wzlist/ainews">AI热点</a> </div> <div class="footer__meta"> <p>本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。</p> <p>联系邮箱:youleyoucom@outlook.com</p> </div> </div> </footer> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?c32ac38c19e064eb1c81c2a84384de83"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> </div> </body> </html>