akcio  by zilliztech

RAG demo using LLMs and vector DBs for knowledge-enhanced chatbots

Created 2 years ago
259 stars

Top 97.9% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

Akcio provides a framework for building Retrieval Augmented Generation (RAG) chatbots, enhancing LLM responses with custom knowledge bases. It targets developers and researchers looking to create more accurate and context-aware conversational AI, offering a flexible CVP (ChatGPT + Vector DB + Prompt-as-code) stack.

How It Works

Akcio implements the CVP stack by first retrieving relevant information from a knowledge base via semantic search or keyword matching. This retrieved context, along with the user's query, is then fed into a Large Language Model (LLM) to generate a more informed and tailored response. This approach mitigates LLM hallucinations and improves response quality by grounding them in specific data.

Quick Start & Requirements

  • Install via pip install -r requirements.txt.
  • Requires Python 3.x.
  • Supports various LLMs (OpenAI, Llama-2, Dolly, Ernie, etc.) and vector stores (Milvus, Zilliz Cloud).
  • Configuration is managed via config.py or environment variables.
  • Start service with python main.py --towhee or python main.py --langchain.
  • Documentation: https://github.com/zilliztech/akcio/blob/main/docs/README.md

Highlighted Details

  • Offers two primary integration platforms: Towhee (for simplified pipeline-based development) and LangChain (for agent-based, more complex orchestration).
  • Extensive support for diverse LLMs, embedding models, vector stores, scalar stores (Elasticsearch), and memory stores (SQLAlchemy compatible).
  • Provides both offline data loading tools and an online API endpoint (/project/add) for data ingestion.
  • Includes a FastAPI backend with Swagger UI for API interaction and a Gradio demo option.

Maintenance & Community

  • Project by Zilliz Tech.
  • Community contact and roadmap information are available via links in the README.

Licensing & Compatibility

  • Licensed under the Server Side Public License (SSPL) v1.
  • SSPL v1 has specific requirements regarding offering the software as a service, which may impact commercial use and closed-source linking.

Limitations & Caveats

The online data loading method is not recommended for large datasets. The SSPL v1 license may impose restrictions on certain commercial deployment scenarios.

Health Check
Last Commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
0 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.