# deepseek-ai **Repository Path**: blackfox/deepseek-ai ## Basic Information - **Project Name**: deepseek-ai - **Description**: 实习生的 AI 项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-21 - **Last Updated**: 2025-08-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI对话应用系统 一个基于Spring Boot + Vue.js的AI对话应用,支持用户注册登录、AI对话、打字机效果、Markdown渲染和管理后台。 ## 项目特性 ### 核心功能 - 用户注册/登录系统 - AI对话功能(支持流式响应) - 对话历史管理 - 打字机效果展示 - Markdown实时渲染 - 代码高亮显示 - 管理后台系统 ### 技术特色 - **后端**: Spring Boot 2.7 + MyBatis-Plus + MySQL + JWT - **前端**: Vue.js 3 + Element Plus + Markdown-it + Highlight.js - **流式响应**: 支持SSE(Server-Sent Events)实现打字机效果 - **Markdown**: 实时渲染支持代码块、表格、链接等 - **安全**: JWT认证 + Spring Security + 密码加密 ## 项目结构 ``` ai-chat-system/ ├── src/main/java/com/example/aichat/ │ ├── config/ # 配置类 │ ├── controller/ # 控制器 │ ├── service/ # 服务层 │ ├── mapper/ # 数据访问层 │ ├── entity/ # 实体类 │ ├── dto/ # 数据传输对象 │ └── common/ # 公共工具类 ├── frontend/ # Vue.js前端项目 │ ├── src/ │ │ ├── components/ # 组件 │ │ ├── views/ # 页面 │ │ ├── router/ # 路由 │ │ ├── store/ # Vuex状态管理 │ │ └── utils/ # 工具类 │ └── public/ ├── database.sql # 数据库脚本 └── README.md ``` ## 快速开始 ### 环境要求 - Java 11+ - Node.js 16+ - MySQL 8.0+ - Redis(可选) ### 后端启动 1. 创建数据库并执行SQL脚本: ```bash mysql -u root -p < database.sql ``` 2. 修改配置文件 `src/main/resources/application.yml`: ```yaml spring: datasource: url: jdbc:mysql://localhost:3306/ai_chat_db username: your_username password: your_password ``` 3. 启动Spring Boot应用: ```bash ./mvnw spring-boot:run ``` ### 前端启动 1. 安装依赖: ```bash cd frontend npm install ``` 2. 启动开发服务器: ```bash npm run serve ``` 3. 访问应用: - 用户端:http://localhost:3000 - 管理后台:http://localhost:3000/admin ### 默认账户 - 管理员:username: `admin`, password: `admin123` - 普通用户:需要注册 ## 功能说明 ### 用户功能 1. **注册/登录**: 支持用户注册和JWT认证登录 2. **对话管理**: 创建、查看、删除对话 3. **AI对话**: 发送消息给AI并获得回复 4. **打字机效果**: AI回复支持逐字显示效果 5. **Markdown渲染**: 支持代码块、表格、列表等格式 ### 管理功能 1. **仪表盘**: 显示系统统计数据 2. **用户管理**: 查看、禁用、删除用户 3. **对话管理**: 查看所有用户对话记录 ### 技术实现 #### 打字机效果 - 前端使用定时器逐字显示内容 - 支持暂停、跳过和速度调整 - 与Markdown渲染无缝结合 #### Markdown渲染 - 使用markdown-it库解析Markdown - 集成highlight.js实现代码高亮 - 支持表格、链接、图片等元素 #### 流式响应 - 后端使用SSE推送数据流 - 前端EventSource接收实时数据 - 实现真实的对话体验 ## API接口 ### 用户认证 - `POST /api/auth/login` - 用户登录 - `POST /api/auth/register` - 用户注册 ### 对话管理 - `GET /api/chat/conversations` - 获取对话列表 - `POST /api/chat/conversations` - 创建新对话 - `GET /api/chat/conversations/{id}` - 获取对话详情 - `DELETE /api/chat/conversations/{id}` - 删除对话 ### AI对话 - `POST /api/chat/send` - 发送消息 - `POST /api/chat/stream` - 流式对话(SSE) ### 管理后台 - `POST /api/admin/auth/login` - 管理员登录 - `GET /api/admin/dashboard` - 仪表盘数据 - `GET /api/admin/users` - 用户列表 - `GET /api/admin/conversations` - 对话列表 ## 部署说明 ### 生产环境配置 1. 修改生产环境配置 2. 配置真实的AI API Key 3. 设置安全的JWT密钥 4. 配置HTTPS和域名 ### Docker部署(可选) ```dockerfile # Dockerfile示例 FROM openjdk:11-jre-slim COPY target/ai-chat-system-1.0.0.jar app.jar EXPOSE 8080 ENTRYPOINT ["java", "-jar", "/app.jar"] ``` ## 开发计划 - [ ] 支持更多AI模型 - [ ] 添加文件上传功能 - [ ] 实现对话分享 - [ ] 添加主题切换 - [ ] 移动端适配 ## 注意事项 1. 当前AI服务使用模拟响应,生产环境需要配置真实的AI API 2. 流式响应在某些浏览器中可能需要特殊配置 3. 数据库连接池建议根据实际负载调整 4. 生产环境建议启用Redis缓存 ## 许可证 MIT License