A lightweight AI assistant service with a Gradio UI, LangGraph workflow orchestration, and RAG retrieval (Chroma via LlamaIndex).
Local development can run with Ollama, while production uses OpenAI API.
✅ Current: Vector RAG (LlamaIndex → Chroma)
🔜 Optional: KG-augmented RAG / GraphRAG (Graph Retriever → Neo4j)
User (Browser)
│
▼
┌───────────────────────────────┐
│ Gradio UI │
│ - Question input │
│ - Answer + Sources output │
└───────────────┬───────────────┘
│
▼
┌───────────────────────────────┐
│ LangGraph │
│ Workflow Orchestration │
│ - State management │
│ - Retry / branching logic │
└───────────────┬───────────────┘
│
▼
┌─────────────────────────────────────────────────────┐
│ Retrieval Layer │
│ │
│ (Current) Vector RAG │
│ LlamaIndex Retriever ─────▶ Chroma (Vector DB) │
│ │
│ (Future, Optional) KG-augmented RAG │
│ Graph Retriever ─────────▶ Neo4j (Knowledge Graph) │
└───────────────┬─────────────────────────────────────┘
│
▼
┌───────────────────────────────┐
│ LLM Layer │
│ Prompting + Invocation │
│ │
│ - Local Dev: Ollama │
│ - Production: OpenAI API │
└───────────────┬───────────────┘
│
▼
Answer + Citations