# smart_customer_service **Repository Path**: hngcadmin/smart_customer_service ## Basic Information - **Project Name**: smart_customer_service - **Description**: 基于Django和DeepSeek API开发的智能客服系统,支持实时对话、知识库管理和会话历史记录。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-06 - **Last Updated**: 2025-08-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能客服系统 基于Django和DeepSeek API开发的智能客服系统,支持实时对话、知识库管理和会话历史记录。 ## 功能特性 - 🤖 **智能对话**: 集成DeepSeek AI,提供智能回复 - 💬 **实时聊天**: 现代化的聊天界面,支持实时对话 - 📚 **知识库**: 支持自定义知识库,优先匹配本地答案 - 📊 **管理后台**: 完整的Django Admin管理界面 - 🔒 **会话管理**: 支持会话保持和上下文记忆 - 📱 **响应式设计**: 支持移动端和桌面端 ## 技术栈 - **后端**: Django 4.2, Django REST Framework - **前端**: HTML5, CSS3, JavaScript (原生) - **数据库**: MySQL 8.0+ (默认配置) - **AI服务**: DeepSeek API - **其他**: Django CORS Headers, Channels (WebSocket支持) ## 快速开始 ### 1. 环境要求 - Python 3.8+ - MySQL 8.0+ - 确保MySQL服务正在运行 ### 2. 数据库配置 默认MySQL配置: - 主机:127.0.0.1:3306 - 用户名:root - 密码:123456 - 数据库:smart_customer_service 如需修改,请编辑 `smart_customer_service/settings.py` 中的 `DATABASES` 配置。 ### 3. 安装依赖 ```bash pip install -r requirements.txt ``` ### 4. 初始化项目 ```bash # 创建数据库(如果不存在) mysql -h 127.0.0.1 -P 3306 -u root -p123456 -e "CREATE DATABASE IF NOT EXISTS smart_customer_service CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" # 执行数据库迁移 python manage.py migrate # 创建示例数据和管理员账户 python create_sample_data.py ``` ### 5. 配置DeepSeek API 访问管理后台 `http://localhost:8000/admin/`(账号:admin,密码:admin123),在 **AI服务** > **AI配置** 中修改默认配置: - **API密钥**: 您的DeepSeek API Key - **API地址**: https://api.deepseek.com/v1/chat/completions - **模型名称**: deepseek-chat ### 6. 启动服务器 **Windows:** ```bash start.bat ``` **Linux/Mac:** ```bash ./start.sh ``` **手动启动:** ```bash python manage.py runserver ``` 访问 `http://localhost:8000/` 开始使用智能客服系统。 ## 默认账户信息 - **管理后台**: http://localhost:8000/admin/ - **管理员账号**: admin - **管理员密码**: admin123 ## 项目结构 ``` smart_customer_service/ ├── chat/ # 聊天应用 │ ├── models.py # 数据模型 (客户、对话、消息、知识库) │ ├── views.py # 视图和API │ ├── admin.py # 管理后台配置 │ ├── urls.py # URL路由 │ ├── templates/ # HTML模板 │ └── static/ # 静态文件 (CSS, JS) ├── ai_service/ # AI服务应用 │ ├── models.py # AI配置模型 │ ├── deepseek_service.py # DeepSeek服务封装 │ └── admin.py # 管理后台配置 ├── smart_customer_service/ # 项目配置 │ ├── settings.py # Django设置 │ └── urls.py # 主URL配置 ├── requirements.txt # 依赖包列表 └── README.md # 项目说明 ``` ## API接口 ### 聊天接口 **POST** `/api/chat/` ```json { "message": "用户消息", "session_id": "会话ID (可选)" } ``` **响应**: ```json { "response": "AI回复内容", "session_id": "会话ID", "status": "success" } ``` ### 获取聊天历史 **GET** `/api/history/{session_id}/` ### 清除会话 **POST** `/api/clear/` ```json { "session_id": "会话ID" } ``` ## 管理后台功能 访问 `/admin/` 可以管理: - **客户管理**: 查看客户信息和会话 - **对话管理**: 管理对话记录 - **消息管理**: 查看所有消息记录 - **知识库**: 添加和管理常见问题答案 - **AI配置**: 配置DeepSeek API参数 ## 知识库使用 在管理后台的知识库中添加常见问题和答案: 1. **问题**: 用户可能问的问题 2. **答案**: 预设的回答 3. **关键词**: 用逗号分隔的关键词,用于匹配用户问题 4. **分类**: 问题分类,便于管理 系统会优先匹配知识库中的答案,如果没有匹配项才会调用DeepSeek API。 ## 自定义配置 ### DeepSeek参数调整 在AI配置中可以调整: - **max_tokens**: 最大生成令牌数 (默认: 1000) - **temperature**: 回复随机性 (0-1, 默认: 0.7) ### 会话上下文 系统自动保持最近20条对话作为上下文,确保AI能够理解对话历史。 ## 部署说明 ### 生产环境配置 1. 设置 `DEBUG = False` 2. 配置 `ALLOWED_HOSTS` 3. 使用PostgreSQL或MySQL数据库 4. 配置静态文件服务 5. 使用HTTPS ### Docker部署 (可选) ```dockerfile FROM python:3.12 WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"] ``` ## 故障排除 ### 常见问题 1. **API调用失败**: 检查DeepSeek API密钥是否正确配置 2. **数据库错误**: 确保已执行数据库迁移 3. **静态文件加载失败**: 运行 `python manage.py collectstatic` ### 日志查看 Django会在控制台输出详细的错误信息,生产环境建议配置日志文件。 ## 贡献指南 1. Fork 项目 2. 创建功能分支 3. 提交更改 4. 推送到分支 5. 创建 Pull Request ## 许可证 MIT License ## 联系方式 如有问题或建议,请提交 Issue 或联系开发团队。