AI家居咨询配置:从零搭建可对话的智能家居助手

想自己搭一个能回答家居设备问题的 AI 助手,核心是把大模型接口、家居设备信息和对话逻辑串起来。
本文以一台普通云服务器为例,演示从零完成 AI家居咨询配置 的完整流程,适合零基础用户按步骤操作。

先确认你的使用场景和准备条件

这套配置适合以下场景:你有一台能联网的 Linux 服务器,希望用自然语言查询设备状态或获取操作建议,比如“客厅灯怎么调色温”“空调滤网多久清洗”。
不需要购买额外硬件,但需要准备三样东西:

  • 一台 2 核 4G 以上的云服务器,系统建议 Ubuntu 22.04 或 Debian 12
  • 一个大模型 API Key,例如 OpenAI 兼容接口或国内可用的模型服务
  • 家居设备的控制接口文档,或者一份设备清单表格(设备名、房间、可控操作)

登录服务器后先确认基础环境:

cat /etc/os-release
python3 --version
pip3 --version

如果 Python 版本低于 3.10,先升级;
没有 pip 的用 apt install python3-pip 安装。

安装依赖并准备项目目录

在 /opt 下创建项目目录,避免和系统文件混在一起:

mkdir -p /opt/ai-home-assistant
cd /opt/ai-home-assistant
python3 -m venv venv
source venv/bin/activate
pip install fastapi uvicorn openai python-dotenv

这里用 FastAPI 提供 HTTP 接口,openai 库兼容大多数大模型服务。
安装完成后用 pip list 确认包已存在。

接着创建环境变量文件,存放 API Key 和模型地址:

cat > .env <<'EOF'
API_KEY=你的密钥
BASE_URL=https://api.openai.com/v1
MODEL_NAME=gpt-4o-mini
EOF

把 BASE_URL 换成你实际使用的服务地址,模型名也按服务商文档填写。
不要把这个文件提交到公开仓库。

编写家居咨询对话配置

新建 main.py,核心是把设备清单作为系统提示词的一部分,让模型在回答时参考真实设备信息:

import os
from fastapi import FastAPI
from pydantic import BaseModel
from openai import OpenAI
from dotenv import load_dotenv

load_dotenv()
client = OpenAI(api_key=os.getenv("API_KEY"), base_url=os.getenv("BASE_URL"))
app = FastAPI()

DEVICE_INFO = """
客厅:吸顶灯(支持开关、亮度、色温),空调(支持开关、温度、模式)
卧室:床头灯(支持开关、亮度),窗帘(支持开合百分比)
"""

class Query(BaseModel):
    question: str

@app.post("/ask")
def ask(q: Query):
    resp = client.chat.completions.create(
        model=os.getenv("MODEL_NAME"),
        messages=[
            {"role": "system", "content": f"你是家居咨询助手,根据以下设备清单回答:{DEVICE_INFO}"},
            {"role": "user", "content": q.question}
        ]
    )
    return {"answer": resp.choices[0].message.content}

保存后用 uvicorn main:app --host 0.0.0.0 --port 8000 启动。
如果提示端口占用,把 8000 改成 8001 或其他空闲端口。

避坑:配置中最容易出错的三个地方

API Key 读取为空:用 python3 -c "from dotenv import load_dotenv; load_dotenv(); import os; print(os.getenv('API_KEY'))" 检查是否能打印出密钥。
如果为空,确认 .env 和 main.py 在同一目录。

模型返回超时或连接失败:先 curl 测试服务地址是否可达:

curl -I https://你的服务地址/v1/models

如果返回 401,说明密钥无效;
返回超时,检查服务器出网和 DNS。

中文回答乱码或截断:在请求参数中加上 max_tokens=500 和 temperature=0.3,避免回答过长被截断,同时降低随机性。

验证配置是否生效

服务启动后,用 curl 发一条测试问题:

curl -X POST http://127.0.0.1:8000/ask \
  -H "Content-Type: application/json" \
  -d '{"question":"客厅灯怎么调暗"}'

预期返回一段包含“亮度”或“调光”的 JSON 文本。
如果返回 500,查看终端日志,重点看 API Key 和模型名是否正确。

再换一个设备问题,比如“卧室窗帘能开一半吗”,确认助手能引用设备清单中的能力,而不是泛泛回答。
两次回答都正常,说明 AI家居咨询配置 的基础链路已经跑通。

常见疑问

没有公网 IP 可以吗? 可以,先在服务器本地用 127.0.0.1 测试,确认逻辑正常后再考虑用 Nginx 反向代理或内网穿透暴露服务。

设备清单要写多细? 至少写清设备名、所在房间和可控操作。
越具体,模型回答越准确,但不要写入密码或敏感信息。

能不能接入真实设备控制? 本文只做咨询问答,不直接下发控制指令。
如果要控制设备,需要额外对接厂商 API 或本地网关,并增加权限校验。

完成以上步骤后,你已经有一个能回答家居设备问题的本地助手。
后续可以按房间拆分提示词、增加历史对话记录,或把接口接到网页表单上,逐步完善自己的 AI家居咨询配置。

分享到:
上一篇
AI穿搭咨询配置:从零搭建可用的穿搭建议服务
下一篇
AI旅行咨询配置:从零搭建智能问答助手的完整流程
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意