# fastapi+langchain **Repository Path**: luweiquan/fastapi-langchain ## Basic Information - **Project Name**: fastapi+langchain - **Description**: fastapi+langchain+微信小程序 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2025-04-14 - **Last Updated**: 2025-04-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FastChat API FastChat 是一个基于 FastAPI 和 LangChain 构建的智能对话系统,支持与通义千问等大语言模型进行交互。 ## 功能特点 - 基于 FastAPI 构建的 RESTful API - 支持与通义千问大语言模型集成 - 支持对话历史管理 - 自动清理过期对话 - 完善的错误处理和日志记录 - 支持用户会话管理 ## 技术栈 - Python 3.8+ - FastAPI - LangChain - Uvicorn - Redis (可选,用于会话存储) ## 安装步骤 1. 克隆项目 ```bash git clone [项目地址] cd fastchat ``` 2. 创建并激活虚拟环境 ```bash python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows ``` 3. 安装依赖 ```bash pip install -r requirements.txt ``` 4. 配置环境变量 创建 `.env` 文件并配置以下变量: ``` APP_HOST=0.0.0.0 APP_PORT=8000 API_KEY=your_api_key_here ``` ## 项目结构 ``` fastchat/ ├── api/ # API 服务 │ ├── application/ # 应用代码 │ │ ├── apps/ # 应用模块 │ │ │ └── chat/ # 聊天模块 │ │ └── utils/ # 工具函数 │ ├── main.py # 主入口文件 │ └── .env # 环境配置 ├── app/ # 前端应用 └── redis_demo.py # Redis 示例 ``` ## 使用方法 1. 启动服务 ```bash cd api python main.py ``` 2. API 接口 ### 聊天接口 - 路径: `/tongyi` - 方法: POST - 请求体: ```json { "text": "用户输入文本", "id": "用户ID" } ``` - 响应: ```json { "response": "AI回复内容" } ``` ## 开发指南 1. 添加新的路由 在 `application/apps/` 下创建新的模块,并在 `__init__.py` 中注册路由。 2. 添加新的功能 - 在相应的模块目录下创建新的视图文件 - 实现必要的业务逻辑 - 添加适当的错误处理 ## 注意事项 - 请确保正确配置 API 密钥 - 生产环境部署时建议使用 HTTPS - 建议配置适当的日志级别 - 对话历史默认保存 24 小时 ## 贡献指南 1. Fork 项目 2. 创建特性分支 3. 提交更改 4. 推送到分支 5. 创建 Pull Request