Update documentation and configuration for Realtime Agent Studio

- Revised mkdocs.yml to reflect the new site name and description, enhancing clarity for users.
- Added a changelog.md to document important changes and updates for the project.
- Introduced a roadmap.md to outline development plans and progress for future releases.
- Expanded index.md with a comprehensive overview of the platform, including core features and installation instructions.
- Enhanced concepts documentation with detailed explanations of assistants, engines, and their configurations.
- Updated configuration documentation to provide clear guidance on environment setup and service configurations.
- Added extra JavaScript for improved user experience in the documentation site.
This commit is contained in:
Xin Wang
2026-03-02 23:35:22 +08:00
parent 80fff09b76
commit 4c05131536
15 changed files with 2529 additions and 236 deletions

View File

@@ -1,83 +1,289 @@
# 配置说明
## 环境变量
本页面介绍 Realtime Agent Studio 各组件的配置方法。
在项目根目录或 `web` 目录下创建 `.env` 文件:
---
## 配置概览
RAS 采用分层配置,各组件独立配置:
```mermaid
flowchart TB
subgraph Config["配置层级"]
ENV[环境变量]
File[配置文件]
DB[数据库配置]
end
subgraph Services["服务组件"]
Web[Web 前端]
API[API 服务]
Engine[Engine 服务]
end
ENV --> Web
ENV --> API
ENV --> Engine
File --> API
File --> Engine
DB --> API
```
---
## Web 前端配置
### 环境变量
`web/` 目录创建 `.env` 文件:
```env
# API 服务地址
# API 服务地址(必填)
VITE_API_URL=http://localhost:8080
# Gemini API Key可选
VITE_GEMINI_API_KEY=your_api_key_here
# Engine WebSocket 地址(可选,默认同 API 服务器
VITE_WS_URL=ws://localhost:8000
# Google Gemini API Key可选用于前端直连
VITE_GEMINI_API_KEY=your_api_key
```
## 变量说明
### 变量说明
| 变量 | 必填 | 说明 | 默认值 |
|------|------|------|--------|
| `VITE_API_URL` | | 后端 API 服务地址 | http://localhost:8080 |
| `VITE_GEMINI_API_KEY` | | Google Gemini API 密钥 | - |
|------|:----:|------|--------|
| `VITE_API_URL` | | 后端 API 服务地址 | - |
| `VITE_WS_URL` | | WebSocket 服务地址 | 从 API URL 推断 |
| `VITE_GEMINI_API_KEY` | ❌ | Gemini API 密钥 | - |
## 后端服务配置
### 多环境配置
后端服务使用独立的配置文件,位于 `api/config/` 目录:
=== "开发环境"
### 数据库配置
```env
# .env.development
VITE_API_URL=http://localhost:8080
VITE_WS_URL=ws://localhost:8000
```
=== "生产环境"
```env
# .env.production
VITE_API_URL=https://api.example.com
VITE_WS_URL=wss://ws.example.com
```
---
## API 服务配置
### 环境变量
```env
# 数据库配置
DATABASE_URL=sqlite:///./data/app.db
# 或 PostgreSQL
# DATABASE_URL=postgresql://user:pass@localhost:5432/ras
# Redis 配置(可选)
REDIS_URL=redis://localhost:6379/0
# 安全配置
SECRET_KEY=your-secret-key-at-least-32-chars
CORS_ORIGINS=http://localhost:3000,https://your-domain.com
# 日志级别
LOG_LEVEL=INFO
# 文件存储路径
UPLOAD_DIR=./uploads
```
### 配置文件
API 服务支持 YAML 配置文件 `api/config/settings.yaml`
```yaml
# 服务配置
server:
host: "0.0.0.0"
port: 8080
workers: 4
# 数据库配置
database:
host: localhost
port: 5432
name: ai_assistant
user: postgres
password: your_password
```
url: "sqlite:///./data/app.db"
pool_size: 5
max_overflow: 10
### Redis 配置
```yaml
# Redis 配置
redis:
host: localhost
port: 6379
db: 0
url: "redis://localhost:6379/0"
# 安全配置
security:
secret_key: "your-secret-key"
token_expire_minutes: 1440
# 日志配置
logging:
level: "INFO"
format: "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
```
---
## Engine 服务配置
Engine 服务配置位于 `engine/config/` 目录:
### 环境变量
### 助手默认配置
```env
# 后端 API 地址
BACKEND_URL=http://localhost:8080
参考 `engine/config/agents/default.yaml`
# WebSocket 服务配置
WS_HOST=0.0.0.0
WS_PORT=8000
# 音频配置
AUDIO_SAMPLE_RATE=16000
AUDIO_CHANNELS=1
# 日志级别
LOG_LEVEL=INFO
```
### 引擎配置
Engine 配置文件 `engine/config/engine.yaml`
```yaml
agent:
name: "默认助手"
language: "zh-CN"
# WebSocket 服务
websocket:
host: "0.0.0.0"
port: 8000
ping_interval: 30
ping_timeout: 10
# 音频处理
audio:
sample_rate: 16000
channels: 1
chunk_size: 640 # 20ms at 16kHz
# VAD 配置
vad:
enabled: true
threshold: 0.5
min_speech_duration: 0.25
min_silence_duration: 0.5
# 引擎默认配置
defaults:
engine_type: "pipeline" # pipeline 或 multimodal
max_response_tokens: 512
temperature: 0.7
max_tokens: 2048
```
## 多环境配置
---
### 开发环境
## Docker 配置
### docker-compose.yml 环境变量
```yaml
version: '3.8'
services:
web:
environment:
- VITE_API_URL=http://api:8080
api:
environment:
- DATABASE_URL=postgresql://postgres:password@db:5432/ras
- REDIS_URL=redis://redis:6379/0
- SECRET_KEY=${SECRET_KEY}
engine:
environment:
- BACKEND_URL=http://api:8080
- LOG_LEVEL=INFO
```
### 使用 .env 文件
在项目根目录创建 `.env`
```env
# .env.development
VITE_API_URL=http://localhost:8080
# Docker Compose 会自动加载
SECRET_KEY=your-production-secret-key
POSTGRES_PASSWORD=secure-db-password
```
### 生产环境
```env
# .env.production
VITE_API_URL=https://api.your-domain.com
```
---
## 配置优先级
1. 命令行参数
配置按以下优先级加载(高优先级覆盖低优先级):
```
1. 命令行参数(最高)
2. 环境变量
3. `.env` 文件
4. 默认值
3. .env 文件
4. 配置文件 (yaml)
5. 代码默认值(最低)
```
---
## 敏感配置管理
!!! danger "安全提醒"
不要将敏感信息提交到代码仓库!
### 推荐做法
1. **使用 .env 文件**,并将其加入 `.gitignore`
2. **使用环境变量**,通过 CI/CD 注入
3. **使用密钥管理服务**,如 AWS Secrets Manager、HashiCorp Vault
### .gitignore 配置
```gitignore
# 环境配置文件
.env
.env.local
.env.*.local
# 敏感数据目录
/secrets/
*.pem
*.key
```
---
## 配置验证
启动服务前验证配置是否正确:
```bash
# 验证 API 服务配置
cd api
python -c "from app.config import settings; print(settings)"
# 验证 Engine 配置
cd engine
python -c "from config import settings; print(settings)"
```
---
## 下一步
- [安装部署](index.md) - 开始安装服务
- [Docker 部署](../deployment/docker.md) - 容器化部署
- [生产环境](../deployment/production.md) - 生产配置指南

View File

@@ -2,54 +2,189 @@
本章节介绍如何安装和配置 Realtime Agent Studio (RAS) 开发环境。
## 概述
---
Realtime Agent Studio (RAS) 由以下组件构成:
## 系统组件
| 组件 | 说明 |
|------|------|
| **Web 前端** | React + TypeScript 构建的管理界面 |
| **API 服务** | Python FastAPI 后端服务 |
| **Engine 服务** | 实时对话引擎WebSocket |
RAS 由三个核心服务组成:
## 安装步骤
```mermaid
flowchart LR
subgraph Services["服务组件"]
Web[Web 前端<br/>React + TypeScript]
API[API 服务<br/>FastAPI]
Engine[Engine 服务<br/>WebSocket]
end
### 1. 克隆项目
subgraph Storage["数据存储"]
DB[(SQLite/PostgreSQL)]
end
Web -->|REST| API
Web -->|WebSocket| Engine
API <--> DB
Engine <--> API
```
| 组件 | 端口 | 说明 |
|------|------|------|
| **Web 前端** | 3000 | React + TypeScript 管理控制台 |
| **API 服务** | 8080 | Python FastAPI 后端 |
| **Engine 服务** | 8000 | 实时对话引擎WebSocket |
---
## 快速安装
### 方式一Docker Compose推荐
最快捷的启动方式,适合快速体验和生产部署。
```bash
git clone https://github.com/your-repo/AI-VideoAssistant.git
# 1. 克隆项目
git clone https://github.com/your-org/AI-VideoAssistant.git
cd AI-VideoAssistant
# 2. 启动服务
docker-compose up -d
# 3. 访问控制台
open http://localhost:3000
```
!!! tip "首次启动"
首次启动需要构建镜像,可能需要几分钟时间。
### 方式二:本地开发
适合需要修改代码的开发者。
#### 1. 克隆项目
```bash
git clone https://github.com/your-org/AI-VideoAssistant.git
cd AI-VideoAssistant
```
### 2. 安装依赖
#### 2. 启动 API 服务
```bash
cd api
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn main:app --host 0.0.0.0 --port 8080 --reload
```
#### 3. 启动 Engine 服务
```bash
cd engine
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python main.py
```
#### 4. 启动 Web 前端
```bash
cd web
npm install
```
### 3. 配置环境变量
创建 `.env` 文件,详见 [配置说明](configuration.md)。
### 4. 启动开发服务器
```bash
npm run dev
```
访问 http://localhost:3000
访问 `http://localhost:3000`
## 构建生产版本
---
```bash
npm run build
## 验证安装
### 检查服务状态
| 服务 | URL | 预期结果 |
|------|-----|---------|
| Web | http://localhost:3000 | 看到登录/控制台页面 |
| API | http://localhost:8080/docs | 看到 Swagger 文档 |
| Engine | http://localhost:8000/health | 返回 `{"status": "ok"}` |
### 测试 WebSocket 连接
```javascript
const ws = new WebSocket('ws://localhost:8000/ws?assistant_id=test');
ws.onopen = () => console.log('Connected!');
ws.onerror = (e) => console.error('Error:', e);
```
构建产物在 `dist` 目录。
---
## 目录结构
```
AI-VideoAssistant/
├── web/ # React 前端
│ ├── src/
│ │ ├── components/ # UI 组件
│ │ ├── pages/ # 页面
│ │ ├── stores/ # Zustand 状态
│ │ └── api/ # API 客户端
│ └── package.json
├── api/ # FastAPI 后端
│ ├── app/
│ │ ├── routers/ # API 路由
│ │ ├── models/ # 数据模型
│ │ └── services/ # 业务逻辑
│ └── requirements.txt
├── engine/ # 实时交互引擎
│ ├── app/
│ │ ├── pipeline/ # 管线引擎
│ │ └── multimodal/ # 多模态引擎
│ └── requirements.txt
├── docker/ # Docker 配置
│ └── docker-compose.yml
└── docs/ # 文档
```
---
## 常见问题
### 端口被占用
```bash
# 查看端口占用
# Linux/Mac
lsof -i :3000
# Windows
netstat -ano | findstr :3000
```
修改对应服务的端口配置后重启。
### Docker 构建失败
```bash
# 清理 Docker 缓存
docker system prune -a
# 重新构建
docker-compose build --no-cache
```
### Python 依赖安装失败
确保使用 Python 3.10+
```bash
python --version # 需要 3.10+
```
---
## 下一步
- [环境要求](requirements.md) - 详细的软件版本要求
- [配置说明](configuration.md) - 环境变量配置指南
- [部署指南](../deployment/index.md) - 生产环境部署
- [快速开始](../quickstart/index.md) - 创建第一个助手
- [Docker 部署](../deployment/docker.md) - 生产环境部署

View File

@@ -1,65 +1,158 @@
# 环境要求
本页面列出运行 Realtime Agent Studio 所需的软件和硬件要求。
---
## 软件依赖
### 必需软件
| 软件 | 版本要求 | 说明 |
| 软件 | 版本要求 | 说明 | 安装命令 |
|------|---------|------|---------|
| **Node.js** | 18.0+ | 前端构建运行 | `nvm install 18` |
| **Python** | 3.10+ | 后端服务 | `pyenv install 3.10` |
| **Docker** | 20.10+ | 容器化部署(可选) | [安装指南](https://docs.docker.com/get-docker/) |
### 可选软件
| 软件 | 版本要求 | 用途 |
|------|---------|------|
| Node.js | 18.0 或更高 | JavaScript 运行时 |
| npm/yarn/pnpm | 最新版本 | 包管理器 |
| Python | 3.10+ | 后端服务运行环境 |
| **Docker Compose** | 2.0+ | 多服务编排 |
| **PostgreSQL** | 14+ | 生产数据库 |
| **Redis** | 6.0+ | 缓存与会话 |
| **Nginx** | 1.20+ | 反向代理 |
### 推荐浏览器
---
| 浏览器 | 版本要求 |
|--------|---------|
| Chrome | 90+ |
| Firefox | 90+ |
| Edge | 90+ |
| Safari | 14+ |
## 版本检查
## 检查环境
运行以下命令验证环境:
运行以下命令检查已安装的软件版本:
=== "Node.js"
```bash
# 检查 Node.js 版本
node --version
```bash
node --version
# v18.0.0 或更高
npm --version
# 8.0.0 或更高
```
# 检查 npm 版本
npm --version
=== "Python"
# 检查 Python 版本
python --version
```
```bash
python --version
# Python 3.10.0 或更高
pip --version
# pip 22.0 或更高
```
## 硬件建议
=== "Docker"
```bash
docker --version
# Docker version 20.10.0 或更高
docker compose version
# Docker Compose version v2.0.0 或更高
```
---
## 浏览器支持
控制台需要现代浏览器支持 WebSocket 和 Web Audio API
| 浏览器 | 最低版本 | 推荐版本 |
|--------|---------|---------|
| Chrome | 90+ | 最新版 |
| Firefox | 90+ | 最新版 |
| Edge | 90+ | 最新版 |
| Safari | 14+ | 最新版 |
!!! warning "IE 不支持"
Internet Explorer 不受支持,请使用现代浏览器。
---
## 硬件要求
### 开发环境
| 资源 | 建议配置 |
|------|---------|
| CPU | 4 核心以上 |
| 内存 | 8GB 以上 |
| 磁盘 | 20GB 可用空间 |
| 资源 | 最低配置 | 推荐配置 |
|------|---------|---------|
| **CPU** | 2 核心 | 4 核心+ |
| **内存** | 4GB | 8GB+ |
| **磁盘** | 10GB | 20GB+ SSD |
| **网络** | 10Mbps | 100Mbps |
### 生产环境
| 资源 | 建议配置 |
|------|---------|
| CPU | 8 核心以上 |
| 内存 | 16GB 以上 |
| 磁盘 | 100GB SSD |
| 网络 | 100Mbps 以上 |
| 资源 | 小规模 (< 100 并发) | 中规模 (< 1000 并发) | 大规模 (> 1000 并发) |
|------|---------------------|---------------------|---------------------|
| **CPU** | 4 核心 | 8 核心 | 16 核心+ |
| **内存** | 8GB | 16GB | 32GB+ |
| **磁盘** | 50GB SSD | 200GB SSD | 500GB+ SSD |
| **网络** | 100Mbps | 1Gbps | 10Gbps |
---
## 网络要求
以下域名需要可访问(用于 API 调用):
### 出站访问
| 服务 | 域名 |
|------|------|
| OpenAI | api.openai.com |
| DeepSeek | api.deepseek.com |
| 阿里云 TTS | nls-gateway.cn-shanghai.aliyuncs.com |
| 火山引擎 | openspeech.bytedance.com |
以下外部服务需要网络可达(根据使用的模型供应商):
| 服务 | 域名 | 端口 | 用途 |
|------|------|------|------|
| **OpenAI** | api.openai.com | 443 | LLM / TTS |
| **Azure OpenAI** | *.openai.azure.com | 443 | LLM / ASR / TTS |
| **阿里云** | *.aliyuncs.com | 443 | DashScope TTS |
| **SiliconFlow** | api.siliconflow.cn | 443 | ASR / TTS |
| **DeepSeek** | api.deepseek.com | 443 | LLM |
### 端口规划
| 服务 | 默认端口 | 可配置 |
|------|---------|--------|
| Web 前端 | 3000 | ✅ |
| API 服务 | 8080 | ✅ |
| Engine 服务 | 8000 | ✅ |
| PostgreSQL | 5432 | ✅ |
| Redis | 6379 | ✅ |
---
## 操作系统
### 支持的系统
| 操作系统 | 版本 | 支持状态 |
|---------|------|---------|
| **Ubuntu** | 20.04 LTS, 22.04 LTS | ✅ 完全支持 |
| **Debian** | 11, 12 | ✅ 完全支持 |
| **CentOS** | 8+ | ✅ 完全支持 |
| **macOS** | 12+ (Monterey) | ✅ 开发支持 |
| **Windows** | 10/11 + WSL2 | ✅ 开发支持 |
### Windows 注意事项
推荐使用 WSL2 进行开发:
```powershell
# 安装 WSL2
wsl --install
# 安装 Ubuntu
wsl --install -d Ubuntu
```
---
## 下一步
- [配置说明](configuration.md) - 环境变量配置
- [安装部署](index.md) - 开始安装
- [Docker 部署](../deployment/docker.md) - 容器化部署