Back to Projects

      Lead Engineer

      Electric Castle AI Buddy

      A fully working knowledge base and conversational assistant for Electric Castle, bringing together festival information, chat in English, Romanian, and Hungarian, and organizer tools for keeping answers accurate and up to date.

      PythonFastAPINext.jsReactPostgreSQLpgvectorRAGAI Agents

      Problem

      Festival information is spread across websites, documents, schedules, and organizer updates. Attendees need quick answers about transport, tickets, camping, and access, while organizers need a way to correct outdated information and identify questions the knowledge base cannot yet answer.

      Solution

      Built a complete workflow from source ingestion to attendee chat: crawl websites and Google Drive documents, extract and curate festival knowledge, and make it available through a conversational interface. Organizers can manage sources, review topic coverage, and publish official corrections. The assistant combines festival knowledge with lineup and weather tools, retains conversation context, and reports missing information for follow-up.

      Architecture & Approach

      Next.js and React applications serve the participant chat and organizer dashboard, backed by Python and FastAPI services. PostgreSQL stores conversations, source documents, curated knowledge, and lineup data, with pgvector supporting hybrid semantic and keyword retrieval. The chat supports both a retrieval-based agent and a full-knowledge-base agent designed for provider-side prompt caching, with tool calls for changing information such as schedules and weather.

      Key Tradeoffs

      • Hybrid retrieval keeps context focused, while loading the curated knowledge base into the prompt improves coverage at the cost of a larger context
      • Automated ingestion reduces manual upkeep, but conflicting sources still need curation and organizer overrides
      • Keeping lineup and weather behind tools adds dependencies but lets frequently changing information stay separate from curated festival guidance

      What I Learned

      • Knowledge quality depends on source freshness, conflict resolution, and editorial controls as much as the model itself
      • Multilingual festival chat needs evaluation of follow-up questions, local terminology, and missing-information behavior
      • Conversation traces and knowledge-gap reporting make unanswered questions actionable for organizers