# quantum-rag **Repository Path**: MLcore-Engine/quantum-rag ## Basic Information - **Project Name**: quantum-rag - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-07-04 - **Last Updated**: 2025-08-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🤖 Quantum RAG Service 一个基于 LangChain、LangGraph 和 FastAPI 构建的高级检索增强生成 (RAG) 服务。我的使命是为你特定的知识领域(比如量子计算)提供一个聪明、可靠而且反应迅速的问答机器人。 ## ✨ 核心能力 - **能思考 (智能 RAG 图)**: - **精准检索**: 当你提问时,我会迅速从我的知识库 (Weaviate 向量数据库) 中找到最相关的资料。 - **自我纠正**: 我会用我的“大脑”(一个LLM)来判断找到的资料是否真的有用。如果没用,我会果断丢弃,确保答案的准确性。 - **灵活应变**: - 如果找到了相关资料,我会基于这些信息给你一个有理有据的回答。 - 如果没找到,我也不会“卡壳”。我会利用我的通用知识库来回答你,并告诉你我没找到相关的特定文档。 - **即时响应**: 我会一个字一个字地把答案“说”给你听(流式输出),而不是让你等我把话说完。 - **反应快 (高性能 API 服务)**: - **天生异步**: 我的核心是基于 `async` 构建的,所以我可以同时处理很多事情而不会手忙脚乱。 - **专属聊天通道**: 我提供了专门优化的流式 API (`/rag/chat`),让你的应用能轻松地和我对话。 - **学习不间断**: 你可以通过一个 API (`/add_documents/`) 随时给我“喂”新的知识,我会在后台默默学习,不会影响我回答问题。 - **时刻准备着**: 我在启动时就已经把所有需要的“工具”(模型)准备好了,所以随时都能快速响应你的问题。 - **易于相处 (模块化与易配置)**: - **结构清晰**: 我的每个部分(思考、服务、学习)都是独立的模块,所以我的创造者很容易就能理解和改进我。 - **参数开放**: 我所有重要的设置(比如我使用哪个“大脑”、知识库在哪里)都在一个地方 (`src/config.py`),配置起来非常方便。 ## ⚙️ 工作流程 ```mermaid graph TD A[用户问题] --> B(服务器); B --> C{检索}; C --> J[知识库]; C --> D{评估}; D --> E{决策}; E --> F[生成答案]; E --> G[后备回答]; F --> H((最终答案)); G --> H; H --> B; I(文档处理) --> J; ``` ## 🚀 如何工作 ### 1. 准备环境 首先,你需要把我克隆到你的本地。 ```bash git clone cd rag_project ``` 然后,安装所有必需的“零件”。 ```bash pip install -r requirements.txt ``` ### 2. 喂养知识 - **文件夹里的所有知识**: ```bash python scripts/add_documents.py --folder data/ ``` - **文件的知识**: ```bash python scripts/add_documents.py --file data/cloud.pdf ``` ### 3. 启动 ```bash python src/server.py ``` `http://0.0.0.0:8000` ### 4. 聊天 - **API 文档 (Swagger UI)**: 在浏览器里打开 `http://localhost:8000/docs`。 - **内部调试台**: 访问 `http://localhost:8000/rag/playground/`。 - **直接聊天 (推荐)**: 这是和我交流最直接的方式。打开你的终端,然后输入: ```bash curl -N -X POST http://localhost:8000/rag/chat \ -H "Content-Type: application/json" \ -d '{"question": "如何使用 tgqSim 实现量子算法?"}' ```