使用说明
🤖 具有更好UI的聊天机器人
一个现代聊天机器人,使用 LangChain 和 主控程序 集成以下工具 网络搜索 和 RAG(检索增强生成).
它的特点是 流线型UI 对于交互,a FastAPI后端 用于编排和强大的内存+持久层。
🚀 核心功能
- 工具调用(Web搜索) –在需要时获取实时信息
- RAG(检索增强生成) –使用内部知识为响应奠定基础
- 基于Redis的临时内存 –快速的内存对话上下文
- 批量持久化到MongoDB –优化了长期存储
- 仪表盘 -显示了基于模型和用户的令牌使用成本消耗
🏗️ 架构概述
flowchart TD
User[User] --> UI[Streamlit UI]
UI --> Backend[FastAPI Backend]
Backend --> Manager[Conversation Manager]
Manager -->|Tool Call| WebSearch[Web Search]
Manager -->|RAG| VectorStore[RAG Vector Store]
Manager -->|Memory| Redis[Redis Temporary Memory]
Manager --> LLM[LLM Response]
LLM --> RedisAppend[Redis Append Message]
RedisAppend -->|Every 5 min| MongoDB[MongoDB Bulk Write]
速率限制
- 通过LangChain应用内存速率限制器来调节传出请求。这种节流机制通过确保请求吞吐量保持在提供者的速率限制内,降低了HTTP 429(太多请求)错误的可能性。
flowchart TD
A[Incoming Requests] --> B[Rate Limiter]
B --> C[FIFO Queue]
C --> D[Execute Request]
D --> E[LLM/API Response]
