与当下热门的AI类似,曾几何时,物联网(Internet of thing)实现“万物互联"给人类带来了无限的遐想。但是往往事与愿违,美好的愿景并没有如约而至。十几年来,物联网远没有实现”万物互联“的美好愿景。
随着chatGPT 为主的AI热潮,人们又一次提出了 AIoT (artificial intelligence of thing) 的新概念。AI 会给IoT 带来新的生机么?这是有趣的话题。
多年的实践表明,IoT 实现的难点在于没有广泛被接纳的IoT 协议,目前只有各个公司内部形成的各种IoT 生态,比如小米,华为,苹果的智能设备,它们自成一体。 它们成为了一个又一个信息孤岛,令人沮丧。
哪怕是不同公司的遥控器都互不兼容。出于各自的商业利益,人类难以达成共识。
各种自主无人系统的快速发展,增加了机器的内生智能,使智能机器之间的功能协作成为可能。然而,传统的智能机器协作协议在功能、效率和可扩展性方面存在局限性。此外,现有的智能机器协作研究尚未接近一种统一的范式,以促进机器之间以及机器与人类之间的交互。
在我看来,chatGPT 的出现,为IoT 行业打开了另一条道路-”让机器说人话“.
在人类文明进步过程中,自然语言成为人类最为广泛接纳的交流语言,相比于机器语言而言,人类语言非常丰富,对语法和语义的要求并严格。如果让设备采用人类的语言来交流,能够最大程度地实现设备之间的相互交流和理解。
自然语言的通信仍然需要底层的协议承载,最简单和普及的通信协议莫过于TCP/IP 协议了,但是考虑到物联网设备需要点对多点通信,所以使用基于MQTT 的PUB/SUB 通信协议最为合适。
本文记录了如何使用自然语言/MQTT作为物联网设备的通信协议。
实验的主要内容
- MQTT Broker :mosquitto
- 大语言模型:本地部署ollama/llama-3 ,远程调用kimi。
- 程序设计语言 :Python
准备工作
安装mosquitto
要在 Windows 上安装 Mosquitto,请从 mosquitto(64 位或 32 位)中选择所需的安装文件,下载并运行它。
具体过程请参考:
How to Install Mosquitto MQTT Broker on Windows
运行
PS C:\Windows\system32> mosquitto
订阅
PS C:\Users\Yao> mosquitto_sub -i mosq_sub1 -t "Test topic" -d
发布
PS C:\Users\Yao> mosquitto_pub -i mosq_pub1 -t "Test topic" -m "Test message" -d
python MQTT Client
安装 paho-mqtt
pip3 install -i https://pypi.doubanio/simple paho-mqtt
发布
# python 3.6
import random
import time
from paho.mqtt import client as mqtt
broker = '127.0.0.1'
port = 1883
topic = "python/mqtt"
# generate client ID with pub prefix randomly
client_id = f'python-mqtt-{random.randint(0, 1000)}'
def connect
发布评论