feat(openvela-smarthome): initial MVP for natural-language smart-home control on openvela ai_agent.
初赛 MVP:
- 注册 3 个模拟智能家居工具(light_control / read_temp_humidity / device_status_query),按 openvela ai_agent 的工具注册模式实现。
- 自然语言闭环:意图理解 → 工具调用 → 结果反馈(ReAct 式),带模糊指令澄清。
- 确定性命令校验门(设备存在/在线、动作合法、参数在域、白名单)+ 基本异常处理。
- 可插拔多 LLM 后端(DeepSeek / Kimi / 通义千问,OpenAI 兼容,Key 走环境变量不入库)。
- 两套实现同一套语义:host/(Python,零依赖,可无模拟器直接跑,含离线 mock 与真实 LLM 两条路径);openvela_tools/(C,注册进 ai_agent,跑 QEMU goldfish-arm64,宿主机 cJSON 自测通过)。
- Apache-2.0 + NOTICE + 第三方依赖声明;README/架构/调研文档;DeepSeek 实跑与离线复现 demo 日志。
Signed-off-by: 林晨 (Leo Cheng) leo-cheng@vip.qq.com
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802047560号
openvela-smarthome · 基于 openvela 智能体的自然语言智能家居控制系统
面向 2026 CCF 开源创新大赛「基于 openvela 智能体 的智能家居控制系统」 的初赛参赛作品。
一句话:用自然语言控制模拟智能家居设备——「打开客厅的灯」「现在客厅多少度」「全部设备什么状态」, openvela 智能体(ai_agent)理解意图、调用工具、反馈结果,全程可在 QEMU goldfish-arm64 模拟器 上跑,无需硬件。
亮点
light_control灯光开关/亮度、read_temp_humidity温湿度读取、device_status_query设备状态查询。tool_guard。host/(Python,零第三方依赖)——无模拟器即可一键跑通全闭环,作 Demo 与行为基准;openvela_tools/(C)——注册进 openvela ai_agent、跑在 QEMU goldfish-arm64 上的设备端落地。快速开始(60 秒,无需模拟器、无需硬件)
方式一:离线一键跑(无需任何 API Key)
用离线规则后端跑完整演示脚本,覆盖开关灯 / 读温湿度 / 查状态 / 越界被拦,日志落到
demo/logs/。 适合评审在没有 Key 的机器上复现闭环。方式二:接真实 LLM(推荐,展示真实推理)
也可不写 config.env,直接用环境变量:
交互示例:
方式三:设备端在 openvela 模拟器上运行
见
openvela_tools/INTEGRATION.md:把 C 工具注册进open-vela/packages_ai_agent,用官方build.sh/emulator.sh在 QEMU goldfish-arm64 上运行。项目结构
架构一览
细节见
docs/architecture.md。openvela ai_agent 的调研与适配说明见docs/openvela-agent-notes.md。LLM 后端配置
LLM_PROVIDERdeepseekDEEPSEEK_API_KEYdeepseek-chathttps://api.deepseek.comkimiMOONSHOT_API_KEYmoonshot-v1-8khttps://api.moonshot.cn/v1qwenDASHSCOPE_API_KEYqwen-turbohttps://dashscope.aliyuncs.com/compatible-mode/v1mock可用
LLM_MODEL/LLM_BASE_URL覆盖默认值。设备端在模拟器里用set_llm <provider> <key>配置。运行环境
许可证与合规
Apache-2.0,见
LICENSE/NOTICE。原创为主,第三方依赖仅为 平台 SDK 与通用 JSON 库(cJSON, MIT),详见THIRD_PARTY.md。