[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-71090":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":31,"readmeContent":32,"aiSummary":33,"trendingCount":16,"starSnapshotCount":16,"syncStatus":34,"lastSyncTime":35,"discoverSource":36},71090,"xiaogpt","yihong0618\u002Fxiaogpt","yihong0618","Play ChatGPT and other LLM with Xiaomi AI Speaker","",null,"Python",6849,945,44,68,0,3,8,12,9,39.93,"MIT License",false,"main",true,[27,28,29,30],"chatgpt","llms","python","xiaomi","2026-06-12 02:02:47","# xiaogpt\n\n[![PyPI](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fxiaogpt?style=flat-square)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fxiaogpt)\n[![Docker Image Version (latest by date)](https:\u002F\u002Fimg.shields.io\u002Fdocker\u002Fv\u002Fyihong0618\u002Fxiaogpt?color=%23086DCD&label=docker%20image)](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fyihong0618\u002Fxiaogpt)\n\n\u003Chttps:\u002F\u002Fuser-images.githubusercontent.com\u002F15976103\u002F226803357-72f87a41-a15b-409e-94f5-e2d262eecd53.mp4>\n\nPlay ChatGPT and other LLM with Xiaomi AI Speaker\n\n![image](https:\u002F\u002Fuser-images.githubusercontent.com\u002F15976103\u002F220028375-c193a859-48a1-4270-95b6-ef540e54a621.png)\n![image](https:\u002F\u002Fuser-images.githubusercontent.com\u002F15976103\u002F226802344-9c71f543-b73c-4a47-8703-4c200c434dec.png)\n\n## 支持的 AI 类型\n\n- ChatGPT\n- New Bing\n- [ChatGLM](http:\u002F\u002Fopen.bigmodel.cn\u002F)\n- [Gemini](https:\u002F\u002Fmakersuite.google.com\u002Fapp\u002Fapikey)\n- [Doubao](https:\u002F\u002Fconsole.volcengine.com\u002Fiam\u002Fkeymanage\u002F)\n- [Moonshot](https:\u002F\u002Fplatform.moonshot.cn\u002Fdocs\u002Fapi\u002Fchat#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B)\n- [01](https:\u002F\u002Fplatform.lingyiwanwu.com\u002Fapikeys)\n- [Llama3](https:\u002F\u002Fconsole.groq.com\u002Fdocs\u002Fquickstart)\n- [通义千问](https:\u002F\u002Fhelp.aliyun.com\u002Fzh\u002Fdashscope\u002Fdeveloper-reference\u002Fapi-details)\n\n## 获取小米音响 DID\n\n| 系统和 Shell   | Linux *sh                                      | Windows CMD 用户                        | Windows PowerShell 用户                         |\n| ------------- | ---------------------------------------------- | -------------------------------------- | ---------------------------------------------- |\n| 1、安装包     | `pip install miservice_fork`                   | `pip install miservice_fork`           | `pip install miservice_fork`                   |\n| 2、设置变量   | `export MI_USER=xxx` \u003Cbr> `export MI_PASS=xxx` | `set MI_USER=xxx`\u003Cbr>`set MI_PASS=xxx` | `$env:MI_USER=\"xxx\"` \u003Cbr> `$env:MI_PASS=\"xxx\"` |\n| 3、取得 MI_DID | `micli list`                                   | `micli list`                           | `micli list`                                   |\n| 4、设置 MI_DID | `export MI_DID=xxx`                            | `set MI_DID=xxx`                       | `$env:MI_DID=\"xxx\"`                            |\n\n- 注意不同 shell 对环境变量的处理是不同的，尤其是 powershell 赋值时，可能需要双引号来包括值。\n- 如果获取 did 报错时，请更换一下无线网络，有很大概率解决问题。\n\n## 一点原理\n\n[不用 root 使用小爱同学和 ChatGPT 交互折腾记](https:\u002F\u002Fgithub.com\u002Fyihong0618\u002Fgitblog\u002Fissues\u002F258)\n\n## 准备\n\n1. ChatGPT id\n2. 小爱音响\n3. 能正常联网的环境或 proxy\n4. python3.8+\n\n## 使用\n\n- `pip install -U --force-reinstall xiaogpt[locked]`\n- 参考我 fork 的 [MiService](https:\u002F\u002Fgithub.com\u002Fyihong0618\u002FMiService) 项目 README 并在本地 terminal 跑 `micli list` 拿到你音响的 DID 成功 **别忘了设置 export MI_DID=xxx** 这个 MI_DID 用\n- run `xiaogpt --hardware ${your_hardware} --use_chatgpt_api` hardware 你看小爱屁股上有型号，输入进来，如果在屁股上找不到或者型号不对，可以用 `micli mina` 找到型号\n- 跑起来之后就可以问小爱同学问题了，“帮我\"开头的问题，会发送一份给 ChatGPT 然后小爱同学用 tts 回答\n- 如果上面不可用，可以尝试用手机抓包，\u003Chttps:\u002F\u002Fuserprofile.mina.mi.com\u002Fdevice_profile\u002Fv2\u002Fconversation> 找到 cookie 利用 `--cookie '${cookie}'` cookie 别忘了用单引号包裹\n- 默认用目前 ubus, 如果你的设备不支持 ubus 可以使用 `--use_command` 来使用 command 来 tts\n- 使用 `--mute_xiaoai` 选项，可以快速停掉小爱的回答\n- 使用 `--account ${account} --password ${password}`\n- 如果有能力可以自行替换唤醒词，也可以去掉唤醒词\n- 使用 `--use_chatgpt_api` 的 api 那样可以更流畅的对话，速度特别快，达到了对话的体验，[openai api](https:\u002F\u002Fplatform.openai.com\u002Faccount\u002Fapi-keys), 命令 `--use_chatgpt_api`\n- 如果你遇到了墙需要用 Cloudflare Workers 替换 api_base 请使用 `--api_base ${url}` 来替换。 **请注意，此处你输入的 api 应该是'`https:\u002F\u002Fxxxx\u002Fv1`'的字样，域名需要用引号包裹**\n- `--use_moonshot_api` and other models please refer below\n- 可以跟小爱说 `开始持续对话` 自动进入持续对话状态，`结束持续对话` 结束持续对话状态。\n- 可以使用 `--tts edge` 来获取更好的 tts 能力\n- 可以使用 `--tts fish --fish_api_key \u003Cyour-fish-key> --fish_voice_key \u003Cfish-voice>` 来获取 [fish-audio](https:\u002F\u002Ffish.audio\u002F) 能力 (如何获取 fish voice 见下)\n- 可以使用 `--tts openai` 来获取 openai tts 能力\n- 可以使用 `--tts azure --azure_tts_speech_key \u003Cyour-speech-key>` 来获取 Azure TTS 能力\n- 可以使用 `--use_langchain` 替代 `--use_chatgpt_api` 来调用 LangChain（默认 chatgpt）服务，实现上网检索、数学运算..\n\ne.g.\n\n```shell\nexport OPENAI_API_KEY=${your_api_key}\nxiaogpt --hardware LX06 --use_chatgpt_api\n# or\nxiaogpt --hardware LX06 --cookie ${cookie} --use_chatgpt_api\n# 如果你想直接输入账号密码\nxiaogpt --hardware LX06 --account ${your_xiaomi_account} --password ${your_password} --use_chatgpt_api\n# 如果你想 mute 小米的回答\nxiaogpt --hardware LX06  --mute_xiaoai --use_chatgpt_api\n# 使用流式响应，获得更快的响应\nxiaogpt --hardware LX06  --mute_xiaoai --stream\n# 如果你想使用 google 的 gemini\nxiaogpt --hardware LX06  --mute_xiaoai --use_gemini --gemini_key ${gemini_key}\n# 如果你想使用自己的 google gemini 服务\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_gemini --gemini_key ${gemini_key} --gemini_api_domain ${gemini_api_domain}\n# 如果你想使用阿里的通义千问\nxiaogpt --hardware LX06  --mute_xiaoai --use_qwen --qwen_key ${qwen_key}\n# 如果你想使用 kimi\nxiaogpt --hardware LX06  --mute_xiaoai --use_moonshot_api --moonshot_api_key ${moonshot_api_key}\n# 如果你想使用 llama3\nxiaogpt --hardware LX06  --mute_xiaoai --use_llama --llama_api_key ${llama_api_key}\n# 如果你想使用 01\nxiaogpt --hardware LX06  --mute_xiaoai --use_yi_api --ti_api_key ${yi_api_key}\n# 如果你想使用 LangChain+SerpApi 实现上网检索或其他本地服务（目前仅支持 stream 模式）\nexport OPENAI_API_KEY=${your_api_key}\nexport SERPAPI_API_KEY=${your_serpapi_key}\nxiaogpt --hardware Lx06 --use_langchain --mute_xiaoai --stream --openai_key ${your_api_key} --serpapi_api_key ${your_serpapi_key}\n```\n\n使用 git clone 运行\n\n```shell\nexport OPENAI_API_KEY=${your_api_key}\npython3 xiaogpt.py --hardware LX06\n# or\npython3 xiaogpt.py --hardware LX06 --cookie ${cookie}\n# 如果你想直接输入账号密码\npython3 xiaogpt.py --hardware LX06 --account ${your_xiaomi_account} --password ${your_password} --use_chatgpt_api\n# 如果你想 mute 小米的回答\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai\n# 使用流式响应，获得更快的响应\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --stream\n# 如果你想使用 ChatGLM api\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_glm --glm_key ${glm_key}\n# 如果你想使用 google 的 gemini\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_gemini --gemini_key ${gemini_key}\n# 如果你想使用自己的 google gemini 服务\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_gemini --gemini_key ${gemini_key} --gemini_api_domain ${gemini_api_domain}\n# 如果你想使用阿里的通义千问\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_qwen --qwen_key ${qwen_key}\n# 如果你想使用 kimi\nxiaogpt --hardware LX06  --mute_xiaoai --use_moonshot_api --moonshot_api_key ${moonshot_api_key}\n# 如果你想使用 01\nxiaogpt --hardware LX06  --mute_xiaoai --use_yi_api --ti_api_key ${yi_api_key}\n# 如果你想使用豆包\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_doubao --stream --volc_access_key xxxx --volc_secret_key xxx\n# 如果你想使用 llama3\npython3 xiaogpt.py --hardware LX06  --mute_xiaoai --use_llama --llama_api_key ${llama_api_key}\n# 如果你想使用 LangChain+SerpApi 实现上网检索或其他本地服务（目前仅支持 stream 模式）\nexport OPENAI_API_KEY=${your_api_key}\nexport SERPAPI_API_KEY=${your_serpapi_key}\npython3 xiaogpt.py --hardware Lx06 --use_langchain --mute_xiaoai --stream --openai_key ${your_api_key} --serpapi_api_key ${your_serpapi_key}\n```\n\n## config.yaml\n\n如果想通过单一配置文件启动也是可以的，可以通过 `--config` 参数指定配置文件，config 文件必须是合法的 Yaml 或 JSON 格式\n参数优先级\n\n- cli args > default > config\n\n```shell\npython3 xiaogpt.py --config xiao_config.yaml\n# or\nxiaogpt --config xiao_config.yaml\n```\n\n或者\n\n```shell\ncp xiao_config.yaml.example xiao_config.yaml\npython3 xiaogpt.py\n```\n\n若要指定 OpenAI 的模型参数，如 model, temporature, top_p, 请在 config.yaml 中指定：\n\n```yaml\ngpt_options:\n  temperature: 0.9\n  top_p: 0.9\n```\n\n具体参数作用请参考 [Open AI API 文档](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fapi-reference\u002Fchat\u002Fcreate)。\nChatGLM [文档](http:\u002F\u002Fopen.bigmodel.cn\u002Fdoc\u002Fapi#chatglm_130b)\n\n## 配置项说明\n\n| 参数                  | 说明                                                                                                       | 默认值                                                                                                    | 可选值                                                           |\n| --------------------- | ---------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------- |\n| hardware              | 设备型号                                                                                                   |                                                                                                           |                                                                  |\n| account               | 小爱账户                                                                                                   |                                                                                                           |                                                                  |\n| password              | 小爱账户密码                                                                                               |                                                                                                           |                                                                  |\n| openai_key            | openai 的 apikey                                                                                             |                                                                                                           |                                                                  |\n| moonshot_api_key      | moonshot kimi 的 [apikey](https:\u002F\u002Fplatform.moonshot.cn\u002Fdocs\u002Fapi\u002Fchat#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B) |                                                                                                           |                                                                  |\n| yi_api_key            | 01 wanwu 的 [apikey](https:\u002F\u002Fplatform.lingyiwanwu.com\u002Fapikeys)                                             |                                                                                                           |                                                                  |\n| llama_api_key         | groq 的 llama3 [apikey](https:\u002F\u002Fconsole.groq.com\u002Fdocs\u002Fquickstart)                                          |                                                                                                           |                                                                  |\n| serpapi_api_key       | serpapi 的 key 参考 [SerpAPI](https:\u002F\u002Fserpapi.com\u002F)                                                          |                                                                                                           |                                                                  |\n| glm_key               | chatglm 的 apikey                                                                                          |                                                                                                           |                                                                  |\n| gemini_key            | gemini 的 apikey [参考](https:\u002F\u002Fmakersuite.google.com\u002Fapp\u002Fapikey)                                          |                                                                                                           |                                                                  |\n| gemini_api_domain     | gemini 的自定义域名 [参考](https:\u002F\u002Fgithub.com\u002Fantergone\u002Fpalm-netlify-proxy)                                |                                                                                                           |\n| qwen_key              | qwen 的 apikey [参考](https:\u002F\u002Fhelp.aliyun.com\u002Fzh\u002Fdashscope\u002Fdeveloper-reference\u002Fapi-details)                |                                                                                                           |                                                                  |\n| cookie                | 小爱账户 cookie（如果用上面密码登录可以不填）                                                              |                                                                                                           |                                                                  |\n| mi_did                | 设备 did                                                                                                    |                                                                                                           |                                                                  |\n| use_command           | 使用 MI command 与小爱交互                                                                                 | `false`                                                                                                   |                                                                  |\n| mute_xiaoai           | 快速停掉小爱自己的回答                                                                                     | `true`                                                                                                    |                                                                  |\n| verbose               | 是否打印详细日志                                                                                           | `false`                                                                                                   |                                                                  |\n| bot                   | 使用的 bot 类型，目前支持 chatgptapi,newbing, qwen, gemini                                                 | `chatgptapi`                                                                                              |                                                                  |\n| tts                   | 使用的 TTS 类型                                                                                            | `mi`                                                                                                      | `edge`、 `openai`、`azure`、`volc`、`baidu`、`google`、`minimax` |\n| tts_options           | TTS 参数字典，参考 [tetos](https:\u002F\u002Fgithub.com\u002Ffrostming\u002Ftetos) 获取可用参数                                |                                                                                                           |                                                                  |\n| prompt                | 自定义 prompt                                                                                               | `请用100字以内回答`                                                                                       |                                                                  |\n| keyword               | 自定义请求词列表                                                                                           | `[\"请\"]`                                                                                                  |                                                                  |\n| change_prompt_keyword | 更改提示词触发列表                                                                                         | `[\"更改提示词\"]`                                                                                          |                                                                  |\n| start_conversation    | 开始持续对话关键词                                                                                         | `开始持续对话`                                                                                            |                                                                  |\n| end_conversation      | 结束持续对话关键词                                                                                         | `结束持续对话`                                                                                            |                                                                  |\n| stream                | 使用流式响应，获得更快的响应                                                                               | `true`                                                                                                    |                                                                  |\n| proxy                 | 支持 HTTP 代理，传入 http proxy URL                                                                        | \"\"                                                                                                        |                                                                  |\n| gpt_options           | OpenAI API 的参数字典                                                                                      | `{}`                                                                                                      |                                                                  |\n| deployment_id         | Azure OpenAI 服务的 deployment ID                                                                          | 参考这个[如何找到 deployment_id](https:\u002F\u002Fgithub.com\u002Fyihong0618\u002Fxiaogpt\u002Fissues\u002F347#issuecomment-1784410784) |                                                                  |\n| api_base              | 如果需要替换默认的 api，或者使用 Azure OpenAI 服务                                                            | 例如：`https:\u002F\u002Fabc-def.openai.azure.com\u002F`                                                                 |\n| volc_access_key       | 火山引擎的 access key 请在[这里](https:\u002F\u002Fconsole.volcengine.com\u002Fiam\u002Fkeymanage\u002F)获取                        |                                                                                                           |                                                                  |\n| volc_secret_key       | 火山引擎的 secret key 请在[这里](https:\u002F\u002Fconsole.volcengine.com\u002Fiam\u002Fkeymanage\u002F)获取                        |                                                                                                           |\n\n## 注意\n\n1. 请开启小爱同学的蓝牙\n2. 如果要更改提示词和 PROMPT 在代码最上面自行更改\n3. 目前已知 LX04、X10A 和 L05B L05C 可能需要使用 `--use_command`，否则可能会出现终端能输出 GPT 的回复但小爱同学不回答 GPT 的情况。这几个型号也只支持小爱原本的 tts.\n4. 在 wsl 使用时，需要设置代理为 \u003Chttp:\u002F\u002Fwls 的 ip:port(vpn 的代理端口)>, 否则会出现连接超时的情况，详情 [报错：Error communicating with OpenAI](https:\u002F\u002Fgithub.com\u002Fyihong0618\u002Fxiaogpt\u002Fissues\u002F235)\n\n## QA\n\n1. 用破解么？不用\n2. 你做这玩意也没用啊？确实。。。但是挺好玩的，有用对你来说没用，对我们来说不一定呀\n3. 想把它变得更好？PR Issue always welcome.\n4. 还有问题？提 Issue 哈哈\n5. Exception: Error \u003Chttps:\u002F\u002Fapi2.mina.mi.com\u002Fadmin\u002Fv2\u002Fdevice_list?master=0&requestId=app_ios_xxx>: Login failed [@KJZH001](https:\u002F\u002Fgithub.com\u002FKJZH001)\u003Cbr>\n   这是由于小米风控导致，海外地区无法登录大陆的账户，请尝试 cookie 登录\n   无法抓包的可以在本地部署完毕项目后再用户文件夹`C:\\Users\\用户名`下面找到.mi.token，然后扔到你无法登录的服务器去\u003Cbr>\n   若是 linux 则请放到当前用户的 home 文件夹，此时你可以重新执行先前的命令，不出意外即可正常登录（但 cookie 可能会过一段时间失效，需要重新获取）\u003Cbr>\n   详情请见 [https:\u002F\u002Fgithub.com\u002Fyihong0618\u002Fxiaogpt\u002Fissues\u002F332](https:\u002F\u002Fgithub.com\u002Fyihong0618\u002Fxiaogpt\u002Fissues\u002F332)\n\n## 视频教程\n\n\u003Chttps:\u002F\u002Fwww.youtube.com\u002Fwatch?v=K4YA8YwzOOA>\n\n## Docker\n\n### 常规用法\n\nX86\u002FARM Docker Image: `yihong0618\u002Fxiaogpt`\n\n```shell\ndocker run -e OPENAI_API_KEY=\u003Cyour-openapi-key> yihong0618\u002Fxiaogpt \u003C命令行参数>\n```\n\n如\n\n```shell\ndocker run -e OPENAI_API_KEY=\u003Cyour-openapi-key> yihong0618\u002Fxiaogpt --account=\u003Cyour-xiaomi-account> --password=\u003Cyour-xiaomi-password> --hardware=\u003Cyour-xiaomi-hardware> --use_chatgpt_api\n```\n\n### 使用配置文件\n\nxiaogpt 的配置文件可通过指定 volume \u002Fconfig，以及指定参数--config 来处理，如\n\n```shell\ndocker run -v \u003Cyour-config-dir>:\u002Fconfig yihong0618\u002Fxiaogpt --config=\u002Fconfig\u002Fconfig.yaml\n```\n\n### 网络使用 host 模型\n\n```shell\ndocker run -v \u003Cyour-config-dir>:\u002Fconfig --network=host yihong0618\u002Fxiaogpt --config=\u002Fconfig\u002Fconfig.yaml\n```\n\n### 本地编译 Docker Image\n\n```shell\n docker build -t xiaogpt .\n```\n\n如果在安装依赖时构建失败或安装缓慢时，可以在构建 Docker 镜像时使用 `--build-arg` 参数来指定国内源地址：\n\n```sh\ndocker build --build-arg PIP_INDEX_URL=https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple -t xiaogpt .\n```\n\n如果需要在 Apple M1\u002FM2上编译x86\n\n```shell\n docker buildx build --platform=linux\u002Famd64 -t xiaogpt-x86 .\n```\n\n### 第三方 TTS\n\n我们目前支持是三种第三方 TTS：edge\u002Fopenai\u002Fazure\u002Fvolc\u002Fbaidu\u002Fgoogle\n\n[edge-tts](https:\u002F\u002Fgithub.com\u002Frany2\u002Fedge-tts) 提供了类似微软 tts 的能力\n[azure-tts](https:\u002F\u002Ftechcommunity.microsoft.com\u002Ft5\u002Fai-azure-ai-services-blog\u002F9-more-realistic-ai-voices-for-conversations-now-generally\u002Fba-p\u002F4099471) 提供了微软 azure tts 的能力\n[openai-tts](https:\u002F\u002Fplatform.openai.com\u002Fdocs\u002Fguides\u002Ftext-to-speech) 提供了类似 openai tts 的能力\n[fish-tts](https:\u002F\u002Ffish.audio\u002F) 提供了 fish tts 的能力\n\n#### Usage\n\n你可以通过参数 `tts`, 来启用它\n\n```yaml\ntts: edge\n```\n\nFor edge 查看更多语言支持，从中选择一个\n\n```shell\nedge-tts --list-voices\n```\n\n#### 如果你想使用 [fish-tts](https:\u002F\u002Ffish.audio\u002F)\n\n1. 注册 https:\u002F\u002Ffish.audio\u002Fzh-CN\u002Fgo-api\u002F 拿到 api key\n2. 选择你想要的声音自建声音或者使用热门声音  https:\u002F\u002Ffish.audio\u002Fzh-CN\u002Ftext-to-speech\u002F?modelId=e80ea225770f42f79d50aa98be3cedfc 其中 `e80ea225770f42f79d50aa98be3cedfc` 就声音的 key id\n3. python3 xiaogpt.py --hardware LX06 --account xxxx --password xxxxx --use_chatgpt_api --mute_xiaoai --stream --tts fish --fish_api_key xxxxx --fish_voice_key xxxxx\n4. 或者在 xiao_config.yaml 中配置\n\n```yaml\ntts: fish \n# TTS 参数字典，参考 https:\u002F\u002Fgithub.com\u002Ffrostming\u002Ftetos 获取可用参数\ntts_options: {\n    \"api_key\": \"xxxxx\",\n    \"voice\": \"xxxxxx\"\n}\n\n``` \n\n#### 在容器中使用 edge-tts\u002Fazure-tts\u002Fopenai-tts\u002Fvolc\u002Fgoogle\u002Fbaidu\u002Ffish\n\n由于 Edge TTS 启动了一个本地的 HTTP 服务，所以需要将容器的端口映射到宿主机上，并且指定本地机器的 hostname:\n\n```shell\ndocker run -v \u003Cyour-config-dir>:\u002Fconfig -p 9527:9527 -e XIAOGPT_HOSTNAME=\u003Cyour ip> yihong0618\u002Fxiaogpt --config=\u002Fconfig\u002Fconfig.yaml\n```\n\n注意端口必须映射为与容器内一致，XIAOGPT_HOSTNAME 需要设置为宿主机的 IP 地址，否则小爱无法正常播放语音。\n\n## 推荐的类似项目\n\n- [XiaoBot](https:\u002F\u002Fgithub.com\u002Flongbai\u002Fxiaobot) -> Go 语言版本的 Fork, 带支持不同平台的 UI\n- [MiGPT](https:\u002F\u002Fgithub.com\u002Fidootop\u002Fmi-gpt) -> Node.js 版，支持流式响应和长短期记忆\n\n## 感谢\n\n- [xiaomi](https:\u002F\u002Fwww.mi.com\u002F)\n- [PDM](https:\u002F\u002Fpdm.fming.dev\u002Flatest\u002F)\n- [Tetos](https:\u002F\u002Fgithub.com\u002Ffrostming\u002Ftetos) TTS 云服务支持\n- @[Yonsm](https:\u002F\u002Fgithub.com\u002FYonsm) 的 [MiService](https:\u002F\u002Fgithub.com\u002FYonsm\u002FMiService)\n- @[pjq](https:\u002F\u002Fgithub.com\u002Fpjq) 给了这个项目非常多的帮助\n- @[frostming](https:\u002F\u002Fgithub.com\u002Ffrostming) 重构了一些代码，支持了`持续会话功能`\n\n## 赞赏\n\n谢谢就够了\n","xiaogpt 项目使用户能够通过小米AI音箱与ChatGPT及其他大型语言模型（LLMs）进行交互。它支持多种AI类型，包括但不限于ChatGPT、New Bing、通义千问等，并且主要使用Python编写。该项目允许用户通过简单配置将小米音箱连接到选定的AI服务上，从而实现语音提问和获取答案的功能。适合希望拓展智能家居设备功能，尤其是对自然语言处理技术感兴趣的用户或开发者在家庭环境中使用。安装过程涉及设置环境变量及获取必要的硬件标识符，操作说明详尽，便于按照指示完成部署。",2,"2026-06-11 03:35:51","high_star"]