Ai_GirlFriend/配置总结.md
2026-02-28 09:40:18 +08:00

384 lines
7.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📋 项目配置总结
## ✅ 已完成的配置
### 1. 数据库配置
**数据库信息:**
```
主机: localhost
端口: 3306
数据库名: ai_friend
用户名: root
密码: rootx77
字符集: utf8mb4
表前缀: nf_
```
**数据表状态:** ✅ 已导入30+ 张表)
包含的核心表:
- nf_user (用户)
- nf_lovers (虚拟恋人)
- nf_chat_session (聊天会话)
- nf_chat_message (聊天消息)
- nf_chat_fact (长期记忆)
- nf_outfit_items (服装)
- nf_voice_library (声音库)
- nf_song_library (歌曲库)
- nf_generation_tasks (AI任务)
- nf_friend_relations (好友关系)
- nf_dynamics (动态)
- ... 等
---
### 2. 环境变量配置
#### 根目录 `.env` ✅
```env
# 应用环境
APP_ENV=development
DEBUG=True
# 数据库
DATABASE_URL=mysql+pymysql://root:rootx77@localhost:3306/ai_friend?charset=utf8mb4
# PHP 后台地址
USER_INFO_API=http://127.0.0.1:30100/api/user_basic/get_user_basic
# 阿里云 DashScope API
DASHSCOPE_API_KEY=sk-2473385fd6d54a58a703ce6b92a62074
# 阿里云 OSS
ALIYUN_OSS_ACCESS_KEY_ID=LTAI5tBzjogJDx4JzRYoDyEM
ALIYUN_OSS_ACCESS_KEY_SECRET=43euicRkkzlLjGTYzFYkTupcW7N5w3
ALIYUN_OSS_BUCKET_NAME=hello12312312
ALIYUN_OSS_ENDPOINT=https://oss-cn-hangzhou.aliyuncs.com
```
#### `lover/.env` ✅
```env
DATABASE_URL=mysql+pymysql://root:rootx77@localhost:3306/ai_friend?charset=utf8mb4
USER_INFO_API=http://127.0.0.1:30100/api/user_basic/get_user_basic
```
#### `xunifriend_RaeeC/.env` ✅
```env
app_debug = true
[database]
type = mysql
hostname = localhost
database = ai_friend
username = root
password = rootx77
hostport = 3306
charset = utf8mb4
prefix = nf_
debug = true
```
---
### 3. 服务端口配置
| 服务 | 端口 | 访问地址 |
|------|------|----------|
| PHP 后台 | 30100 | http://127.0.0.1:30100 |
| Python API | 30101 | http://127.0.0.1:30101 |
| API 文档 | 30101 | http://127.0.0.1:30101/docs |
| 管理后台 | 30100 | http://127.0.0.1:30100/admin |
---
## 🔧 待完成的配置
### 1. 安装 PHP ⏳
**推荐版本:** PHP 8.5.3 (VS17 x64 Non Thread Safe)
**下载地址:** https://windows.php.net/download/
**安装步骤:**
1. 下载 Zip 包33.32MB
2. 解压到目录(如 `D:\php-8.5.3\`
3. 复制 `php.ini-development``php.ini`
4. 编辑 `php.ini`,启用扩展:
```ini
extension=curl
extension=fileinfo
extension=gd
extension=mbstring
extension=mysqli
extension=openssl
extension=pdo_mysql
extension=zip
date.timezone = Asia/Shanghai
upload_max_filesize = 100M
post_max_size = 100M
```
5. 修改 `启动项目.bat` 第 6 行:
```batch
set PHP_PATH=D:\php-8.5.3\php.exe
```
---
### 2. 安装 Python 依赖 ⏳
```cmd
pip install -r lover/requirements.txt
```
**如果速度慢,使用国内镜像:**
```cmd
pip install -r lover/requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
```
**依赖包列表:**
- fastapi (Web框架)
- uvicorn (ASGI服务器)
- sqlalchemy (ORM)
- pymysql (MySQL驱动)
- pydantic (数据验证)
- requests (HTTP客户端)
- oss2 (阿里云OSS)
- dashscope (阿里云AI)
- pyyaml (YAML解析)
- imageio-ffmpeg (视频处理)
---
### 3. 安装 PHP 依赖 ⏳
```cmd
cd xunifriend_RaeeC
composer install
```
**如果速度慢,使用国内镜像:**
```cmd
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
composer install
```
---
## 🎯 启动流程
### 完整启动步骤
1. **确保 MySQL 服务运行**
```cmd
net start MySQL80
```
2. **验证数据库连接**
```cmd
mysql -u root -prootx77 -e "USE ai_friend; SHOW TABLES;"
```
3. **安装依赖**(如果还没安装)
```cmd
# Python 依赖
pip install -r lover/requirements.txt
# PHP 依赖
cd xunifriend_RaeeC
composer install
cd ..
```
4. **修改启动脚本**
编辑 `启动项目.bat`,设置正确的 PHP 路径
5. **启动项目**
```cmd
启动项目.bat
```
6. **验证服务**
- PHP: http://127.0.0.1:30100
- Python: http://127.0.0.1:30101/docs
- 健康检查: http://127.0.0.1:30101/health
---
## 🔍 配置验证清单
### 数据库验证
```cmd
mysql -u root -prootx77 -e "SELECT COUNT(*) FROM ai_friend.nf_user;"
```
✅ 应该返回用户数量(不报错)
### Python 环境验证
```cmd
python --version
pip show fastapi uvicorn sqlalchemy pymysql
```
✅ 应该显示版本信息
### PHP 环境验证
```cmd
php -v
php -m | findstr mysqli
```
✅ 应该显示 PHP 版本和 mysqli 扩展
### 端口验证
```cmd
netstat -ano | findstr :30100
netstat -ano | findstr :30101
```
✅ 应该无输出(端口未被占用)
---
## 📊 AI 服务配置
### 阿里云 DashScope
**API Key:** `sk-2473385fd6d54a58a703ce6b92a62074`
**已配置的模型:**
- **对话模型:** qwen-plus
- **图像生成:** wan2.6-t2i (960*1280)
- **视频生成:** wan2.6-i2v-flash (720P, 5秒)
- **语音识别:** paraformer-realtime-v2
- **语音合成:** cosyvoice-v2 (longxiaochun_v2)
- **视觉理解:** qwen3-vl-flash
**控制台地址:** https://dashscope.console.aliyun.com/
---
### 阿里云 OSS
**Bucket 信息:**
- **名称:** hello12312312
- **区域:** 华东1杭州
- **Endpoint:** oss-cn-hangzhou.aliyuncs.com
- **CDN 域名:** hello12312312.oss-cn-hangzhou.aliyuncs.com
**用途:**
- 用户上传的图片
- AI 生成的图片
- TTS 语音文件
- 视频文件
**控制台地址:** https://oss.console.aliyun.com/
---
## 🛠️ 开发工具推荐
### 数据库管理
- **Navicat** (商业)
- **DBeaver** (免费)
- **phpMyAdmin** (Web)
### API 测试
- **Postman**
- **FastAPI Docs** (内置,推荐)
- **Apifox**
### 代码编辑
- **VS Code** (推荐)
- **PyCharm**
- **PhpStorm**
---
## 📝 开发模式说明
当前为开发模式,具有以下特性:
### 1. 认证宽松
- 可使用 `X-User-Id` Header 跳过 Token 验证
- Token 验证失败时自动使用测试用户
### 2. 详细日志
- 显示完整的错误堆栈
- 输出 SQL 查询语句
- 记录 API 调用详情
### 3. 热重载
- Python 代码修改自动生效
- 无需重启服务
### 4. 调试接口
- `/debug/auth` - 查看认证信息
- `/health` - 健康检查
---
## ⚠️ 生产环境注意事项
如果要部署到生产环境,需要修改:
### 1. 环境变量
```env
APP_ENV=production
DEBUG=False
```
### 2. 数据库
- 使用独立的生产数据库
- 配置主从复制
- 定期备份
### 3. 安全配置
- 修改默认密码
- 启用 HTTPS
- 配置防火墙
- 限制 CORS 来源
### 4. 性能优化
- 启用 Redis 缓存
- 配置 CDN
- 使用 Nginx 反向代理
- 配置进程管理器Supervisor
---
## 📞 技术支持
### 相关文档
- `快速启动指南.md` - 快速上手
- `运行指南.md` - 详细教程
- `启动前检查清单.md` - 检查清单
### 在线资源
- FastAPI 文档: https://fastapi.tiangolo.com/
- ThinkPHP 文档: https://www.thinkphp.cn/
- 阿里云 DashScope: https://help.aliyun.com/zh/dashscope/
---
## ✨ 配置完成后的下一步
1. **启动项目**
```cmd
启动项目.bat
```
2. **访问 API 文档**
http://127.0.0.1:30101/docs
3. **测试接口**
在 API 文档中测试各个功能
4. **访问管理后台**
http://127.0.0.1:30100/admin
5. **开始开发**
根据需求修改代码和配置
---
**配置总结完成!祝开发顺利!** 🎉