— AI / RAG Solutions
DocBird / MCP Doc Reader
En RAG-assistent som svarar på frågor om open source-bibliotek, förankrad i deras officiella dokumentation.
PydanticAI OpenAI API LanceDB Embeddings FastMCP DuckDB Python
~ när Feb 2026 – Mar 2026
~ status Pausad
~ team i team
~ typ Skolprojekt
En AI-driven sökmotor för dokumentation som läser in dokumentation från flera open source-projekt, delar upp och bäddar in den i en vektordatabas och låter användare ställa frågor på naturligt språk via ett strömmande chattgränssnitt. Byggt som ett skolprojekt, tillsammans med Andreas och Ludvig.
RAG-pipeline
- Inläsning hämtar dokumentation från 8+ källor (Pydantic AI, FastMCP, LanceDB m.fl.), delar upp efter markdown-rubriker med min/max tokenstorlek per chunk, bäddar in via OpenAI
text-embedding-3-smalloch laddar in i LanceDB via dlt - Sökning exponeras som ett MCP-verktyg (
find_information) över HTTP - API-agenten använder det via FastMCPToolset, vilket tydligt skiljer sökning från orkestrering - Generering via
gpt-4o-minimed de senaste N meddelandena som konversationskontext
Arkitektur
- 4 Python-mikrotjänster (API, inläsning, servering, inspektör) + React-frontend, var och en containeriserad separat via Docker Compose
- Strömmande chatt via SSE med stöd för avbrott och redigera-och-skicka-igen
- Konversationspersistens i DuckDB med fullständig CRUD
- Observerbarhet via Logfire + OpenTelemetry
Driftsättning
- Azure Container Apps via Bicep IaC
- GitHub Actions CI/CD med OIDC-federerad identitet (inga långlivade autentiseringsuppgifter för Azure)
- Managed identity för åtkomst till Azure Container Registry
Om diagrammet
Varje axel är en funktionell pelare; det orange visar var mitt fokus låg, det lila hur stor del av arbetet som var AI-förstärkt. Det AI-lagret är där verktyg snabbade upp implementationen - arkitektur, kodgranskning och kvalitetsnivån är mina egna. Jag använder AI som precisionsverktyg med strikta konventioner, inte autopilot.