利用大语言模型(KIMI)构建智能产品的控制信息模型

news2024/12/29 9:43:46

          数字化的核心是数字化建模,为一个事物构建数字模型是一项十分复杂的工作。不同的应用场景,对事物的关注重点的不同的。例如,对于一个智能传感器而言,从商业的角度看,产品的信息模型中应该包括产品的类型,名称,制造商,技术规格,产品图片,3D模型,安全论证等信息。而对于应用工程师而言,关心的是产品的接口,协议和控制方法。产品的商业信息和使用信息是不同的。信息模型也不同。

   于是,产品的商业信息和使用信息采用的建模方式和标准也是不同的。产品信息主要标准包括GS-1,ETIM,ECL@SS。而控制模型包括OPC UA 和工业4.0 管理壳(AAS)。

  本文探讨在ETIM 模型的基础上扩展基于JSON 的控制信息模型。并且通过转换软件将JSON 控制模型转换成OPCUA 模型

     采用JSON 的原因是JSON 更具有可读性。适合大语言模型构建产品模型。笔者认为 大语言模型是生成产品信息模型的最佳工具。

智能产品信息模型   

  对于智能化技术产品而言,产品的信息包含下面几个方面:

  1. 产品的基本信息
  2. 产品的技术指标
  3. 产品的操作过程
  4. 产品的几何图形
  5. 产品的商务信息

   这些信息除了商务信息之外,通常包含在产品的数据表(DataSheet) 中,对于复杂的智能产品,为了帮助用户使用产品,还提供了辅助的技术文档。 商务信息在销售部门的报价单或者ERP 系统中。

           数字化的主要工作之一是构建生产过程中所有资产的数字化模型。产品的基本信息,技术指标和几何图形通常包含在产品分类目录中(例如ETIM,GS-1,ECL@SS)。产品的商务信息包含在电子商务平台信息模型中。而产品的操作过程包含在技术文档中。

  产品操作过程的模型

  在工业4.0 的相关标准中,数字资产的数字化模型被称为资产管理壳(AAS),其中包含了操作数据和服务,这是模型能够转换成自动控制系统中的信息模型,例如OPCUA 信息模型。

       资产管理壳和OPC UA 是相对比较复杂的形式化信息模型,构建这些信息模型要借助专业的设计工具,并且具备一定的AAS和OPCUA 背景知识,笔者关注的重点是使用更加便捷,高效的方法描述产品的信息模型。特别是ChatGPT 技术的出现。为使用自然语言描述信息模型带来了新的机会。在我看来,chatGPT 为代表的大语言模型最强大的能力是将人类自然语言的内容转换成为机器能够识别的形式化信息。

JSON LD 物模型

JSON -LD 的全称是(JSON linked data),是Google公司提出来的,W3C 发布 JSON-LD 1.1 正式推荐标准。

       JSON-LD 是一种轻量级链接数据格式。它 对人类来说很容易读写。它基于已经 成功的 JSON 格式,并提供了一种帮助 JSON 数据互操作的方法。

JSON-LD的初衷是提供了一种更简单的方法来从网站创建机器可读数据以提升搜索结果。

        具体来说,使用 <script type="application/ld+json"> 标签可以让网页中的元素被编码为一个 JSON-LD 对象,并将其嵌入到页面中。这个 JSON-LD 对象可以包含诸如实体名称、描述、图像、地址、联系方式等属性信息,让搜索引擎更好地理解网页的含义和结构。

        通过使用结构化数据,网站管理员可以帮助搜索引擎更好地了解他们网站的内容和结构,并且有助于提高网站在搜索引擎中的排名和可见度。另外,使用 JSON-LD 还可以使您的网站在 Google 的搜索结果中显示富媒体的搜索结果,例如公司地址、电话号码、评分等等。

在网页正文中嵌入结构化数据,例如描述组织、产品或事件的相关信息。以下是一个示例:
 

<!DOCTYPE html>
<html>
  <head>
    <script type="application/ld+json">
    {
      "@context": "https://schema.org/",
      "@type": "Organization",
      "name": "Example Company",
      "url": "https://www.example.com/",
      "logo": "https://www.example.com/logo.png"
    }
    </script>
  </head>
  <body>
    <h1>Welcome to Example Company</h1>
    <p>Visit our website at <a href="https://www.example.com/">www.example.com</a></p>
  </body>
</html>

JSON-LD 被用于物联网(Web of thing )描述物模型,下面是一个例子:

{
    "id": "urn:dev:wot:com:example:servient:lamp",
    "name": "MyLampThing",
    "securityDefinitions": {
        "basic_sc": {"scheme": "basic"}
    },
    "security": ["basic_sc"],
    "properties": {
        "status" : {
            "type": "string",
            "forms": [{"href": "https://mylamp.example.com/status"}]
        }
    },
    "actions": {
        "toggle" : {
            "forms": [{"href": "https://mylamp.example.com/toggle"}]
        }
    },
    "events":{
        "overheating":{
            "data": {"type": "string"},
            "forms": [{
                "href": "https://mylamp.example.com/oh",
                "subprotocol": "longpoll"
            }]
        }
    },
    "annotation": {
      "@context": {
        "@base": "http://example.org/data/",
        "vendor": "http://vendor.org/product/"
      }
      "@type": "vendor:color-light",
      "isAbstractionOf": "appartment/134#light-1"
    }
}

 受到WoT 使用JSON LD 建模的启发,我们可以利用JSON构建控制过程的模型:

  • JSON 更适合人类阅读和书写
  • JSON 更适合LLM 生成

这是产品的控制模型: 

{
    "name":"mydevice",
    "description":"description of mydevice",
    "group_id":"group id",
    "class_id":"class_id",
    "properties":[{
        "name":"status",
        "type":"string",
        "description":"the status of device"
        },
        {
            "name":"temperature",
            "type":"numeric",
            "description":"the temperature of device",
            "max":"max of value",
            "min":"min of value",
            "value":"the default value"
            }
     ],
    "actions":[{
        "name":"the name og action",
        "description":"the description of the action",
        "arguments":{
            "inputs":[],
            "output"[]
        }
    }],
    "events":[{
        "name":" the name of event",
        "description":"description of the event"
    }]
}

大语言模型的使用

        笔者曾经尝试使用LLM 直接生成产品信息模型,结果发现,LLM 的输出存在不一致的现象,在数字化建模中是无法接受的。而LLM是基于语言的实例来学习语言的语法。它目前无法学习schima 规范。因此,我放弃了直接生成产品模型的想法,而是为LLM 提供一个JSON 模型的模板,让LLM 完成模型的实例化.通过阅读产品的datasheet ,提取相关信息,填入预先定义的JSON 模型中,并且将JSON 模型中未定义的属性作为专用属性增补在后面。

输入产品控制模型的描述

这是产品的信息
名称 温度传感器
属性:
     温度
      最大值:180
      最小值: -30
      初始值:0
电流
  初始值:0
电压
初始值:24
动作:
初始化
   输入:
输入1:电流初始值
   输出:无
读取温度:
  输入:无
  输出:
输出1当前温度
复位:
  输入:无
输出:无

将产品模型和产品信息上传给kimi 大模型,结果为:

{
  "name": "温度传感器",
  "properties": {
    "temperature": {
      "max": 180,
      "min": -30,
      "initial_value": 0
    },
    "current": {
      "initial_value": 0
    },
    "voltage": {
      "initial_value": 24
    }
  },
  "actions": [
    {
      "name": "initialize",
      "description": "初始化设备,设置电流的初始值",
      "arguments": {
        "inputs": [
          {
            "name": "current_initial_value",
            "description": "电流的初始值"
          }
        ],
        "outputs": []
      }
    },
    {
      "name": "read_temperature",
      "description": "读取设备当前的温度值",
      "arguments": {
        "inputs": [],
        "outputs": [
          {
            "name": "current_temperature",
            "description": "当前的温度值"
          }
        ]
      }
    },
    {
      "name": "reset",
      "description": "复位设备到初始状态",
      "arguments": {
        "inputs": [],
        "outputs": []
      }
    }
  ]
}

非常完美!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1640663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Copilot Venture Studio創始合伙人楊林苑確認出席“邊緣智能2024 - AI開發者峰會”

隨著AI技術的迅猛發展&#xff0c;全球正逐步進入邊緣計算智能化與分布式AI深度融合的新時代&#xff0c;共同書寫著分布式智能創新應用的壯麗篇章。邊緣智能&#xff0c;作為融合邊緣計算和智能技術的新興領域&#xff0c;正逐漸成為推動AI發展的關鍵力量。借助分布式和去中心…

栈的拿手好戏——括号匹配问题

文章目录 1. 栈的应用——括号匹配问题2. 思路分析3. AC代码 1. 栈的应用——括号匹配问题 链接: link 2. 思路分析 这道题呢就非常适合用栈来搞&#xff1a; 给定一个只包括 ‘(’&#xff0c;‘)’&#xff0c;‘{’&#xff0c;‘}’&#xff0c;‘[’&#xff0c;‘]’…

数字电路-5路呼叫显示电路和8路抢答器电路

本内容涉及两个电路&#xff0c;分别为5路呼叫显示电路和8路抢答器电路&#xff0c;包含Multisim仿真原文件&#xff0c;为掌握FPGA做个铺垫。紫色文字是超链接&#xff0c;点击自动跳转至相关博文。持续更新&#xff0c;原创不易&#xff01; 目录&#xff1a; 一、5路呼叫显…

YOLO实验记录

2023年2月17日 配置与环境 CPU&#xff1a;Intel Xeon Gold 6133 CPU 2.50GHz x8 GPU&#xff1a;NVIDIA Tesla V100 32G显存 python 3.8 pytorch1.12.1 cuda11.4 cuDNN 8.2.1 训练配置信息 输入图像尺寸&#xff1a;1280x1024 预训练模型&#xff1a;无 训练epoch&#x…

电商独立站最重要的功能设置:多语言转换和代运系统搭建

什么是独立站&#xff1f; 多语言模式切换 1 搭建电商独立站在我看来最简单的理解&#xff0c;就是独立的网站。 如果你在跨境圈子呆了一段时间&#xff0c;独立站是一个避不开且火热的一个词&#xff0c;并且也是所有的B2B、B2C商家都在运营和布局的市场。 独立站的优势有哪…

ssm101珠宝首饰交易平台开发+jsp

珠宝首饰交易平台 摘 要 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff1b;对于珠宝首饰交易平台当然也不能排除在外&#xff0c;随着网络技术的不断成熟&#xff0c;带动了珠宝首饰交易平台&#x…

【RabbitMQ】可靠性策略(幂等,消息持久化)

MQ可靠性策略 发送者的可靠性问题生产者的重连生产者确认 MQ的可靠性数据持久化Lazy Queue 消费者的可靠性问题消费者确认机制消息失败处理 业务幂等性简答问题 发送者的可靠性问题 生产者的重连 可能存在由于网络波动&#xff0c;出现的客户端连接MQ失败&#xff0c;我们可以…

VG做mirror引起的块偏移

事件起因 Oracle10.2环境 Aix操作系统使用aix的lvm技术。制作vg的mirror。以此来替换掉老的存储。 做mirror前&#xff0c;数据库已完全关闭 故障现象 在启动数据库时&#xff0c;发现IO错误。该系统的spfile&#xff0c;ctl&#xff0c;dbf均是用lv做的裸设备。其中dbf是使…

LIUNX系统编程:进程间通信-管道(2)

目录 1.管道通信的4种情况 1.1管道内没有数据&&写端不关闭 1.2管道内数据被写满&&写端不关闭 1.3写端写了一部分&#xff0c;关闭写端 1.4读端不读直接关闭&#xff0c;写端再写 1.管道通信的4种情况 1.1管道内没有数据&&写端不关闭 代码验证 #…

Qt之信号与槽

槽的本质&#xff1a;对信号响应的函数。 信号函数和槽函数通常位于某个类中&#xff0c;和普通的成员函数相⽐&#xff0c;它们的特别之处在于&#xff1a; 信号函数⽤ signals 关键字修饰&#xff0c;槽函数⽤ public slots、protected slots 或者 private slots 修饰。sign…

【Linux】环境变量、进程替换、wait/waitpid

文章目录 一、环境变量1. 查看环境变量的方法1.1 env1.2 echo $环境变量名 2. 在代码中使用环境变量的方法2.1 命令行参数传参2.2 environ变量2.3 getenv( )函数 3. export 二、进程替换1. execl2. execlp3. execle4. execv5. execvp6. execvpe7. 补充7.1 命名理解7.2 返回值 三…

数据结构可视化(适合考研党)

废话不多说传送门 还在疑惑平衡二叉树、红黑树、B树、B树怎么插入构建的吗&#xff0c;不要慌张&#xff0c;这个网站会一步一步来演示.&#xff0c;听了咸鱼的课还不够&#xff0c;需要自己动手模拟一下各种数据结构的CRUD&#xff01;&#xff01;

中华科技控股集团:人工智能标准化引领者与数字化服务新航程的启航者

4月30日, 矗立于时代科技潮头的中华科技控股集团&#xff0c;自2010年在香港这片国际金融沃土上诞生以来&#xff0c;便以其独特的国资背景与全球化视野&#xff0c;肩负起推动中国科技进步与产业升级的重任。作为国资委麾下的重要一员&#xff0c;中华科技始终坚持创新驱动发展…

数据结构--栈与队列【您的关注是我创作的动力!】

文章目录 栈什么是栈&#xff1f;栈的具体实现 队列什么是队列&#xff1f;队列的实现 栈 什么是栈&#xff1f; 栈也是顺序表的一种&#xff0c;栈的逻辑实现是先进后出&#xff08;后进先出&#xff09;就跟子弹夹一样。 具体逻辑就是它只允许在固定的一端进行数据的插入与…

Spring Boot中使用Redis和Lua脚本实现延时队列

码到三十五 &#xff1a; 个人主页 延时队列是一种常见的需求。延时队列允许我们延迟处理某些任务&#xff0c;这在处理需要等待一段时间后才能执行的操作时特别有用&#xff0c;如发送提醒、定时任务等。文中&#xff0c;将介绍如何在Spring Boot环境下使用Redis和Lua脚本来实…

【JAVA基础之反射】反射详解

&#x1f525;作者主页&#xff1a;小林同学的学习笔录 &#x1f525;mysql专栏&#xff1a;小林同学的专栏 1.反射 1.1 概述 是在运行状态中&#xff0c;对于任意一个类&#xff0c;都能够知道这个类的所有属性和方法&#xff1b; 对于任意一个对象&#xff0c;都能够调用它…

Edge 浏览器键入时如何关闭显示搜索和站点建议

Edge 浏览器键入时如何关闭显示搜索和站点建议

ssm104园区停车管理系统+jsp

园区停车管理系统的设计与实现 摘 要 网络技术和计算机技术发展至今&#xff0c;已经拥有了深厚的理论基础&#xff0c;并在现实中进行了充分运用&#xff0c;尤其是基于计算机运行的软件更是受到各界的关注。加上现在人们已经步入信息时代&#xff0c;所以对于信息的宣传和管…

基于SSM SpringBoot vue宾馆网上预订综合业务服务系统

基于SSM SpringBoot vue宾馆网上预订综合业务服务系统 系统功能 首页 图片轮播 宾馆信息 饮食美食 休闲娱乐 新闻资讯 论坛 留言板 登录注册 个人中心 后台管理 登录注册 个人中心 用户管理 客房登记管理 客房调整管理 休闲娱乐管理 类型信息管理 论坛管理 系统管理 新闻资讯…

【VueUse】超越基本功能的高级 Vue 元素操作

在vue开发中我们经常需要操作DOM元素&#xff0c;从简单的添加类到动态创建元素&#xff0c;这些操作都是不可避免的。而在VueUse库中&#xff0c;Elements相关API函数为我们提供了一系列强大而灵活的工具&#xff0c;帮助我们更轻松地处理DOM元素。无论是优雅地处理元素、动态…