python+qwen3-omni-flash-realtime实现实时音视频ai聊天助手千问qwen示例代码
代码语言:python
所属分类:其他
代码描述:python+qwen3-omni-flash-realtime实现实时音视频ai聊天助手千问qwen示例代码
代码标签: python qwen3-omni-flash-realtime 实时 音视频 ai 聊天 助手 q
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
#!/usr/local/python3/bin/python3
# -*- coding: utf-8 -*
# -- coding: utf-8 --
import asyncio
import websockets
import json
import base64
import time
import os
import pyaudio
import queue
import threading
import cv2
from typing import Optional, Callable, Dict, Any
from enum import Enum
class TurnDetectionMode(Enum):
SERVER_VAD = "server_vad"
MANUAL = "manual"
class OmniRealtimeClient:
def __init__(
self,
base_url,
api_key: str,
model: str = "",
voice: str = "Ethan",
instructions: str = "You are a helpful assistant.",
turn_detection_mode: TurnDetectionMode = TurnDetectionMode.SERVER_VAD,
on_text_delta: Optional[Callable[[str], None]] = None,
on_audio_delta: Optional[Callable[[bytes], None]] = None,
on_interruption: Optional[Callable[[], None]] = None, # 新增:打断回调
on_input_transcript: Optional[Callable[[str], None]] = None,
on_output_transcript: Optional[Callable[[str], None]] = None,
extra_event_handlers: Optional[Dict[str, Callable[[Dict[str, Any]], None]]] = None
):
self.base_url = base_url
self.api_key = api_key
self.model = model
self.voice = voice
self.instructions = instructions
self.ws = None
self.on_text_delta = on_text_delta
self.on_audio_delta = on_audio_delta
self.on_interruption = on_interruption # 保存打断回调
self.on_input_transcript = on_input_transcript
self.on_output_transcript = on_output_transcript
self.turn_detection_mode .........完整代码请登录后点击上方下载按钮下载查看















网友评论0