How it works

A user submits a question through a webhook. An AI agent (Google Gemini) searches a vector database built from a PDF, using Supabase with pgvector embeddings. If it finds a relevant answer with enough confidence, it replies directly and saves the interaction to Airtable.

If it can’t answer, it opens a Zendesk ticket and notifies the team on Slack. No question falls through the cracks.

Diagram of the chatbot workflow: question, AI agent, knowledge base, then either an answer logged in Airtable or a Zendesk ticket with a Slack alert.
The workflow, simplified. The path on the right is the fallback to a human.

Why it matters

The system answers from one specific document instead of general knowledge. That makes it useful for product support, FAQ automation or onboarding.

Building it taught me how retrieval-augmented generation (RAG) works in practice, and how to design fallback logic that keeps a human in the loop when the AI isn’t sure.