首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Python解析 llms.txt 的教程:一键生成LLM上下文XML

Python解析 llms.txt 的教程:一键生成LLM上下文XML

作者头像
代码简单说
发布2026-06-16 14:02:57
发布2026-06-16 14:02:57
840
举报
文章被收录于专栏:代码简单说代码简单说

Python解析 llms.txt 的教程:一键生成LLM上下文XML

关键词:Python教程、LLM上下文生成、llms.txt解析、AI上下文工程、Claude context、Python CLI工具、Prompt工程

在这里插入图片描述
在这里插入图片描述

前言

最近在研究 LLM上下文工程(Context Engineering) 时,发现一个非常实用的小工具:llms-txt。 它的作用非常明确:把 llms.txt 文件转换成适合大模型使用的 XML 上下文文档

这类工具在做 AI Agent、RAG、Claude 项目、Prompt工程 时非常实用,可以把项目文档自动整理成模型可理解的结构化上下文。

本文将完整介绍:

  • llms.txt 是什么
  • 如何使用 CLI
  • 如何使用 Python API
  • 原理解析(含20行实现的解析器)

一、什么是 llms.txt

一句话理解:

llms.txt 是专门给大模型看的 README

它使用 Markdown 描述项目,并把 文档、示例、知识链接 按结构组织。

示例:

代码语言:javascript
复制
# 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

Docs / Examples / Optional


二、安装 llms-txt

代码语言:javascript
复制
pip install llms-txt

安装完成后会得到 CLI 命令:

代码语言:javascript
复制
llms_txt2ctx

三、CLI 使用教程

查看帮助

代码语言:javascript
复制
llms_txt2ctx -h

转换 llms.txt 为 XML 上下文

代码语言:javascript
复制
llms_txt2ctx llms.txt > llms.md

如果需要包含 Optional 区块:

代码语言:javascript
复制
llms_txt2ctx llms.txt --optional True > llms.md

生成的内容就是 可直接喂给 Claude / GPT 的上下文文档


四、Python API 使用

除了 CLI,它还提供 Python 模块,适合在项目中自动化生成上下文。

导入模块

代码语言:javascript
复制
from llms_txt import *
from pathlib import Path

读取 llms.txt:

代码语言:javascript
复制
samp = Path('llms-sample.txt').read_text()

1️⃣ 解析 llms.txt

代码语言:javascript
复制
parsed = parse_llms_file(samp)

解析后得到结构:

代码语言:javascript
复制
list(parsed)

输出:

代码语言:javascript
复制
['title', 'summary', 'info', 'sections']

查看标题和摘要:

代码语言:javascript
复制
parsed.title, parsed.summary

输出:

代码语言:javascript
复制
('FastHTML', 'FastHTML is a python library...')

查看所有 section:

代码语言:javascript
复制
list(parsed.sections)

输出:

代码语言:javascript
复制
['Docs', 'Examples', 'Optional']

查看某条链接:

代码语言:javascript
复制
parsed.sections.Optional[0]

返回结构:

代码语言:javascript
复制
{
  "desc": "A subset of the Starlette documentation useful...",
  "title": "Starlette full documentation",
  "url": "https://..."
}

2️⃣ 生成 LLM XML 上下文

最关键一步:

代码语言:javascript
复制
ctx = create_ctx(samp)
print(ctx[:300])

生成结果类似:

代码语言:javascript
复制
<project title="FastHTML" summary="...">
Remember:
- Use serve() for running uvicorn
...

这一步就是 CLI 背后的核心逻辑


五、核心实现原理(重点)

官方给了一个 无依赖 20 行解析器,非常值得学习。

完整解析器

代码语言:javascript
复制
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 = '-\s*\[(?P<title>[^\]]+)\]\((?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(fr'^##\s*(.*?$)', txt, flags=re.MULTILINE)
    sects = {k: _p(v) for k,v in dict(chunked(rest, 2)).items()}
    pat = '^#\s*(?P<title>.+?$)\n+(?:^>\s*(?P<summary>.+?$)$)?\n+(?P<info>.*)'
    d = re.search(pat, start.strip(), (re.MULTILINE|re.DOTALL)).groupdict()
    d['sections'] = sects
    return d
关键技术点

技术

用途

正则分块解析

拆分 Markdown 区块

groupdict()

直接生成结构化字典

itertools.islice

两两分组 section

无第三方依赖

轻量可嵌入

这是一个非常典型的 结构化文本解析器


六、适用场景

这个工具非常适合:

AI Agent 项目
  • 自动整理项目文档
  • 提供给 Claude / GPT 作为上下文
RAG 系统
  • 把知识库转为统一 XML
  • 自动更新上下文
开源项目
  • 提供 “AI Readme”
  • 提升 AI 可读性

七、总结

llms-txt = LLM时代的 README 生成器

核心价值:

  • 将 Markdown 文档 → 转换为 LLM可读XML
  • 提供 CLI + Python API
  • 可嵌入 AI Agent / RAG / 自动文档系统
  • 实现极其轻量(甚至20行即可)

如果正在做 AI 项目,这个工具值得加入工具链。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2026-06-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python解析 llms.txt 的教程:一键生成LLM上下文XML
    • 前言
  • 一、什么是 llms.txt
  • 二、安装 llms-txt
  • 三、CLI 使用教程
    • 查看帮助
    • 转换 llms.txt 为 XML 上下文
  • 四、Python API 使用
    • 导入模块
    • 1️⃣ 解析 llms.txt
    • 2️⃣ 生成 LLM XML 上下文
  • 五、核心实现原理(重点)
    • 完整解析器
      • 关键技术点
  • 六、适用场景
    • AI Agent 项目
    • RAG 系统
    • 开源项目
  • 七、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档