LLM助手集成

这是一个为Home Assistant设计的自定义集成,提供与OpenAI兼容的LLM端点进行语音对话的功能,并支持MCP协议。

  • by rwfsmith
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 rwfsmith/llm_assistant

使用说明

LLM助理-家庭助理定制集成

此存储库包含两个可通过HACS安装的Home Assistant自定义集成:

集成 目的
法学硕士助理 (llm_assistant) 支持MCP的OpenAI兼容语音对话代理
科科罗TTS (kokoro_tts) 通过本地文本转语音 Kokoro快速API 支持ROCm(AMD GPU)

使用AMD GPU(ROCm)加速运行Kokoro FastAPI的Docker设置包含在 docker/kokoro-rocm/.


法学硕士助理

一个会话代理,可以连接到任何兼容OpenAI的LLM端点(LM Studio、Ollama、llama.cpp、vLLM、OpenRouter等),并具有完整的 MCP(模型上下文协议) 服务器支持。

特性

  • 🔌 OpenAI兼容端点 –适用于任何暴露的服务器 /v1/chat/completions
  • 🤖 模型选择 –动态获取可用模型,并允许您从下拉列表中进行选择
  • 🔧 MCP服务器配置 –支持两者 临时MCP (基于URL)和 LM Studio插件 参考文献mcp/...)
  • 🏠 Home Assistant工具调用 –与HA的LLM API完全集成(控制灯、开关等)
  • 🎙️ 语音/TTS流媒体 –低延迟辅助管道的流式响应
  • 🧠 LM Studio本机API –调用的可选模式 /api/v1/chat 这样LM Studio就可以端到端地编排MCP工具的执行
  • ⚙️ 每个代理配置 –同一服务器上的多个代理,每个代理都有自己的模型和MCP设置

安装

通过HACS(推荐)

  1. 打开HACS→ 集成
  2. 点击⋮菜单→ 自定义仓库
  3. 添加 https://github.com/rwfsmith/llm_assistant 作为类型 整合
  4. 搜索 法学硕士助理 然后单击 下载
  5. 重新启动家庭助理

手册

复制 custom_components/llm_assistant 文件夹到您的HA custom_components 目录并重新启动。


配置

  1. 首选 设置→ 设备和服务→ 添加集成
  2. 搜索 法学硕士助理
  3. 进入 服务器网址 (例如。 http://192.168.1.100:1234/v1)
    • 对于LM工作室: http://localhost:1234/v1
    • 对于Ollama: http://localhost:11434/v1
  4. 可选择输入 API密钥 (本地服务器留空)
  5. 可选启用 LM Studio本机API 使用LM Studio /api/v1/chat MCP编排的端点

保存服务器条目后,添加一个或多个 对话代理 通过子条目流:

  1. 点击 添加代理 在集成卡上
  2. 选择一个 模型 从下拉列表中(从服务器实时获取)
  3. 配置系统提示、温度、HA LLM API等。
  4. 添加 MCP服务器 (可选):

MCP服务器类型

类型 何时使用 必填字段
ephemeral_mcp 远程/HTTP MCP服务器,一次性请求 标签,URL
plugin LM Studio中预配置的服务器 mcp.json 插件ID(例如。 mcp/playwright)

注: 临时MCP要求在LM Studio服务器设置中启用“允许按请求MCP”。
插件MCP要求启用“允许从MCP.json调用服务器”。


LM Studio本机API模式

当 使用LM Studio本机API 如果在服务器条目上启用,则集成将从标准OpenAI切换 /v1/chat/completions LM Studio的端点 /api/v1/chat 终点。在此模式下:

  • MCP服务器作为 integrations 在请求正文中
  • LM 工作室 执行 MCP工具在返回最终响应之前进行内部调用
  • 响应格式使用LM Studio的 output 数组(通过此集成透明地处理)
  • HA工具调用仍然与MCP工具并行工作

示例:LM工作室与剧作家MCP

  1. 安装 剧作家mcp 并将其添加到LM Studio mcp.json
  2. 在LM Studio设置中启用“允许从mcp.json调用服务器”
  3. 在代理配置中,添加一个MCP服务器:
    • 类型: plugin
    • 插件ID: mcp/playwright

代理现在可以代表用户浏览网页。


致谢


科科罗TTS

一个家庭助理TTS(文本转语音)平台,使用 Kokoro快速API -本地、高质量的神经TTS服务器,带有与OpenAI兼容的API。

特性

  • 🗣️ 高品质的本地TTS –Kokoro-82M型号,无云依赖
  • 🎙️ 50+个声音 –美式英语、英式英语、日语、普通话等
  • 🔀 语音混合 –混合声音(例如。 af_bella+af_sky)为了获得独特的音色
  • ⚡ ROCm支持 –通过附带的Docker设置加速AMD GPU
  • 🎚️ 每次通话选项 –覆盖自动或语音管道的语音和速度
  • 🔊 多种格式 –MP3、WAV、FLAC、Opus、PCM
  • 🔌 怀俄明州协议 –端口内置代理 10200 用于本地HA语音管道集成

安装

相同的HACS自定义存储库: https://github.com/rwfsmith/llm_assistant → 安装 科科罗TTS.

服务器设置(ROCm/AMD GPU)

看 docker/kokoro-rocm/README.md 获取完整的AMD GPU设置指南。

快速入门(在安装了ROCm驱动程序的Linux主机上):

cd docker/kokoro-rocm
bash setup.sh

TTS API将在 http://<HOST_IP>:8880,以及怀俄明州港口代理 10200.

HA配置

怀俄明州(推荐): 设置→ 设备和服务→ 添加集成→ 怀俄明 → 主机IP+端口 10200.

HTTP(Kokoro TTS自定义集成): 设置→ 设备和服务→ 添加集成→ 科科罗TTS → enter http://<HOST_IP>:8880,然后从实时下拉菜单中选择默认语音、速度和格式。

在自动化中的应用

service: tts.speak
target:
  entity_id: tts.kokoro_tts
data:
  media_player_entity_id: media_player.living_room
  message: "The front door has been opened."
  options:
    voice: af_bella
    speed: 1.1

语音参考

前缀 语言
af_* 美式英语(女)
am_* 美式英语(男)
bf_* 英式英语(女)
bm_* 英式英语(男)
jf_* 日语(女)
jm_* 日语(男)
zf_* 普通话(女)
zm_* 普通话(男)