# peking_ai_backend **Repository Path**: cccomego/peking_ai_backend ## Basic Information - **Project Name**: peking_ai_backend - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-21 - **Last Updated**: 2025-05-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FastAPI 后端项目 基于 FastAPI 框架开发的后端服务,提供会话管理和聊天功能。 ## 功能特点 - 基于 FastAPI 的现代 Python Web 框架 - SQLAlchemy ORM 数据库操作 - Alembic 数据库迁移 - 统一的响应格式 - 完整的日志系统 - RESTful API 设计 ## 项目结构 ``` backend/ ├── app/ │ ├── api/ │ │ └── v1/ │ │ ├── endpoints/ │ │ │ ├── chat.py │ │ │ └── conversation.py │ │ └── __init__.py │ ├── core/ │ │ ├── config.py │ │ ├── exceptions.py │ │ └── logger.py │ ├── models/ │ │ ├── chat.py │ │ └── conversation.py │ ├── schemas/ │ │ ├── chat.py │ │ ├── conversation.py │ │ └── response.py │ └── services/ │ ├── chat.py │ └── conversation.py ├── migrations/ │ └── versions/ ├── logs/ ├── alembic.ini ├── main.py └── requirements.txt ``` ## 安装步骤 1. 创建虚拟环境: ```bash python -m venv .venv ``` 2. 激活虚拟环境: ```bash # Windows .venv\Scripts\activate # Linux/Mac source .venv/bin/activate ``` 3. 安装依赖: ```bash pip install -r requirements.txt ``` 4. 初始化数据库: ```bash alembic revision --autogenerate -m "Initial migration" alembic upgrade head ``` 5. 启动服务: ```bash uvicorn main:app --reload --host 0.0.0.0 --port 8000 ``` ## API 文档 启动服务后,可以访问以下地址查看 API 文档: - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc ## 主要 API 端点 ### 会话管理 - `GET /api/v1/conversations/` - 获取会话列表 - `POST /api/v1/conversations/` - 创建新会话 - `GET /api/v1/conversations/{conversation_id}` - 获取会话详情 - `PUT /api/v1/conversations/{conversation_id}` - 更新会话 - `DELETE /api/v1/conversations/{conversation_id}` - 删除会话 ### 聊天消息 - `POST /api/v1/chats/` - 创建聊天消息 - `GET /api/v1/chats/conversation/{conversation_id}` - 获取会话的聊天记录 - `DELETE /api/v1/chats/{chat_id}` - 删除聊天消息 ## 开发指南 ### 数据库迁移 创建新的迁移: ```bash alembic revision --autogenerate -m "migration message" ``` 应用迁移: ```bash alembic upgrade head ``` ### 日志系统 日志文件位于 `logs` 目录: - `info.log`: 记录 INFO 级别的日志 - `error.log`: 记录 ERROR 级别的日志 ## 环境要求 - Python 3.8+ - SQLite 3 - 其他依赖见 requirements.txt ## 注意事项 - 确保 `logs` 目录存在且可写 - 数据库迁移文件不要手动修改 - 遵循统一的响应格式 - 保持日志记录的规范