❌ 登录验证失败的请看这里
如果你在使用时遇到提示 ❌ 小米账号登录失败,请按以下步骤操作:
1. 登录小米账号
在电脑上使用 Chrome 浏览器登录小米账号官网 👉 https://account.xiaomi.com
2. 获取 passToken
登录成功后,在小米账号官网:
- 网页空白处右键,选择【检查】打开开发者控制台
- 切换到 Application/应用栏,找到 Cookies 选项
- 在 Cookies 列表中找到
passToken,然后复制它的值
[!CAUTION] 注意
passToken相当于你的账号密码,不要泄漏给任何人!🚨
3. 更新 .mi.json 文件
在项目根目录新建 .mi.json 文件,然后写入下面的内容并保存:
{
"mina": {
"pass": {
"passToken": "把你上面复制的 passToken 填到这里"
}
},
"miiot": {
"pass": {
"passToken": "把你上面复制的 passToken 填到这里"
}
}
}
然后重新运行该项目,即可正常登录使用。
如果你使用 Docker 的方式运行 MiGPT,可以将本地的 .mi.json 文件绑定到 Docker 内的 /app/.mi.json 路径使其生效,示例:
docker run -d --env-file $(pwd)/.env \
-v $(pwd)/.migpt.js:/app/.migpt.js \
-v $(pwd)/.mi.json:/app/.mi.json \ # 👈 注意这里
idootop/mi-gpt:latest
其他方案
最后,你也可以选择迁移至不再依赖任何小米账号/接口的刷机解决方案:
👉 https://github.com/idootop/open-xiaoai
Enjoy ;)
相关 issue:
- https://github.com/idootop/migpt-next/issues/2
- https://github.com/al-one/hass-xiaomi-miot/issues/2465
太赞了!终于解决了。
现在报 ❌ 没有找到账号或密码,请检查是否已配置相关参数:userId, password ❌ 没有找到账号或密码,请检查是否已配置相关参数:userId, password ❌ 没有找到账号或密码,请检查是否已配置相关参数:userId, password ❌ 刷新登录凭证失败,请检查账号密码是否仍然有效。
这两个参数需要设置在 .migpt.js 里。
收到,谢谢
终于解决了。
昨天尝试了下 cookie登陆,重新启动mi gpt docker,还是报账号验证的问题...这个解决方法依旧有效吗?
赞赞赞,非常不错,解决了
太棒了,真的太多谢老哥了
按照这个方法异地登录问题解决了,但是启动还是有报错,请问有人知道怎么解决吗。
null,"description":"成功","location":"","securityStatus":16,"pwd":0,"child":0,"desc":"成功"}
2025/05/12 02:34:25 Speaker ❌ 初始化 Mi Services 失败
2025/05/12 02:34:25 database ❌ Error: ❌ Assertion failed
at _LoggerManager.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:270:13)
at __Logger.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:307:19)
at AISpeaker.initMiServices (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:487:17)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async AISpeaker.run (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:759:5)
node:events:497
throw er; // Unhandled 'error' event
^
Error [ERR_IPC_CHANNEL_CLOSED]: Channel closed
at target.send (node:internal/child_process:754:16)
at file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/controller/dist/index.js:11:19
at new Promise (<anonymous>)
at killChild (file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/controller/dist/index.js:6:12)
at stop (file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/controller/dist/index.js:31:11)
at file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/server/dist/index.js:275:15
at Layer.handle [as handle_request] (/usr/local/lib/node_modules/migpt-server/node_modules/express/lib/router/layer.js:95:5)
at next (/usr/local/lib/node_modules/migpt-server/node_modules/express/lib/router/route.js:149:13)
at Route.dispatch (/usr/local/lib/node_modules/migpt-server/node_modules/express/lib/router/route.js:119:3)
at Layer.handle [as handle_request] (/usr/local/lib/node_modules/migpt-server/node_modules/express/lib/router/layer.js:95:5)
Emitted 'error' event on ChildProcess instance at:
at node:internal/child_process:758:35
at process.processTicksAndRejections (node:internal/process/task_queues:77:11) {
code: 'ERR_IPC_CHANNEL_CLOSED'
}
Node.js v20.14.0
请问,配饰异地登录后, 启动命名中的 .env 需要配置什么吗,还是空着就可以,我空着 程序会有报错。
"result":"ok","code":0,"captchaUrl":null,"description":"成功","location":"","securityStatus":16,"pwd":0,"child":0,"desc":"成功"}
2025/05/12 02:56:08 Speaker ❌ 初始化 Mi Services 失败
2025/05/12 02:56:08 database ❌ Error: ❌ Assertion failed
at _LoggerManager.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:270:13)
at __Logger.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:307:19)
at AISpeaker.initMiServices (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:487:17)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async AISpeaker.run (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:759:5)
请问,配饰异地登录后, 启动命名中的 .env 需要配置什么吗,还是空着就可以,我空着 程序会有报错。
"result":"ok","code":0,"captchaUrl":null,"description":"成功","location":"","securityStatus":16,"pwd":0,"child":0,"desc":"成功"} 2025/05/12 02:56:08 Speaker ❌ 初始化 Mi Services 失败 2025/05/12 02:56:08 database ❌ Error: ❌ Assertion failed at _LoggerManager.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:270:13) at __Logger.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:307:19) at AISpeaker.initMiServices (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:487:17) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async AISpeaker.run (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:759:5)
重启docker还是报错
2025/05/12 03:07:51 Speaker ❌ 初始化 Mi Services 失败
2025/05/12 03:07:51 database ❌ Error: ❌ Assertion failed
at _LoggerManager.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:270:13)
at __Logger.assert (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:307:19)
at AISpeaker.initMiServices (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:487:17)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async AISpeaker.run (file:///usr/local/lib/node_modules/migpt-server/node_modules/mi-gpt/dist/index.js:759:5)
node:events:497
throw er; // Unhandled 'error' event
^
Error [ERR_IPC_CHANNEL_CLOSED]: Channel closed
at target.send (node:internal/child_process:754:16)
at file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/controller/dist/index.js:11:19
at new Promise (<anonymous>)
at killChild (file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/controller/dist/index.js:6:12)
at run (file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/controller/dist/index.js:23:11)
at file:///usr/local/lib/node_modules/migpt-server/node_modules/@migptgui/server/dist/index.js:270:15
Emitted 'error' event on ChildProcess instance at:
at node:internal/child_process:758:35
at process.processTicksAndRejections (node:internal/process/task_queues:77:11) {
code: 'ERR_IPC_CHANNEL_CLOSED'
}
Node.js v20.14.0
端口: 36592
登录认证: 已启用
秘密路径: 已启用
@nmww 你使用的 lmk123/migpt-server 是另外一个项目(不是我写的),其配置方式与原版的 MiGPT 不同。
- 请到对应 Github 仓库 lmk123/migpt-server下向原作者提 issue
- 或者按照本项目教程,使用原版
idootop/mi-gptDocker 镜像运行
请问小爱音响部署成功了,但是在运行的时候,提示报错 OpenAI LLM响应异常 BadRequestError,请问是什么原因导致的,应该怎么修复呢,是不是硅基流动平台的配置问题?盼回
@zjy161210 无关问题请新开 issue 讨论,否则不予回复。
响应异常 BadRequestError,是你的大模型服务配置有问题,检查你的 key 和 base_url 设置是否可用。
nice!!
nice job!!
这个应该写到 FAQ 里啊啊啊!害我干等一个多小时...
登录验证失败的请看这里,感谢作者。 一直无法获得DID,被整emo了。 这个token能代替did吧
@nnssz token ≠ did,did 是你的小爱音箱设备名称/序列号/ mac 地址等。最好打开 debug 看下实际的设备 id 是多少,FAQ 里有教程。
感谢作者及时解惑。 我的情况是,运行 micli list 无法获得did。用户名 和密码都是对的,可以登录小米的网站。 root@o10:~# micli list Exception on login 2xxxxxx2: 'userId' Traceback (most recent call last): File "/usr/lib/python3.11/site-packages/miservice/miaccount.py", line 73, in login self.token["userId"] = resp["userId"] ~~~~^^^^^^^^^^ KeyError: 'userId' Error https://api.io.mi.com/app/home/device_list: Login failed
亲测成功,感谢大佬