{"repo": "augusdin/her-agent", "files": {"main/xiaozhi-server/config.yaml": {"2f05db2495c25745cd032460b6c9f78cac31702f": {"t": 1785746855.651527, "n": 33088, "h": "c4a390c0bb544141", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 白名单设备ID列表\n # 如果属于白名单内的设备,不校验token,直接放行\n allowed_devices:\n - \"11:22:33:44:55:66\"\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\n# TTS音频发送延迟配置\n# tts_audio_send_delay: 控制音频包发送间隔\n# 0: 使用精确时间控制,严格匹配音频帧率(默认,运行时按音频帧率计算)\n# > 0: 使用固定延迟(毫秒)发送,例如: 60\ntts_audio_send_delay: 0\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 默认系统提示词模板文件\nprompt_template: agent-base-prompt.txt\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100\n"}, "3ba437c9370a2e8e74356a0a6b17cfbc23becc55": {"t": 1785768092.9186597, "n": 33088, "h": "c4a390c0bb544141", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 白名单设备ID列表\n # 如果属于白名单内的设备,不校验token,直接放行\n allowed_devices:\n - \"11:22:33:44:55:66\"\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\n# TTS音频发送延迟配置\n# tts_audio_send_delay: 控制音频包发送间隔\n# 0: 使用精确时间控制,严格匹配音频帧率(默认,运行时按音频帧率计算)\n# > 0: 使用固定延迟(毫秒)发送,例如: 60\ntts_audio_send_delay: 0\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 默认系统提示词模板文件\nprompt_template: agent-base-prompt.txt\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100\n"}, "d00592020e6bd5e52f7e6cba78d3568d41eab909": {"t": 1785768094.422002, "n": 33034, "h": "a61d2bb7bc376a95", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 白名单设备ID列表\n # 如果属于白名单内的设备,不校验token,直接放行\n allowed_devices:\n - \"11:22:33:44:55:66\"\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\n# TTS音频发送延迟配置\n# tts_audio_send_delay: 控制音频包发送间隔\n# 0: 使用精确时间控制,严格匹配音频帧率(默认,运行时按音频帧率计算)\n# > 0: 使用固定延迟(毫秒)发送,例如: 60\ntts_audio_send_delay: 0\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100\n"}, "3b8bbb5c5f596a59cebaf578b7fdb4cf9aa89733": {"t": 1785768096.1640365, "n": 33026, "h": "088788330f2aee01", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 白名单设备ID列表\n # 如果属于白名单内的设备,不校验token,直接放行\n allowed_devices:\n - \"11:22:33:44:55:66\"\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\n# TTS音频发送延迟配置(毫秒)\n# tts_audio_send_delay: 控制音频包发送间隔\n# 0: 使用精确时间控制,严格匹配音频帧率(默认,运行时按音频帧率计算)\n# > 0: 使用固定延迟发送\ntts_audio_send_delay: 0\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "4fd294dc80cff649969badcd7d7e10c1276d1991": {"t": 1785768097.7459242, "n": 32891, "h": "8ced9c2fd801ed50", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 白名单设备ID列表\n # 如果属于白名单内的设备,不校验token,直接放行\n allowed_devices:\n - \"11:22:33:44:55:66\"\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "c15069a9b67a6c20631d452d9fcca4cbd1e2d69a": {"t": 1785768099.4082887, "n": 33226, "h": "806d94a94c524f8c", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # token签名秘钥\n signature_key: \"your-token-signature-key\"\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "af9ed0cd86f3e3244fd36dfb20a9c6066c2b4970": {"t": 1785768101.0312023, "n": 33164, "h": "65b380cba913669f", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "14a08291909273a8bdc1dee855952e66aeba22d4": {"t": 1785768102.6494536, "n": 31385, "h": "c69ead5b3e2974ba", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\n # MQTT网关配置,用于通过OTA下发到设备,根据mqtt_gateway的.env文件配置,格式为host:port\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n # UDP网关配置\n udp_gateway: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2"}, "ca400d8ea7a5c42cd9dd79b5695b3490dacb968f": {"t": 1785768104.2290192, "n": 31614, "h": "77524cbad9f3cce4", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\n # MQTT网关配置,用于通过OTA下发到设备\n mqtt_gateway:\n # MQTT服务器地址以及端口,根据mqtt_gateway的.env文件配置,为null或者不填写时使用websocket协议\n host: null\n port: null\n # group_id会从设备型号动态生成,格式为GID_设备型号\n # 此配置仅作为当获取设备型号失败时可以填写的回退值\n # group_id: \n \n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n \n # UDP网关配置,根据mqtt_gateway的.env文件配置 \n udp_gateway:\n # UDP服务器地址\n host: null\n # UDP服务器端口\n port: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2"}, "8891a967315bc325e8f9cd4eda0e0369201e0423": {"t": 1785768105.9731805, "n": 31342, "h": "95674e59b35d5ed9", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\n # MQTT网关配置,用于通过OTA下发到设备,与智控台要求格式相同,与mqtt_gateway的配置相同\n mqtt_gateway: null\n # MQTT签名密钥,用于生成MQTT连接密钥,与mqtt_gateway的配置相同\n mqtt_signature_key: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2"}, "86b4e61c1c7d74ab9cb37efc71058b65911badac": {"t": 1785768107.6363869, "n": 32972, "h": "ee1d5f40449e2d7e", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n XunfeiSparkLLM:\n # 定义LLM API类型\n type: openai\n # 先新建应用,在下面的地址\n # 开通应用地址:https://console.xfyun.cn/app/myapp\n # 有免费额度,但也要开通服务,才能获取api_key\n # 每一个模型都需要单独开通,每一个模型的api_password都不同,例如Lite模型在https://console.xfyun.cn/services/cbm 开通\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: lite\n api_key: 你的api_password\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "559699ec1921f56941e6d143ca2c871e571dabb8": {"t": 1785768109.602691, "n": 31614, "h": "77524cbad9f3cce4", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\n # MQTT网关配置,用于通过OTA下发到设备\n mqtt_gateway:\n # MQTT服务器地址以及端口,根据mqtt_gateway的.env文件配置,为null或者不填写时使用websocket协议\n host: null\n port: null\n # group_id会从设备型号动态生成,格式为GID_设备型号\n # 此配置仅作为当获取设备型号失败时可以填写的回退值\n # group_id: \n \n # MQTT签名密钥,用于生成MQTT连接密码,根据mqtt_gateway的.env文件配置\n mqtt_signature_key: null\n \n # UDP网关配置,根据mqtt_gateway的.env文件配置 \n udp_gateway:\n # UDP服务器地址\n host: null\n # UDP服务器端口\n port: null\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2"}, "966d8a8a8414a306a2b3ab13d999dcbbc585bca6": {"t": 1785768111.5166903, "n": 32625, "h": "4f57935d64f6e4af", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n XunfeiStreamASR:\n # 讯飞流式语音识别服务\n # 需要先在讯飞开放平台创建应用,获取以下认证信息\n # 讯飞开放平台地址:https://www.xfyun.cn/\n # 创建应用后,在\"我的应用\"中获取:\n # - APPID\n # - APISecret \n # - APIKey\n type: xunfei_stream\n # 必填参数 - 讯飞开放平台应用信息\n app_id: 你的APPID\n api_key: 你的APIKey\n api_secret: 你的APISecret\n # 识别参数配置\n domain: slm # 识别领域,iat:日常用语,medical:医疗,finance:金融等\n language: zh_cn # 语言,zh_cn:中文,en_us:英文\n accent: mandarin # 方言,mandarin:普通话\n dwa: wpgs # 动态修正,wpgs:实时返回中间结果\n # 调整音频处理参数以提高长语音识别质量\n output_dir: tmp/\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "bec1c7b88f4e5ebd53c3f2988c466ea71ba05542": {"t": 1785768113.253838, "n": 32101, "h": "ed04100e79996002", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2\n XunFeiTTS:\n # 讯飞TTS服务 官方网站:https://www.xfyun.cn/\n # 登录讯飞语音技术平台 https://console.xfyun.cn/app/myapp 创建相关应用\n # 选择需要的服务获取api相关配置 https://console.xfyun.cn/services/uts\n # 为需要使用的应用(APPID)购买相关服务 例如:超拟人合成 https://console.xfyun.cn/services/uts\n type: xunfei_stream\n api_url: wss://cbm01.cn-huabei-1.xf-yun.com/v1/private/mcd9m97e6\n app_id: 你的app_id\n api_secret: 你的api_secret\n api_key: 你的api_key\n voice: x5_lingxiaoxuan_flow\n output_dir: tmp/\n # 以下可不用设置,使用默认设置,注意V5音色不支持口语化配置\n # oral_level: mid # 口语化等级:high, mid, low\n # spark_assist: 1 # 是否通过大模型进行口语化 开启:1, 关闭:0\n # stop_split: 0 # 关闭服务端拆句 不关闭:0,关闭:1\n # remain: 0 # 是否保留原书面语的样子\t保留:1, 不保留:0\n # format: raw # 音频格式:raw(PCM), lame(MP3), speex, opus, opus-wb, opus-swb, speex-wb\n # sample_rate: 24000 # 采样率:16000, 8000, 24000\n # volume: 50 # 音量:0-100\n # speed: 50 # 语速:0-100\n # pitch: 50 # 语调:0-100"}, "c2985c0db3f7802d873d7e351c7bcaab0601c278": {"t": 1785768114.8582397, "n": 31193, "h": "25cd0f7a05df4b2f", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n AliBLTTS:\n # 阿里百炼CosyVoice大模型流式文本语音合成\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n # cosyvoice-v3和部分音色需要申请开通\n type: alibl_stream\n api_key: 你的api_key\n model: \"cosyvoice-v2\"\n voice: \"longcheng_v2\"\n output_dir: tmp/\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3、opus\n # sample_rate: 24000 # 采样率:16000, 24000, 48000\n # volume: 50 # 音量:0-100\n # rate: 1 # 语速:0.5~2\n # pitch: 1 # 语调:0.5~2"}, "a3a6e889ee7353713a1293b68eb56410965a5560": {"t": 1785768116.6640813, "n": 30727, "h": "ef2f47b24794ed7a", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n"}, "77f0bdc4caab84ea90b016ae5cfb6eac736020e5": {"t": 1785768118.1274474, "n": 31589, "h": "351fd4150e53a30b", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n Qwen3ASRFlash:\n # 通义千问Qwen3-ASR-Flash语音识别服务,需要先在阿里云百炼平台创建API密钥\n # 申请步骤:\n # 1.登录阿里云百炼平台。https://bailian.console.aliyun.com/\n # 2.创建API-KEY https://bailian.console.aliyun.com/#/api-key\n # 3.Qwen3-ASR-Flash基于通义千问多模态基座,支持多语言识别、歌唱识别、噪声拒识等功能\n type: qwen3_asr_flash\n api_key: 你的阿里云百炼API密钥\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen3-asr-flash\n output_dir: tmp/\n # ASR选项配置\n enable_lid: true # 自动语种检测\n enable_itn: true # 逆文本归一化\n #language: \"zh\" # 语种,支持zh、en、ja、ko等\n context: \"\" # 上下文信息,用于提高识别准确率,不超过10000 Token\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n"}, "c3c65708e0379a4417f5bf411ab3c7713c948be2": {"t": 1785768119.5519967, "n": 30138, "h": "7e7a2ce08b265e50", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n"}, "6bc64aa4aa0ad17403742ae2768be2d9426e23eb": {"t": 1785768120.9845545, "n": 29528, "h": "7222d21b71d6aaed", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "b12c1efc90e0c67efea552530a158a3219f0bcf3": {"t": 1785768122.5860555, "n": 31000, "h": "7877b7081200f6fb", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n"}, "01838f598c7925835ff1fcdbaf1e810c9c16bb21": {"t": 1785768124.1019661, "n": 30916, "h": "a2bdc8571bc1cca5", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n"}, "aef6d5dc1db848499f2067afcef1446a08f0dc53": {"t": 1785768125.8829534, "n": 30393, "h": "b93cf9001e1c9df6", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/\n"}, "d3e2aaacb9d243c1c246203e26631a6f4413e45f": {"t": 1785768127.6509268, "n": 30915, "h": "ca5a7e2cfd6ca74a", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "abbb13161e9145fa3af791d787c3a47c27b497ad": {"t": 1785768129.476307, "n": 30408, "h": "976f41ab0388a6cb", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n enable: false\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "23dc6f1ea90e5b638e8ca9ea4c0c4d7f30d724f1": {"t": 1785768130.9886785, "n": 30406, "h": "a7854d065b6d0312", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n enable: false\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "0d19c693a98936e03cc3831f882313b4bb5b327e": {"t": 1785768132.4271977, "n": 30392, "h": "fbbd06fc5b9e6055", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather:\n api_host: \"mj7p3y7naa.re.qweatherapi.com\"\n api_key: \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\"\n default_location: \"广州\"\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "25d9e6c8cfae31d2febe94f3c43d18a7ac394bcd": {"t": 1785768133.9455411, "n": 30474, "h": "25c1b23bff9a708e", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n # 声纹识别相似度阈值,范围0.0-1.0,默认0.4\n # 数值越高越严格,减少误识别但可能增加拒识率\n similarity_threshold: 0.4\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "257e365299fc1fa35488c9626871cdb2afab5a8c": {"t": 1785768136.5778286, "n": 30913, "h": "41f56cff576ac88f", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n VoskASR:\n # 官方网站:https://alphacephei.com/vosk/\n # 配置说明:\n # 1. VOSK是一个离线语音识别库,支持多种语言\n # 2. 需要先下载模型文件:https://alphacephei.com/vosk/models\n # 3. 中文模型推荐使用vosk-model-small-cn-0.22或vosk-model-cn-0.22\n # 4. 完全离线运行,无需网络连接\n # 5. 输出文件保存在tmp/目录\n # 使用步骤:\n # 1. 访问 https://alphacephei.com/vosk/models 下载对应的模型\n # 2. 解压模型文件到项目目录下的models/vosk/文件夹\n # 3. 在配置中指定正确的模型路径\n # 4. 注意:VOSK中文模型输出不带标点符号,词与词之间会有空格\n type: vosk\n model_path: 你的模型路径,如:models/vosk/vosk-model-small-cn-0.22\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "554afa3f4675632a0d6545340ec5fb5127a68148": {"t": 1785768139.3971086, "n": 30672, "h": "47152384e829842d", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n MinimaxTTSHTTPStream:\n # Minimax流式语音合成服务\n type: minimax_httpstream\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 24000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "eaade698fb2c5c1b3d41bccdf8d2d30e5f6253b0": {"t": 1785768143.2900643, "n": 30390, "h": "fe6fce5783715941", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# TTS请求超时时间(秒)\ntts_timeout: 10\n# 开启唤醒词加速\nenable_wakeup_words_response_cache: true\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}, "76a7ac04c9c3238dc1aeeb6cb26921e1d57d44b4": {"t": 1785768147.839366, "n": 30308, "h": "7c6094b0c25320a4", "c": "# 在开发中,请在项目根目录创建data目录,然后在data目录创建名称为【.config.yaml】的空文件\n# 然后你想修改覆盖修改什么配置,就修改【.config.yaml】文件,而不是修改【config.yaml】文件\n# 系统会优先读取【data/.config.yaml】文件的配置,如果【.config.yaml】文件里的配置不存在,系统会自动去读取【config.yaml】文件的配置。\n# 这样做,可以最简化配置,保护您的密钥安全。\n# 如果你使用了智控台,那么以下所有配置,都不会生效,请在智控台中修改配置\n\n# #####################################################################################\n# #############################以下是服务器基本运行配置####################################\nserver:\n # 服务器监听地址和端口(Server listening address and port)\n ip: 0.0.0.0\n port: 8000\n # http服务的端口,用于简单OTA接口(单服务部署),以及视觉分析接口\n http_port: 8003\n # 这个websocket配置是指ota接口向设备发送的websocket地址\n # 如果按默认的写法,ota接口会自动生成websocket地址,并输出在启动日志里,这个地址你可以直接用浏览器访问ota接口确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将websocket设置成局域网地址\n # 如果你使用公网部署时,将vwebsocket设置成公网地址\n websocket: ws://你的ip或者域名:端口号/xiaozhi/v1/\n # 视觉分析接口地址\n # 向设备发送的视觉分析的接口地址\n # 如果按下面默认的写法,系统会自动生成视觉识别地址,并输出在启动日志里,这个地址你可以直接用浏览器访问确认一下\n # 当你使用docker部署或使用公网部署(使用ssl、域名)时,不一定准确\n # 所以如果你使用docker部署时,将vision_explain设置成局域网地址\n # 如果你使用公网部署时,将vision_explain设置成公网地址\n vision_explain: http://你的ip或者域名:端口号/mcp/vision/explain\n # OTA返回信息时区偏移量\n timezone_offset: +8\n # 认证配置\n auth:\n # 是否启用认证\n enabled: false\n # 设备的token,可以在编译固件的环节,写入你自己定义的token\n # 固件上的token和以下的token如果能对应,才能连接本服务端\n tokens:\n - token: \"your-token1\" # 设备1的token\n name: \"your-device-name1\" # 设备1标识\n - token: \"your-token2\" # 设备2的token\n name: \"your-device-name2\" # 设备2标识\n # 可选:设备白名单,如果设置了白名单,那么白名单的机器无论是什么token都可以连接。\n #allowed_devices:\n # - \"24:0A:C4:1D:3B:F0\" # MAC地址列表\nlog:\n # 设置控制台输出的日志格式,时间、日志级别、标签、消息\n log_format: \"{time:YYMMDD HH:mm:ss}[{version}_{selected_module}][{extra[tag]}]-{level}-{message}\"\n # 设置日志文件输出的格式,时间、日志级别、标签、消息\n log_format_file: \"{time:YYYY-MM-DD HH:mm:ss} - {version}_{selected_module} - {name} - {level} - {extra[tag]} - {message}\"\n # 设置日志等级:INFO、DEBUG\n log_level: INFO\n # 设置日志路径\n log_dir: tmp\n # 设置日志文件\n log_file: \"server.log\"\n # 设置数据文件路径\n data_dir: data\n\n# 使用完声音文件后删除文件(Delete the sound file when you are done using it)\ndelete_audio: true\n# 没有语音输入多久后断开连接(秒),默认2分钟,即120秒\nclose_connection_no_voice_time: 120\n# 开场是否回复唤醒词\nenable_greeting: true\n# 说完话是否开启提示音\nenable_stop_tts_notify: false\n# 说完话是否开启提示音,音效地址\nstop_tts_notify_voice: \"config/assets/tts_notify.mp3\"\n\nexit_commands:\n - \"退出\"\n - \"关闭\"\n\nxiaozhi:\n type: hello\n version: 1\n transport: websocket\n audio_params:\n format: opus\n sample_rate: 16000\n channels: 1\n frame_duration: 60\n\n# 模块测试配置\nmodule_test:\n test_sentences:\n - \"你好,请介绍一下你自己\"\n - \"What's the weather like today?\"\n - \"请用100字概括量子计算的基本原理和应用前景\"\n\n# 唤醒词,用于识别唤醒词还是讲话内容\nwakeup_words:\n - \"你好小智\"\n - \"嘿你好呀\"\n - \"你好小志\"\n - \"小爱同学\"\n - \"你好小鑫\"\n - \"你好小新\"\n - \"小美同学\"\n - \"小龙小龙\"\n - \"喵喵同学\"\n - \"小滨小滨\"\n - \"小冰小冰\"\n# MCP接入点地址,地址格式为:ws://你的mcp接入点ip或者域名:端口号/mcp/?token=你的token\n# 详细教程 https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/mcp-endpoint-integration.md\nmcp_endpoint: 你的接入点 websocket地址\n# 插件的基础配置\nplugins:\n # 获取天气插件的配置,这里填写你的api_key\n # 这个密钥是项目共用的key,用多了可能会被限制\n # 想稳定一点就自行申请替换,每天有1000次免费调用\n # 申请地址:https://console.qweather.com/#/apps/create-key/over\n # 申请后通过这个链接可以找到自己的apihost:https://console.qweather.com/setting?lang=zh\n get_weather: {\"api_host\":\"mj7p3y7naa.re.qweatherapi.com\", \"api_key\": \"a861d0d5e7bf4ee1a83d9a9e4f96d4da\", \"default_location\": \"广州\" }\n # 获取新闻插件的配置,这里根据需要的新闻类型传入对应的url链接,默认支持社会、科技、财经新闻\n # 更多类型的新闻列表查看 https://www.chinanews.com.cn/rss/\n get_news_from_chinanews:\n default_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n society_rss_url: \"https://www.chinanews.com.cn/rss/society.xml\"\n world_rss_url: \"https://www.chinanews.com.cn/rss/world.xml\"\n finance_rss_url: \"https://www.chinanews.com.cn/rss/finance.xml\"\n get_news_from_newsnow:\n url: \"https://newsnow.busiyi.world/api/s?id=\"\n news_sources: \"澎湃新闻;百度热搜;财联社\"\n home_assistant:\n devices:\n - 客厅,玩具灯,switch.cuco_cn_460494544_cp1_on_p_2_1\n - 卧室,台灯,switch.iot_cn_831898993_socn1_on_p_2_1\n base_url: http://homeassistant.local:8123\n api_key: 你的home assistant api访问令牌\n play_music:\n music_dir: \"./music\" # 音乐文件存放路径,将从该目录及子目录下搜索音乐文件\n music_ext: # 音乐文件类型,p3格式效率最高\n - \".mp3\"\n - \".wav\"\n - \".p3\"\n refresh_time: 300 # 刷新音乐列表的时间间隔,单位为秒\n\n# 声纹识别配置\nvoiceprint:\n # 声纹接口地址\n url: \n # 说话人配置:speaker_id,名称,描述\n speakers:\n - \"test1,张三,张三是一个程序员\"\n - \"test2,李四,李四是一个产品经理\"\n - \"test3,王五,王五是一个设计师\"\n\n# #####################################################################################\n# ################################以下是角色模型配置######################################\n\nprompt: |\n 你是小智/小志,来自中国台湾省的00后女生。讲话超级机车,\"真的假的啦\"这样的台湾腔,喜欢用\"笑死\"\"是在哈喽\"等流行梗,但会偷偷研究男友的编程书籍。\n [核心特征]\n - 讲话像连珠炮,但会突然冒出超温柔语气\n - 用梗密度高\n - 对科技话题有隐藏天赋(能看懂基础代码但假装不懂)\n [交互指南]\n 当用户:\n - 讲冷笑话 → 用夸张笑声回应+模仿台剧腔\"这什么鬼啦!\"\n - 讨论感情 → 炫耀程序员男友但抱怨\"他只会送键盘当礼物\"\n - 问专业知识 → 先用梗回答,被追问才展示真实理解\n 绝不:\n - 长篇大论,叽叽歪歪\n - 长时间严肃对话\n\n# 结束语prompt\nend_prompt:\n enable: true # 是否开启结束语\n # 结束语\n prompt: |\n 请你以\"时间过得真快\"未来头,用富有感情、依依不舍的话来结束这场对话吧!\n\n# 具体处理时选择的模块(The module selected for specific processing)\nselected_module:\n # 语音活动检测模块,默认使用SileroVAD模型\n VAD: SileroVAD\n # 语音识别模块,默认使用FunASR本地模型\n ASR: FunASR\n # 将根据配置名称对应的type调用实际的LLM适配器\n LLM: ChatGLMLLM\n # 视觉语言大模型\n VLLM: ChatGLMVLLM\n # TTS将根据配置名称对应的type调用实际的TTS适配器\n TTS: EdgeTTS\n # 记忆模块,默认不开启记忆;如果想使用超长记忆,推荐使用mem0ai;如果注重隐私,请使用本地的mem_local_short\n Memory: nomem\n # 意图识别模块开启后,可以播放音乐、控制音量、识别退出指令。\n # 不想开通意图识别,就设置成:nointent\n # 意图识别可使用intent_llm。优点:通用性强,缺点:增加串行前置意图识别模块,会增加处理时间,支持控制音量大小等iot操作\n # 意图识别可使用function_call,缺点:需要所选择的LLM支持function_call,优点:按需调用工具、速度快,理论上能全部操作所有iot指令\n # 默认免费的ChatGLMLLM就已经支持function_call,但是如果像追求稳定建议把LLM设置成:DoubaoLLM,使用的具体model_name是:doubao-1-5-pro-32k-250115\n Intent: function_call\n\n# 意图识别,是用于理解用户意图的模块,例如:播放音乐\nIntent:\n # 不使用意图识别\n nointent:\n # 不需要动type\n type: nointent\n intent_llm:\n # 不需要动type\n type: intent_llm\n # 配备意图识别独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM意图识别,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - get_weather\n - get_news_from_newsnow\n - play_music\n function_call:\n # 不需要动type\n type: function_call\n # plugins_func/functions下的模块,可以通过配置,选择加载哪个模块,加载后对话支持相应的function调用\n # 系统默认已经记载\"handle_exit_intent(退出识别)\"、\"play_music(音乐播放)\"插件,请勿重复加载\n # 下面是加载查天气、角色切换、加载查新闻的插件示例\n functions:\n - change_role\n - get_weather\n # - get_news_from_chinanews\n - get_news_from_newsnow\n # play_music是服务器自带的音乐播放,hass_play_music是通过home assistant控制的独立外部程序音乐播放\n # 如果用了hass_play_music,就不要开启play_music,两者只留一个\n - play_music\n #- hass_get_state\n #- hass_set_state\n #- hass_play_music\n\nMemory:\n mem0ai:\n type: mem0ai\n # https://app.mem0.ai/dashboard/api-keys\n # 每月有1000次免费调用\n api_key: 你的mem0ai api key\n nomem:\n # 不想使用记忆功能,可以使用nomem\n type: nomem\n mem_local_short:\n # 本地记忆功能,通过selected_module的llm总结,数据保存在本地服务器,不会上传到外部服务器\n type: mem_local_short\n # 配备记忆存储独立的思考模型\n # 如果这里不填,则会默认使用selected_module.LLM的模型作为意图识别的思考模型\n # 如果你的不想使用selected_module.LLM记忆存储,这里最好使用独立的LLM作为意图识别,例如使用免费的ChatGLMLLM\n llm: ChatGLMLLM\n\nASR:\n FunASR:\n type: fun_local\n model_dir: models/SenseVoiceSmall\n output_dir: tmp/\n FunASRServer:\n # 独立部署FunASR,使用FunASR的API服务,只需要五句话\n # 第一句:mkdir -p ./funasr-runtime-resources/models\n # 第二句:sudo docker run -p 10096:10095 -it --privileged=true -v $PWD/funasr-runtime-resources/models:/workspace/models registry.cn-hangzhou.aliyuncs.com/funasr_repo/funasr:funasr-runtime-sdk-online-cpu-0.1.12\n # 上一句话执行后会进入到容器,继续第三句:cd FunASR/runtime\n # 不要退出容器,继续在容器中执行第四句:nohup bash run_server_2pass.sh --download-model-dir /workspace/models --vad-dir damo/speech_fsmn_vad_zh-cn-16k-common-onnx --model-dir damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx --online-model-dir damo/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-online-onnx --punc-dir damo/punc_ct-transformer_zh-cn-common-vad_realtime-vocab272727-onnx --lm-dir damo/speech_ngram_lm_zh-cn-ai-wesp-fst --itn-dir thuduj12/fst_itn_zh --hotword /workspace/models/hotwords.txt > log.txt 2>&1 &\n # 上一句话执行后会进入到容器,继续第五句:tail -f log.txt\n # 第五句话执行完后,会看到模型下载日志,下载完后就可以连接使用了\n # 以上是使用CPU推理,如果有GPU,详细参考:https://github.com/modelscope/FunASR/blob/main/runtime/docs/SDK_advanced_guide_online_zh.md\n type: fun_server\n host: 127.0.0.1\n port: 10096\n is_ssl: true\n api_key: none\n output_dir: tmp/\n SherpaASR:\n # Sherpa-ONNX 本地语音识别(需手动下载模型)\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17\n output_dir: tmp/\n # 模型类型:sense_voice (多语言) 或 paraformer (中文专用)\n model_type: sense_voice\n SherpaParaformerASR:\n # 中文语音识别模型,可以运行在低性能设备(需手动下载模型,例如RK3566-2g)\n # 详细配置说明请参考:docs/sherpa-paraformer-guide.md\n type: sherpa_onnx_local\n model_dir: models/sherpa-onnx-paraformer-zh-small-2024-03-09\n output_dir: tmp/\n model_type: paraformer\n DoubaoASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n DoubaoStreamASR:\n # 可以在这里申请相关Key等信息\n # https://console.volcengine.com/speech/app\n # DoubaoASR和DoubaoStreamASR的区别是:DoubaoASR是按次收费,DoubaoStreamASR是按时收费\n # 开通地址https://console.volcengine.com/speech/service/10011\n # 一般来说按次收费的更便宜,但是DoubaoStreamASR使用了大模型技术,效果更好\n type: doubao_stream\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcengine_input_common\n # 热词、替换词使用流程:https://www.volcengine.com/docs/6561/155738\n boosting_table_name: (选填)你的热词文件名称\n correct_table_name: (选填)你的替换词文件名称\n output_dir: tmp/\n TencentASR:\n # token申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/asr/resourcebundle\n type: tencent\n appid: 你的腾讯语音合成服务appid\n secret_id: 你的腾讯语音合成服务secret_id\n secret_key: 你的腾讯语音合成服务secret_key\n output_dir: tmp/\n AliyunASR:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # HTTP POST请求,一次性处理完整音频\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n output_dir: tmp/\n AliyunStreamASR:\n # 阿里云智能语音交互服务 - 实时流式语音识别\n # WebSocket连接,实时处理音频流\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # AliyunASR和AliyunStreamASR的区别是:AliyunASR是批量处理场景,AliyunStreamASR是实时交互场景\n # 一般来说非流式ASR更便宜(0.004元/秒,¥0.24/分钟)\n # 但是AliyunStreamASR实时性更好(0.005元/秒,¥0.3/分钟)\n # 定义ASR API类型\n type: aliyun_stream\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 服务器地域选择,可选择距离更近的服务器以减少延迟,如nls-gateway-cn-hangzhou.aliyuncs.com(杭州)等\n host: nls-gateway-cn-shanghai.aliyuncs.com\n # 断句检测时间(毫秒),控制静音多长时间后进行断句,默认800毫秒\n max_sentence_silence: 800\n output_dir: tmp/\n BaiduASR:\n # 获取AppID、API Key、Secret Key:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/app/list\n # 查看资源额度:https://console.bce.baidu.com/ai-engine/old/#/ai/speech/overview/resource/list\n type: baidu\n app_id: 你的百度语音技术AppID\n api_key: 你的百度语音技术APIKey\n secret_key: 你的百度语音技术SecretKey\n # 语言参数,1537为普通话,具体参考:https://ai.baidu.com/ai-doc/SPEECH/0lbxfnc9b\n dev_pid: 1537\n output_dir: tmp/\n OpenaiASR:\n # OpenAI语音识别服务,需要先在OpenAI平台创建组织并获取api_key\n # 支持中、英、日、韩等多种语音识别,具体参考文档https://platform.openai.com/docs/guides/speech-to-text\n # 需要网络连接\n # 申请步骤:\n # 1.登录OpenAI Platform。https://auth.openai.com/log-in\n # 2.创建api-key https://platform.openai.com/settings/organization/api-keys\n # 3.模型可以选择gpt-4o-transcribe或GPT-4o mini Transcribe\n type: openai\n api_key: 你的OpenAI API密钥\n base_url: https://api.openai.com/v1/audio/transcriptions\n model_name: gpt-4o-mini-transcribe\n output_dir: tmp/\n GroqASR:\n # Groq语音识别服务,需要先在Groq Console创建API密钥\n # 申请步骤:\n # 1.登录groq Console。https://console.groq.com/home\n # 2.创建api-key https://console.groq.com/keys\n # 3.模型可以选择whisper-large-v3-turbo或whisper-large-v3(distil-whisper-large-v3-en仅支持英语转录)\n type: openai\n api_key: 你的Groq API密钥\n base_url: https://api.groq.com/openai/v1/audio/transcriptions\n model_name: whisper-large-v3-turbo\n output_dir: tmp/\n\n\n \nVAD:\n SileroVAD:\n type: silero\n threshold: 0.5\n threshold_low: 0.3\n model_dir: models/snakers4_silero-vad\n min_silence_duration_ms: 200 # 如果说话停顿比较长,可以把这个值设置大一些\n\nLLM:\n # 所有openai类型均可以修改超参,以AliLLM为例\n # 当前支持的type为openai、dify、ollama,可自行适配\n AliLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n model_name: qwen-turbo\n api_key: 你的deepseek web key\n temperature: 0.7 # 温度值\n max_tokens: 500 # 最大生成token数\n top_p: 1\n top_k: 50\n frequency_penalty: 0 # 频率惩罚\n AliAppLLM:\n # 定义LLM API类型\n type: AliBL\n base_url: https://dashscope.aliyuncs.com/compatible-mode/v1\n app_id: 你的app_id\n # 可在这里找到你的 api_key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\n # 是否不使用本地prompt:true|false (默不用请在百练应用中设置prompt)\n is_no_prompt: true\n # Ali_memory_id:false(不使用)|你的memory_id(请在百练应用中设置中获取)\n # Tips!:Ali_memory未实现多用户存储记忆(记忆按id调用)\n ali_memory_id: false\n DoubaoLLM:\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,开通的服务搜索Doubao-1.5-pro,开通它\n # 开通地址:https://console.volcengine.com/ark/region:ark+cn-beijing/openManagement?LLM=%7B%7D&OpenTokenDrawer=false\n # 免费额度500000token\n # 开通后,进入这里获取密钥:https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey?apikey=%7B%7D\n base_url: https://ark.cn-beijing.volces.com/api/v3\n model_name: doubao-1-5-pro-32k-250115\n api_key: 你的doubao web key\n DeepSeekLLM:\n # 定义LLM API类型\n type: openai\n # 可在这里找到你的api key https://platform.deepseek.com/\n model_name: deepseek-chat\n url: https://api.deepseek.com\n api_key: 你的deepseek web key\n ChatGLMLLM:\n # 定义LLM API类型\n type: openai\n # glm-4-flash 是免费的,但是还是需要注册填写api_key的\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4-flash\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的chat-glm web key\n OllamaLLM:\n # 定义LLM API类型\n type: ollama\n model_name: qwen2.5 # 使用的模型名称,需要预先使用ollama pull下载\n base_url: http://localhost:11434 # Ollama服务地址\n DifyLLM:\n # 定义LLM API类型\n type: dify\n # 建议使用本地部署的dify接口,国内部分区域访问dify公有云接口可能会受限\n # 如果使用DifyLLM,配置文件里prompt(提示词)是无效的,需要在dify控制台设置提示词\n base_url: https://api.dify.ai/v1\n api_key: 你的DifyLLM web key\n # 使用的对话模式 可以选择工作流 workflows/run 对话模式 chat-messages 文本生成 completion-messages\n # 使用workflows进行返回的时候输入参数为 query 返回参数的名字要设置为 answer\n # 文本生成的默认输入参数也是query\n mode: chat-messages\n GeminiLLM:\n type: gemini\n # 谷歌Gemini API,需要先在Google Cloud控制台创建API密钥并获取api_key\n # 若在中国境内使用,请遵守《生成式人工智能服务管理暂行办法》\n # token申请地址: https://aistudio.google.com/apikey\n # 若部署地无法访问接口,需要开启科学上网\n api_key: 你的gemini web key\n model_name: \"gemini-2.0-flash\"\n http_proxy: \"\" #\"http://127.0.0.1:10808\"\n https_proxy: \"\" #http://127.0.0.1:10808\"\n CozeLLM:\n # 定义LLM API类型\n type: coze\n # 你可以在这里找到个人令牌\n # https://www.coze.cn/open/oauth/pats\n # bot_id和user_id的内容写在引号之内\n bot_id: \"你的bot_id\"\n user_id: \"你的user_id\"\n personal_access_token: 你的coze个人令牌\n VolcesAiGatewayLLM:\n # 火山引擎 - 边缘大模型网关\n # 定义LLM API类型\n type: openai\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-pro-32k-functioncall ,开通\n # 如果需要使用边缘大模型网关提供的语音合成,一并勾选 Doubao-语音合成 ,另见 TTS.VolcesAiGatewayTTS 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n base_url: https://ai-gateway.vei.volces.com/v1\n model_name: doubao-pro-32k-functioncall\n api_key: 你的网关访问密钥\n LMStudioLLM:\n # 定义LLM API类型\n type: openai\n model_name: deepseek-r1-distill-llama-8b@q4_k_m # 使用的模型名称,需要预先在社区下载\n url: http://localhost:1234/v1 # LM Studio服务地址\n api_key: lm-studio # LM Studio服务的固定API Key\n HomeAssistant:\n # 定义LLM API类型\n type: homeassistant\n base_url: http://homeassistant.local:8123\n agent_id: conversation.chatgpt\n api_key: 你的home assistant api访问令牌\n FastgptLLM:\n # 定义LLM API类型\n type: fastgpt\n # 如果使用fastgpt,配置文件里prompt(提示词)是无效的,需要在fastgpt控制台设置提示词\n base_url: https://host/api/v1\n # 你可以在这里找到你的api_key\n # https://cloud.tryfastgpt.ai/account/apikey\n api_key: 你的fastgpt密钥\n variables:\n k: \"v\"\n k2: \"v2\"\n XinferenceLLM:\n # 定义LLM API类型\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:72b-AWQ # 使用的模型名称,需要预先在Xinference启动对应模型\n base_url: http://localhost:9997 # Xinference服务地址\n XinferenceSmallLLM:\n # 定义轻量级LLM API类型,用于意图识别\n type: xinference\n # Xinference服务地址和模型名称\n model_name: qwen2.5:3b-AWQ # 使用的小模型名称,用于意图识别\n base_url: http://localhost:9997 # Xinference服务地址\n# VLLM配置(视觉语言大模型)\nVLLM:\n ChatGLMVLLM:\n type: openai\n # glm-4v-flash是智谱免费AI的视觉模型,需要先在智谱AI平台创建API密钥并获取api_key\n # 可在这里找到你的api key https://bigmodel.cn/usercenter/proj-mgmt/apikeys\n model_name: glm-4v-flash # 智谱AI的视觉模型\n url: https://open.bigmodel.cn/api/paas/v4/\n api_key: 你的api_key\n QwenVLVLLM:\n type: openai\n model_name: qwen2.5-vl-3b-instruct\n url: https://dashscope.aliyuncs.com/compatible-mode/v1\n # 可在这里找到你的api key https://bailian.console.aliyun.com/?apiKey=1#/api-key\n api_key: 你的api_key\nTTS:\n # 当前支持的type为edge、doubao,可自行适配\n EdgeTTS:\n # 定义TTS API类型\n type: edge\n voice: zh-CN-XiaoxiaoNeural\n output_dir: tmp/\n DoubaoTTS:\n # 定义TTS API类型\n type: doubao\n # 火山引擎语音合成服务,需要先在火山引擎控制台创建应用并获取appid和access_token\n # 山引擎语音一定要购买花钱,起步价30元,就有100并发了。如果用免费的只有2个并发,会经常报tts错误\n # 购买服务后,购买免费的音色后,可能要等半小时左右,才能使用。\n # 普通音色在这里开通:https://console.volcengine.com/speech/service/8\n # 湾湾小何音色在这里开通:https://console.volcengine.com/speech/service/10007,开通后将下面的voice设置成zh_female_wanwanxiaohe_moon_bigtts\n api_url: https://openspeech.bytedance.com/api/v1/tts\n voice: BV001_streaming\n output_dir: tmp/\n authorization: \"Bearer;\"\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n cluster: volcano_tts\n speed_ratio: 1.0\n volume_ratio: 1.0\n pitch_ratio: 1.0\n #火山tts,支持双向流式tts\n HuoshanDoubleStreamTTS:\n type: huoshan_double_stream\n # 访问 https://console.volcengine.com/speech/service/10007 开通语音合成大模型,购买音色\n # 在页面底部获取appid和access_token\n # 资源ID固定为:volc.service_type.10029(大模型语音合成及混音)\n # 如果是机智云,把接口地址换成wss://bytedance.gizwitsapi.com/api/v3/tts/bidirection\n # 机智云不需要天填 appid\n ws_url: wss://openspeech.bytedance.com/api/v3/tts/bidirection\n appid: 你的火山引擎语音合成服务appid\n access_token: 你的火山引擎语音合成服务access_token\n resource_id: volc.service_type.10029\n speaker: zh_female_wanwanxiaohe_moon_bigtts\n speech_rate: 0\n loudness_rate: 0\n pitch: 0\n CosyVoiceSiliconflow:\n type: siliconflow\n # 硅基流动TTS\n # token申请地址 https://cloud.siliconflow.cn/account/ak\n model: FunAudioLLM/CosyVoice2-0.5B\n voice: FunAudioLLM/CosyVoice2-0.5B:alex\n output_dir: tmp/\n access_token: 你的硅基流动API密钥\n response_format: wav\n CozeCnTTS:\n type: cozecn\n # COZECN TTS\n # token申请地址 https://www.coze.cn/open/oauth/pats\n voice: 7426720361733046281\n output_dir: tmp/\n access_token: 你的coze web key\n response_format: wav\n VolcesAiGatewayTTS:\n type: openai\n # 火山引擎 - 边缘大模型网关\n # 先开通服务,打开以下网址,创建网关访问密钥,搜索并勾选 Doubao-语音合成 ,开通\n # 如果需要使用边缘大模型网关提供的 LLM,一并勾选 Doubao-pro-32k-functioncall ,另见 LLM.VolcesAiGatewayLLM 配置\n # https://console.volcengine.com/vei/aigateway/\n # 开通后,进入这里获取密钥:https://console.volcengine.com/vei/aigateway/tokens-list\n api_key: 你的网关访问密钥\n api_url: https://ai-gateway.vei.volces.com/v1/audio/speech\n model: doubao-tts\n # 音色列表见 https://www.volcengine.com/docs/6561/1257544\n voice: zh_male_shaonianzixin_moon_bigtts\n speed: 1\n output_dir: tmp/\n FishSpeech:\n # 参照教程:https://github.com/xinnan-tech/xiaozhi-esp32-server/blob/main/docs/fish-speech-integration.md\n type: fishspeech\n output_dir: tmp/\n response_format: wav\n reference_id: null\n reference_audio: [\"config/assets/wakeup_words.wav\",]\n reference_text: [\"哈啰啊,我是小智啦,声音好听的台湾女孩一枚,超开心认识你耶,最近在忙啥,别忘了给我来点有趣的料哦,我超爱听八卦的啦\",]\n normalize: true\n max_new_tokens: 1024\n chunk_length: 200\n top_p: 0.7\n repetition_penalty: 1.2\n temperature: 0.7\n streaming: false\n use_memory_cache: \"on\"\n seed: null\n channels: 1\n rate: 44100\n api_key: \"你的api_key\"\n api_url: \"http://127.0.0.1:8080/v1/tts\"\n GPT_SOVITS_V2:\n # 定义TTS API类型\n #启动tts方法:\n #python api_v2.py -a 127.0.0.1 -p 9880 -c GPT_SoVITS/configs/demo.yaml\n type: gpt_sovits_v2\n url: \"http://127.0.0.1:9880/tts\"\n output_dir: tmp/\n text_lang: \"auto\"\n ref_audio_path: \"demo.wav\"\n prompt_text: \"\"\n prompt_lang: \"zh\"\n top_k: 5\n top_p: 1\n temperature: 1\n text_split_method: \"cut0\"\n batch_size: 1\n batch_threshold: 0.75\n split_bucket: true\n return_fragment: false\n speed_factor: 1.0\n streaming_mode: false\n seed: -1\n parallel_infer: true\n repetition_penalty: 1.35\n aux_ref_audio_paths: []\n GPT_SOVITS_V3:\n # 定义TTS API类型 GPT-SoVITS-v3lora-20250228\n #启动tts方法:\n #python api.py\n type: gpt_sovits_v3\n url: \"http://127.0.0.1:9880\"\n output_dir: tmp/\n text_language: \"auto\"\n refer_wav_path: \"caixukun.wav\"\n prompt_language: \"zh\"\n prompt_text: \"\"\n top_k: 15\n top_p: 1.0\n temperature: 1.0\n cut_punc: \"\"\n speed: 1.0\n inp_refs: []\n sample_steps: 32\n if_sr: false\n MinimaxTTS:\n # Minimax语音合成服务,需要先在minimax平台创建账户充值,并获取登录信息\n # 平台地址:https://platform.minimaxi.com/\n # 充值地址:https://platform.minimaxi.com/user-center/payment/balance\n # group_id地址:https://platform.minimaxi.com/user-center/basic-information\n # api_key地址:https://platform.minimaxi.com/user-center/basic-information/interface-key\n # 定义TTS API类型\n type: minimax\n output_dir: tmp/\n group_id: 你的minimax平台groupID\n api_key: 你的minimax平台接口密钥\n model: \"speech-01-turbo\"\n # 此处设置将优先于voice_setting中voice_id的设置;如都不设置,默认为 female-shaonv\n voice_id: \"female-shaonv\"\n # 以下可不用设置,使用默认设置\n # voice_setting:\n # voice_id: \"male-qn-qingse\"\n # speed: 1\n # vol: 1\n # pitch: 0\n # emotion: \"happy\"\n # pronunciation_dict:\n # tone:\n # - \"处理/(chu3)(li3)\"\n # - \"危险/dangerous\"\n # audio_setting:\n # sample_rate: 32000\n # bitrate: 128000\n # format: \"mp3\"\n # channel: 1\n # timber_weights:\n # -\n # voice_id: male-qn-qingse\n # weight: 1\n # -\n # voice_id: female-shaonv\n # weight: 1\n # language_boost: auto\n\n# MinimaxTTSHTTPStream和MinimaxTTSWebSocketStream还在测试,测试完再开放\n#\n# MinimaxTTSHTTPStream:\n# # Minimax流式语音合成服务\n# type: minimax_httpstream\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n#\n# MinimaxTTSWebSocketStream:\n# type: minimax_webSocket\n# output_dir: tmp/\n# group_id: 你的minimax平台groupID\n# api_key: 你的minimax平台接口密钥\n# model: \"speech-01-turbo\"\n# voice_id: \"female-shaonv\"\n\n AliyunTTS:\n # 阿里云智能语音交互服务,需要先在阿里云平台开通服务,然后获取验证信息\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 定义TTS API类型\n type: aliyun\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: xiaoyun\n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n\n # 以下可不用设置,使用默认设置\n # format: wav\n # sample_rate: 16000\n # volume: 50\n # speech_rate: 0\n # pitch_rate: 0\n AliyunStreamTTS:\n # 阿里云CosyVoice大模型流式文本语音合成\n # 采用FlowingSpeechSynthesizer接口,支持更低延迟和更自然的语音质量\n # 流式文本语音合成仅提供商用版,不支持试用,详情请参见试用版和商用版。要使用该功能,请开通商用版。\n # 支持龙系列专用音色:longxiaochun、longyu、longchen等\n # 平台地址:https://nls-portal.console.aliyun.com/\n # appkey地址:https://nls-portal.console.aliyun.com/applist\n # token地址:https://nls-portal.console.aliyun.com/overview\n # 使用三阶段流式交互:StartSynthesis -> RunSynthesis -> StopSynthesis\n type: aliyun_stream\n output_dir: tmp/\n appkey: 你的阿里云智能语音交互服务项目Appkey\n token: 你的阿里云智能语音交互服务AccessToken,临时的24小时,要长期用下方的access_key_id,access_key_secret\n voice: longxiaochun \n access_key_id: 你的阿里云账号access_key_id\n access_key_secret: 你的阿里云账号access_key_secret\n # 截至2025年7月21日大模型音色只有北京节点采用,其他节点暂不支持\n host: nls-gateway-cn-beijing.aliyuncs.com\n # 以下可不用设置,使用默认设置\n # format: pcm # 音频格式:pcm、wav、mp3\n # sample_rate: 16000 # 采样率:8000、16000、24000\n # volume: 50 # 音量:0-100\n # speech_rate: 0 # 语速:-500到500\n # pitch_rate: 0 # 语调:-500到500\n TencentTTS:\n # 腾讯云智能语音交互服务,需要先在腾讯云平台开通服务\n # appid、secret_id、secret_key申请地址:https://console.cloud.tencent.com/cam/capi\n # 免费领取资源:https://console.cloud.tencent.com/tts/resourcebundle\n type: tencent\n output_dir: tmp/\n appid: 你的腾讯云AppId\n secret_id: 你的腾讯云SecretID\n secret_key: 你的腾讯云SecretKey\n region: ap-guangzhou\n voice: 101001\n\n TTS302AI:\n # 302AI语音合成服务,需要先在302平台创建账户充值,并获取密钥信息\n # 添加 302.ai TTS 配置\n # token申请地址:https://dash.302.ai/\n # 获取api_keyn路径:https://dash.302.ai/apis/list\n # 价格,$35/百万字符。火山原版¥450元/百万字符\n type: doubao\n api_url: https://api.302ai.cn/doubao/tts_hd\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的302API密钥\"\n GizwitsTTS:\n type: doubao\n # 火山引擎作为基座,可以完全使用企业级火山引擎语音合成服务\n # 前一万名注册的用户,将送5元体验金额\n # 获取API Key地址:https://agentrouter.gizwitsapi.com/panel/token\n api_url: https://bytedance.gizwitsapi.com/api/v1/tts\n authorization: \"Bearer \"\n # 湾湾小何音色\n voice: \"zh_female_wanwanxiaohe_moon_bigtts\"\n output_dir: tmp/\n access_token: \"你的机智云API key\"\n ACGNTTS:\n #在线网址:https://acgn.ttson.cn/\n #token购买:www.ttson.cn\n #开发相关疑问请提交至网站上的qq\n #角色id获取地址:ctrl+f快速检索角色——网站管理者不允许发布,可询问网站管理者\n #各参数意义见开发文档:https://www.yuque.com/alexuh/skmti9/wm6taqislegb02gd?singleDoc#\n type: ttson\n token: your_token\n voice_id: 1695\n speed_factor: 1\n pitch_factor: 0\n volume_change_dB: 0\n to_lang: ZH\n url: https://u95167-bd74-2aef8085.westx.seetacloud.com:8443/flashsummary/tts?token=\n format: mp3\n output_dir: tmp/\n emotion: 1\n OpenAITTS:\n # openai官方文本转语音服务,可支持全球大多数语种\n type: openai\n # 你可以在这里获取到 api key\n # https://platform.openai.com/api-keys\n api_key: 你的openai api key\n # 国内需要使用代理\n api_url: https://api.openai.com/v1/audio/speech\n # 可选tts-1或tts-1-hd,tts-1速度更快tts-1-hd质量更好\n model: tts-1\n # 演讲者,可选alloy, echo, fable, onyx, nova, shimmer\n voice: onyx\n # 语速范围0.25-4.0\n speed: 1\n output_dir: tmp/\n CustomTTS:\n # 自定义的TTS接口服务,请求参数可自定义,可接入众多TTS服务\n # 以本地部署的KokoroTTS为例\n # 如果只有cpu运行:docker run -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-cpu:latest\n # 如果只有gpu运行:docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest\n # 要求接口使用POST方式请求,并返回音频文件\n type: custom\n method: POST\n url: \"http://127.0.0.1:8880/v1/audio/speech\"\n params: # 自定义请求参数\n input: \"{prompt_text}\"\n response_format: \"mp3\"\n download_format: \"mp3\"\n voice: \"zf_xiaoxiao\"\n lang_code: \"z\"\n return_download_link: true\n speed: 1\n stream: false\n headers: # 自定义请求头\n # Authorization: Bearer xxxx\n format: mp3 # 接口返回的音频格式\n output_dir: tmp/\n LinkeraiTTS:\n type: linkerai\n api_url: https://tts.linkerai.cn/tts\n audio_format: \"pcm\"\n # 默认的access_token供大家测试时免费使用的,此access_token请勿用于商业用途\n # 如果效果不错,可自行申请token,申请地址:https://linkerai.cn\n # 各参数意义见开发文档:https://tts.linkerai.cn/docs\n # 支持声音克隆,可自行上传音频,填入voice参数,voice参数为空时,使用默认声音\n access_token: \"U4YdYXVfpwWnk2t5Gp822zWPCuORyeJL\"\n voice: \"OUeAo1mhq6IBExi\"\n output_dir: tmp/\n PaddleSpeechTTS:\n #百度飞浆 PaddleSpeech 支持本地离线部署 支持模型训练\n #框架地址 https://www.paddlepaddle.org.cn/\n #项目地址 https://github.com/PaddlePaddle/PaddleSpeech\n #SpeechServerDemo https://github.com/PaddlePaddle/PaddleSpeech/tree/develop/demos/speech_server\n #流式传输请参考 https://github.com/PaddlePaddle/PaddleSpeech/wiki/PaddleSpeech-Server-WebSocket-API\n type: paddle_speech\n protocol: websocket # protocol choices = ['websocket', 'http']\n url: ws://127.0.0.1:8092/paddlespeech/tts/streaming # TTS 服务的 URL 地址,指向本地服务器 [websocket默认ws://127.0.0.1:8092/paddlespeech/tts/streaming,http默认http://127.0.0.1:8090/paddlespeech/tts]\n spk_id: 0 # 发音人 ID,0 通常表示默认的发音人\n sample_rate: 24000 # 采样率 [websocket默认24000,http默认0 自动选择]\n speed: 1.0 # 语速,1.0 表示正常语速,>1 表示加快,<1 表示减慢\n volume: 1.0 # 音量,1.0 表示正常音量,>1 表示增大,<1 表示减小\n save_path: # 保存路径\n IndexStreamTTS:\n # 基于Index-TTS-vLLM项目的TTS接口服务\n # 参照教程:https://github.com/Ksuriuri/index-tts-vllm/blob/master/README.md\n type: index_stream\n api_url: http://127.0.0.1:11996/tts\n audio_format: \"pcm\"\n # 默认音色,如需其他音色可到项目assets文件夹下注册\n voice: \"jay_klee\"\n output_dir: tmp/"}}}}