This initial release introduces a database chatbot that implements both Retrieval-Augmented Generation (RAG) and Table-Augmented Generation (TAG) approaches for natural language interaction with databases.
Key Features:
- Dual query approaches:
- RAG: Leverages vector search over documentation for enhanced context
- TAG: Implements a 3-step workflow (synthesis, execution, generation)
- Support for multiple LLM providers (OpenAI GPT-4 and Anthropic Claude)
- Intent classification system to filter non-database queries
- Streamlit-based web interface with configurable settings
- Full Docker containerization with PostgreSQL databases
- Built-in observability using Langfuse instrumentation
Technical Details:
- Uses LlamaIndex for database interactions
- Implements efficient query pipelines for both RAG and TAG approaches
- Includes support for SQL query validation and safety checks
- Features asynchronous processing for improved performance
- Comprensive evaluation framework
Requirements:
- Docker and Docker Compose for container deployment
- Environment variables for database and API configurations
- OpenAI or Anthropic API keys for LLM functionality
This release establishes the foundation for natural language database interactions while maintaining security and performance considerations.
What's Changed
New Contributors
Full Changelog: https://github.com/garyzava/chat-to-database-chatbot/commits/capstone