Recipes
Docs para llm.txt
Converta qualquer site de documentação em um único arquivo Markdown pronto para LLM
Destile um site inteiro de documentação em um único llm.txt que você pode colar em qualquer contexto de LLM, pipeline RAG ou modelo local. Útil para bibliotecas desconhecidas, wikis internos e documentação de produto.
Fluxo
- Aplique Distill na página índice com
include: ["links"]para descobrir todas as URLs vinculadas - Filtre a lista de links por padrão de URL (ex.:
/docs/,/guide/) - Envie as URLs filtradas para
/batch/distill - Concatene o Markdown resultante em um único arquivo
Implementação
import httpx, re
API = "https://openapi.thunderbit.com/openapi/v1"
H = {"Authorization": "Bearer YOUR_API_KEY"}
# 1. Pull the index page + outbound links
index = httpx.post(f"{API}/distill",
headers=H,
json={"url": "https://docs.example.com",
"include": ["links"]}).json()["data"]
# 2. Filter to docs paths
doc_urls = [u for u in index["links"] if re.search(r"/docs/", u)]
# 3. Batch distill
job = httpx.post(f"{API}/batch/distill",
headers=H,
json={"urls": doc_urls}).json()["data"]
# 4. Poll, concatenate
# (poll loop omitted; see RAG Knowledge Base recipe)
with open("llm.txt", "w") as f:
for r in job["results"]:
if r["status"] == "SUCCEEDED":
f.write(f"# {r['url']}\n\n{r['markdown']}\n\n---\n\n")Dicas
- Adicione um limite de tamanho —
llm.txtacima de ~1 MB começa a inflar o orçamento de tokens - Ordene por URL ou por seção para diffs estáveis entre execuções
- Combine com uma tarefa de CI para manter
llm.txtatualizado conforme a documentação fonte muda
Relacionados
- Base de Conhecimento RAG — mesmos dados, vector store em vez de arquivo plano
- Distill vs Extract
Esta receita está sendo expandida com estratégias de chunking e deduplicação — volte em breve.