Recipes
Base de Conhecimento RAG
Construa um vector store a partir de um site de documentação usando batch distill
Transforme qualquer site de documentação em uma base de conhecimento RAG pesquisável. Envie URLs em lote, faça polling até concluir (ou use Webhooks), depois indexe o Markdown resultante no seu vector store.
Fluxo
- Descubra URLs para ingerir (sitemap, crawl ou lista curada)
- Envie todas em uma única tarefa
/batch/distill - Aguarde a conclusão (polling ou webhook)
- Faça embedding do
markdownde cada resultado no seu vector store
Implementação
import httpx, time
API = "https://openapi.thunderbit.com/openapi/v1"
H = {"Authorization": "Bearer YOUR_API_KEY"}
urls = [f"https://docs.example.com/page-{i}" for i in range(50)]
job = httpx.post(f"{API}/batch/distill",
headers=H,
json={"urls": urls, "include": ["metadata"]}).json()
batch_id = job["data"]["id"]
while True:
status = httpx.get(f"{API}/batch/distill/{batch_id}", headers=H).json()["data"]
if status["status"] in ("COMPLETED", "FAILED", "CANCELLED"):
break
time.sleep(10)
for r in status["results"]:
if r["status"] == "SUCCEEDED":
embed_and_store(r["url"], r["markdown"])Dicas
- Use
include: ["metadata"]para que cada resultado traga title / description nos cabeçalhos dos chunks - Para mais de 100 URLs, prefira Webhooks ao polling — veja Webhooks
- Reexecutar nas mesmas URLs é tranquilo; ignore o cache com
forceRefresh: truese o conteúdo mudar com frequência
Relacionados
Esta receita está sendo expandida com integração de vector stores (Pinecone / Weaviate / pgvector) — volte em breve.