# vidoe-agent **Repository Path**: zbgit11/vidoe-agent ## Basic Information - **Project Name**: vidoe-agent - **Description**: AI口播视频智能体系统 — IP打造自动化生产线(DeepSeek + Edge TTS + FFmpeg) - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-30 - **Last Updated**: 2026-07-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI Video Agent - 智能口播视频生成系统 ## 功能特性 - 🎭 **IP人设管理** - 数字人形象配置 - ✍️ **智能文案生成** - AI驱动脚本创作 - 🔊 **TTS语音合成** - 多音色情感控制 - 🧑‍💼 **数字人驱动** - 唇形同步渲染 - 🎬 **视频自动剪辑** - 字幕/BGM/特效 - ⚡ **批量生产调度** - 日产百条 - 📤 **多平台发布** - 一键分发 ## 技术栈 ### 后端 - **框架**: FastAPI - **数据库**: PostgreSQL + SQLAlchemy - **缓存**: Redis - **任务队列**: Celery - **AI服务**: DeepSeek + 火山引擎TTS + HeyGen - **视频处理**: FFmpeg ### 前端 - **框架**: React + TypeScript - **构建工具**: Vite - **UI组件**: Ant Design - **状态管理**: Zustand - **数据请求**: React Query + Axios ## 项目结构 ``` video-agent/ ├── backend/ # 后端服务 │ ├── app/ │ │ ├── api/ # API路由 │ │ ├── core/ # 核心配置 │ │ ├── models/ # 数据模型 │ │ ├── services/ # 业务服务 │ │ ├── ai/ # AI能力层 │ │ ├── utils/ # 工具函数 │ │ └── main.py # FastAPI入口 │ ├── tests/ # 测试 │ ├── requirements.txt # Python依赖 │ └── Dockerfile ├── frontend/ # 前端管理后台 │ ├── src/ │ │ ├── components/ # 组件 │ │ ├── pages/ # 页面 │ │ ├── services/ # API服务 │ │ └── App.tsx │ ├── package.json │ └── vite.config.ts ├── nginx/ # Nginx配置 │ ├── nginx.conf # 主配置 │ └── conf.d/ │ └── video-agent.conf # 站点配置 ├── scripts/ # 脚本 │ ├── deploy.sh # 一键部署脚本 │ └── init_db.py # 数据库初始化 ├── docker-compose.yml # Docker编排 └── README.md ``` ## 快速开始 ### 环境要求 - Python 3.9+ - Node.js 18+ - PostgreSQL 16+ - Redis 7+ - FFmpeg (可选,使用Docker则自动安装) ### 使用Docker部署(推荐) ```bash # 克隆项目 cd video-agent # 启动所有服务 docker-compose up -d # 查看日志 docker-compose logs -f # 停止服务 docker-compose down ``` 服务启动后访问: - 前端: http://localhost:3000 - 后端API文档: http://localhost:8000/docs ### 本地开发 #### 后端 ```bash cd backend # 创建虚拟环境 python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate # 安装依赖 pip install -r requirements.txt # 配置环境变量 cp .env.example .env # 编辑 .env 填入你的配置 # 初始化数据库 python scripts/init_db.py # 启动开发服务器 uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 ``` #### 前端 ```bash cd frontend # 安装依赖 npm install # 启动开发服务器 npm run dev ``` ## 配置说明 创建 `backend/.env` 文件: ```env # 应用配置 DEBUG=true APP_NAME=AI Video Agent # 数据库 DATABASE_URL=postgresql://user:pass@localhost:5432/video_agent # Redis REDIS_URL=redis://localhost:6379/0 # AI服务API Keys DEEPSEEK_API_KEY=your_deepseek_api_key VOLCENGINE_TTS_APPID=your_volcengine_appid VOLCENGINE_TTS_ACCESS_KEY=your_volcengine_access_key VOLCENGINE_TTS_SECRET_KEY=your_volcengine_secret_key HEYGEN_API_KEY=your_heygen_api_key # 对象存储(可选) OSS_ENDPOINT=your_oss_endpoint OSS_ACCESS_KEY=your_oss_access_key OSS_SECRET_KEY=your_oss_secret_key OSS_BUCKET=video-agent # 视频处理 FFMPEG_PATH=ffmpeg TEMP_DIR=/tmp/video_agent ``` ## API文档 启动后端服务后,访问以下地址查看API文档: - Swagger UI: http://localhost:8000/docs - ReDoc: http://localhost:8000/redoc ### 主要API端点 - `POST /api/v1/ip-profile` - 创建IP人设 - `GET /api/v1/ip-profile` - 获取IP人设列表 - `POST /api/v1/script/generate` - 生成文案 - `POST /api/v1/tts/synthesize` - 语音合成 - `POST /api/v1/digital-human/render` - 数字人渲染 - `POST /api/v1/video/create` - 创建视频 - `GET /api/v1/task/{task_id}` - 查询任务状态 - `POST /api/v1/publish` - 发布视频 ## 开发指南 ### 数据库迁移 ```bash cd backend alembic init migrations alembic revision --autogenerate -m "Initial migration" alembic upgrade head ``` ### 运行测试 ```bash cd backend pytest ``` ### 代码格式化 ```bash # 后端 cd backend black app/ flake8 app/ # 前端 cd frontend npm run lint ``` ## 部署指南 ### 环境要求 - Docker 20.10+ - Docker Compose 2.0+(或 docker-compose V1) - 推荐配置:4核8G以上服务器 ### 快速部署(推荐) ```bash # 进入项目目录 cd video-agent # 赋予脚本执行权限 chmod +x scripts/deploy.sh # 一键部署 ./scripts/deploy.sh deploy ``` 部署脚本会自动完成以下操作: 1. 检查 Docker 环境 2. 创建默认配置文件(如不存在) 3. 构建 Docker 镜像 4. 启动所有服务并检查健康状态 ### 配置说明 首次部署后,请编辑 `backend/.env` 填入实际配置: ```env # AI服务API Keys DEEPSEEK_API_KEY=your_actual_key VOLCENGINE_TTS_APPID=your_actual_appid VOLCENGINE_TTS_ACCESS_KEY=your_actual_key VOLCENGINE_TTS_SECRET_KEY=your_actual_key HEYGEN_API_KEY=your_actual_key # 对象存储(可选) OSS_ENDPOINT=https://cos.ap-guangzhou.myqcloud.com OSS_ACCESS_KEY=your_access_key OSS_SECRET_KEY=your_secret_key OSS_BUCKET=video-agent ``` ### 常用命令 ```bash # 查看服务状态 ./scripts/deploy.sh status # 查看日志 ./scripts/deploy.sh logs # 所有服务 ./scripts/deploy.sh logs backend # 仅后端 ./scripts/deploy.sh logs celery-worker # 仅任务队列 # 停止服务 ./scripts/deploy.sh stop # 重启服务 ./scripts/deploy.sh restart ``` ### 数据库初始化 ```bash # 在后端容器内执行 docker exec -it video-agent-backend python /scripts/init_db.py # 或本地执行(需安装依赖) cd backend && python ../scripts/init_db.py # 删除所有表(谨慎使用) python scripts/init_db.py --drop ``` ### 访问地址 | 服务 | 地址 | |------|------| | Nginx入口 | http://localhost:80 | | 前端管理后台 | http://localhost:3000 | | 后端API | http://localhost:8000 | | API文档 (Swagger) | http://localhost:8000/docs | | API文档 (ReDoc) | http://localhost:8000/redoc | ### 生产环境 1. 修改 `backend/.env` 中的 `DEBUG=false` 2. 配置生产级数据库密码和Redis密码 3. 使用Gunicorn部署后端(替换uvicorn): ```bash gunicorn app.main:app -w 4 -k uvicorn.workers.UvicornWorker -b 0.0.0.0:8000 ``` 4. 构建前端并部署到Nginx: ```bash cd frontend npm run build # 将 dist/ 目录部署到Web服务器 ``` 5. 配置SSL证书(在 `nginx/conf.d/video-agent.conf` 中添加443配置) ### 服务架构 ``` 用户请求 → Nginx(:80) ├── / → Frontend(:3000) React开发服务器 ├── /api/* → Backend(:8000) FastAPI服务 ├── /docs → Backend(:8000) API文档 └── /static → 静态资源缓存 Backend ──→ PostgreSQL(:5432) 数据持久化 Backend ──→ Redis(:6379) 缓存 & 消息队列 Celery ──→ Redis(:6379) 异步任务消费 ``` ## 许可证 MIT License ## 联系方式 - 作者: AI Video Agent Team - 邮箱: support@video-agent.com --- **Made with ❤️ for AI-powered video creation**