在智能家居日益普及的今天,小米的小爱音箱凭借其出色的语音交互能力和丰富的智能家居控制功能,已经成为许多家庭的标配设备。然而,传统的小爱同学在对话深度和个性化体验上仍有提升空间。今天,我将为大家介绍如何通过 Mi-GPT 项目,将 ChatGPT 的强大语言理解能力与小爱音箱完美结合,打造一个更加智能、贴心的家庭语音助手。

项目简介:Mi-GPT 是什么?

Mi-GPT 是一个开源项目,它通过将小米的小爱音箱与 OpenAI 的 ChatGPT 以及豆包(一个智能语音平台)整合在一起,让你的智能家居设备不仅能理解语音指令,还能根据上下文进行更自然、更智能的交流。目前该项目在 GitHub 上已经获得了 4.7K 星标,受到了广泛关注。

想象一下,你对小爱同学说:"我今天有点累。"然后它不仅会播放轻松的音乐,还会根据你的喜好调整灯光,甚至用更贴心的语音和你聊天,就像一个懂你的好朋友。

核心功能亮点

Mi-GPT 为小爱音箱带来了诸多令人兴奋的新功能:

准备工作

在开始搭建前,你需要准备以下内容:

  1. 硬件设备

    • 小米小爱音箱(推荐使用小爱音箱 Pro 或 Play 增强版)
    • 一台运行 Linux/MacOS 的电脑(Windows 可能会有兼容性问题)
  2. 软件环境

    • Node.js 环境(建议安装最新 LTS 版本)
    • Docker(可选,适合不想配置复杂环境的用户)
    • pnpm(高性能的 Node.js 包管理工具)
  3. 账号与 API

    • 小米账号(注意需要小米 ID,不是手机号或邮箱)
    • OpenAI API 密钥(用于接入 ChatGPT)
    • 可选:豆包 TTS 接口(如需使用自定义音色)

安装与配置步骤

方法一:Docker 安装(推荐新手)

对于不熟悉代码环境的用户,Docker 是最简单的方式:

  1. 克隆项目仓库:

    git clone https://github.com/idootop/mi-gpt.git
    
  2. 修改配置文件:

    • .migpt.example.js 重命名为 .migpt.js 并修改参数
    • .env.example 重命名为 .env 并填写 OpenAI API 密钥
  3. 启动 Docker 容器:

    docker run -d --env-file $(pwd)/.env -v $(pwd)/.migpt.js:/app/.migpt.js idootop/mi-gpt:latest
    

    注意:Windows 用户需要将 $(pwd) 替换为绝对路径

方法二:Node.js 安装(适合开发者)

如果你是一名开发者,可以通过 NPM 来安装和启动 MiGPT:

  1. 安装依赖:

    npm install mi-gpt
    
  2. 创建并启动 MiGPT 实例:

    import { MiGPT } from "mi-gpt";
    
    async function main() {
      const client = MiGPT.create({
        speaker: {
          userId: "你的小米ID", // 注意:不是手机号或邮箱
          password: "你的密码",
          did: "小爱音箱Pro", // 你的小爱音箱名称
        },
      });
      await client.start();
    }
    
    main();
    

配置文件详解

.migpt.js 是关键配置文件,主要包含以下参数:

speaker: {
    userId: "xxxx", // 小米ID(在个人信息中查看)
    password: "xxxx", // 账号密码
    did: "小爱音箱Play增强版", // 小爱音箱名称
    callAIKeywords: ["请", "你", "傻妞"], // 触发AI回复的关键词
    wakeUpKeywords: ["打开", "进入", "召唤"], // 进入AI唤醒状态的关键词
    exitKeywords: ["关闭", "退出", "再见"], // 退出AI唤醒状态的关键词
    streamResponse: false, // 是否启用流式响应(部分型号需关闭)
}

.env 文件则主要配置 OpenAI 相关参数:

OPENAI_MODEL=gpt-3.5-turbo
OPENAI_API_KEY=你的API密钥
# 注意URL后面不需要带 chat/completions
OPENAI_BASE_URL=API基础URL

使用技巧与体验优化

成功安装后,你可以通过以下语音命令顺序与小爱互动:

  1. "小爱同学"(唤醒小爱)
  2. "你在干什么"(触发AI回复)
  3. "小爱同学"(再次唤醒)
  4. "召唤傻妞"(进入AI模式)

为了获得最佳体验,这里有一些实用技巧:

  1. 解决抢答问题:部分型号小爱会在AI回答前抢话,这是正常现象,可以通过刷机解决
  2. 流式响应优化:如果发现小爱没有播放完整句子,可以尝试关闭流式响应
  3. 自定义唤醒词:修改 callAIKeywords 可以设置你喜欢的唤醒词
  4. 角色扮演:通过修改 bot.profile 可以自定义小爱的人设和互动方式

常见问题解决

在安装和使用过程中,你可能会遇到以下问题:

  1. 登录小米账号失败

    • 确认账号密码正确(小米 ID 非手机号或邮箱)
    • 网络环境异常需同意小米的「个人数据跨境传输」协议
  2. 小爱音箱没有调用 AI 回复

    • 默认只回复以唤醒词开头的消息,可以自定义唤醒词列表
  3. 启动 docker 提示 ERR_MODULE_NOT_FOUND

    • 在 Windows 终端下使用绝对路径配置 .env 和 .migpt.js 文件
  4. 本地启动失败

    • 确保执行了完整的构建步骤:pnpm install && pnpm build && pnpm start

结语

Mi-GPT 代表了智能家居未来的发展方向 - 设备不再是简单的执行者,而是能够理解用户需求、有温度的智能体(Agent)。随着技术的进步,我们可以期待:

通过 Mi-GPT,我们不仅升级了小爱音箱的功能,更是重新定义了人机交互的方式。它让冰冷的科技设备有了温度,让智能家居真正变得"智能"起来。

如果你对智能家居和AI技术感兴趣,不妨尝试搭建属于自己的 Mi-GPT 系统。相信这个过程中,你不仅能获得一个更强大的语音助手,还能深入理解AI与物联网的融合应用。

项目地址https://github.com/idootop/mi-gpt

注意:本项目仅供学习和研究目的,使用时应遵守相关法律法规。

希望这篇教程能帮助你成功搭建 Mi-GPT 系统,享受智能家居带来的便利与乐趣!如果你在实施过程中遇到任何问题,欢迎在评论区留言讨论。