Ai_GirlFriend/配置总结.md

384 lines
7.2 KiB
Markdown
Raw Permalink Normal View History

2026-02-28 09:40:18 +08:00
# 📋 项目配置总结
## ✅ 已完成的配置
### 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. **开始开发**
根据需求修改代码和配置
---
**配置总结完成!祝开发顺利!** 🎉