56 lines
1.3 KiB
Markdown
56 lines
1.3 KiB
Markdown
# py-active-call-cc
|
||
|
||
Python Active-Call: real-time audio streaming with WebSocket and WebRTC.
|
||
|
||
This repo contains a Python 3.11+ codebase for building low-latency voice
|
||
pipelines (capture, stream, and process audio) using WebRTC and WebSockets.
|
||
It is currently in an early, experimental stage.
|
||
|
||
# Usage
|
||
|
||
启动
|
||
|
||
```
|
||
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000
|
||
```
|
||
|
||
使用 agent profile(推荐)
|
||
|
||
```
|
||
python -m app.main --agent-profile default
|
||
```
|
||
|
||
使用指定 YAML
|
||
|
||
```
|
||
python -m app.main --agent-config config/agents/default.yaml
|
||
```
|
||
|
||
Agent 配置路径优先级
|
||
1. `--agent-config`
|
||
2. `--agent-profile`(映射到 `config/agents/<profile>.yaml`)
|
||
3. `AGENT_CONFIG_PATH`
|
||
4. `AGENT_PROFILE`
|
||
5. `config/agents/default.yaml`(若存在)
|
||
|
||
说明
|
||
- Agent 相关配置是严格模式:YAML 缺少必须项会直接报错,不会回退到 `.env` 或代码默认值。
|
||
- 如果要引用环境变量,请在 YAML 显式写 `${ENV_VAR}`。
|
||
- `siliconflow` 独立 section 已移除;请在 `agent.llm / agent.tts / agent.asr` 内通过 `provider`、`api_key`、`api_url`、`model` 配置。
|
||
|
||
测试
|
||
|
||
```
|
||
python examples/test_websocket.py
|
||
```
|
||
|
||
```
|
||
python mic_client.py
|
||
```
|
||
|
||
## WS Protocol
|
||
|
||
`/ws` uses a strict `v1` JSON control protocol with binary PCM audio frames.
|
||
|
||
See `docs/ws_v1_schema.md`.
|