Python SDK for DVGateway — real-time voice AI integration
Project description
dvgateway
DVGateway Python SDK — AI 음성 서비스를 실시간 전화 통화에 연결합니다.
설치
# 기본 SDK
pip install dvgateway
# AI 어댑터 포함 (Anthropic, OpenAI)
pip install dvgateway[adapters]
빠른 시작
import asyncio
import os
from dvgateway import DVGatewayClient
from dvgateway.adapters.stt import DeepgramAdapter
from dvgateway.adapters.llm import AnthropicAdapter
from dvgateway.adapters.tts import ElevenLabsAdapter
async def main():
gw = DVGatewayClient(
base_url="http://localhost:8080",
auth={"type": "apiKey", "api_key": os.environ["DV_API_KEY"]},
)
await (
gw.pipeline()
.stt(DeepgramAdapter(api_key=os.environ["DEEPGRAM_API_KEY"], language="ko"))
.llm(AnthropicAdapter(api_key=os.environ["ANTHROPIC_API_KEY"], model="claude-sonnet-4-6"))
.tts(ElevenLabsAdapter(api_key=os.environ["ELEVENLABS_API_KEY"]))
.start()
)
asyncio.run(main())
Comfort Noise — AI 처리 중 Dead Air 방지
게이트웨이에서 GW_COMFORT_NOISE_ENABLED=true를 설정하면,
AI 처리 중 무음 구간에 배경 소음이 자동으로 주입됩니다.
파이프라인 빌더 사용 시 자동 동작 (별도 코드 불필요):
# thinking:start/stop 시그널이 자동 전송됩니다
await (
gw.pipeline()
.stt(DeepgramAdapter(api_key="...", language="ko"))
.llm(AnthropicAdapter(api_key="...", model="claude-sonnet-4-6"))
.tts(ElevenLabsAdapter(api_key="..."))
.start()
)
수동 제어:
# WebSocket 시그널 (저레이턴시)
audio_stream = gw.stream_audio(linked_id)
await audio_stream.send_thinking_start() # 배경 소음 시작
# ... AI 처리 ...
await audio_stream.send_thinking_stop() # 배경 소음 중단
# REST API
await gw.start_thinking(linked_id)
await gw.stop_thinking(linked_id)
요구사항
- Python 3.10+
- aiohttp >= 3.9.0
- websockets >= 12.0
라이선스
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dvgateway-1.2.6.tar.gz
(52.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
dvgateway-1.2.6-py3-none-any.whl
(68.9 kB
view details)
File details
Details for the file dvgateway-1.2.6.tar.gz.
File metadata
- Download URL: dvgateway-1.2.6.tar.gz
- Upload date:
- Size: 52.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16a7ceca96375f6be7d1cdc657fbf191c6bb2f75cc6c00eb6515b480ce31b246
|
|
| MD5 |
1ca3a249d1d28c53e729abc1bb7d6da0
|
|
| BLAKE2b-256 |
1feb745fa2dbf9c32f5b2d591dfa0f1be351b5782193b672b6212c1d0937f96d
|
File details
Details for the file dvgateway-1.2.6-py3-none-any.whl.
File metadata
- Download URL: dvgateway-1.2.6-py3-none-any.whl
- Upload date:
- Size: 68.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
976f717dc69fccd8d2dcfdf702ced3821b8d918e965b8a19e62d0bd2ff1a8efb
|
|
| MD5 |
07687ea1a337f7f290209a93489a9459
|
|
| BLAKE2b-256 |
8adf905b0d8e9a7d6d15debb4a1dd57c3465a1ae887d128f88f061830daae6ff
|