漫谈AI 时代的信息模型

模型化- 数字化转型的重要基石 

     在各行各业推行数字化转型过程中,构建信息化模型十分重要,它是数字化转型的基石。事实上,数字化转型的核心是“万物皆模型”,在工业领域,以德国为主导的工业4.0 发展进程中,标准信息模型的构建是主要工作之一。他们提出了资产管理壳模型的概念和一系列标准。并且着力于各种物理设备,软件服务等数字化模型的构建。步伐稳健又迅速。在产品研发阶段重点发展基于AutomationML语言的建模,而现场控制领域正逐步推广OPCUA 信息化模型和协议的应用。

    所有的信息模型几乎都是采用了形式化语言描述的结构化数据。并且清晰地定义了模型的语义。使信息模型能够被机器和软件准确地理解和一致性性访问。主要的描述语言是XML 语言,鉴于JSON语言的处理简洁性,也有部分模型使用JSON格式描述。

共识-语言的基础

        语言的核心是语法和语义。 对于人类自然语言而言,语法和语义都不是非常规范的。有时候是模糊的含义和简化的语法。人类依靠“社会俗称规约”相互理解。但是在大语言模型(LLM)还没有出现之前,机器仍然无法准确地使用自然语言相互交流。于是人类创建了各种形式化语言,它们具有严格的语法和语义定义。这种形式化语言是人类自然语言的一个子集。消除了自然语言的二义性。

  机器之间交换信息的方式也受到严格的定义,这便是通信协议(protocol)。因此,语法,语义和协议是机器交流信息的三要素。

     推广一种形式化机器语言的关键是语言的标准化及其推广。使用者之间达成共识。流行的机器之间的语言包括 modebus,TCP/IP,CAN,OPC UA ,,AutomationML,工业4.0 知产管理壳等等语言和协议。

万物皆模型-并非易事

        从技术的角度来看,构建各种资产的数字化模型并不存在什么障碍。现代IT技术提供了各种方法和工具。但是实现“万物皆模型”的目标却并非易事。

      采用开放的数字模型,意味着各利益方打破了原有的护城河,大公司除非找到了新的技术壁垒,它们不会轻易地拥抱开放系统。

   数字化模型的生态没有形成之前,个别公司或者个别项目中采用基于模型的设计方法可能比传统设计工作量更大。学习和采纳模型化设计方法的意愿不足。而且难以达成共识!

      由于缺乏广泛的用户,模型化设计的工具软件短缺。

    构建资产数字化模型需要专业领域的专家与自动控制与IT行业专家的通力合作。在德国和欧洲,这些行业的数字化模型是由专业的行业协会发起并组织实施的。而我国的行业协会不具备这样的组织能力。

         由此可见,构建制造业资产数字化模型是一件说说容易,干起来费劲的事情。笔者看来,至今没有找到可行的方法。

       我们需要寻找一种方法,实现便捷,低成本,大批量地构建数字化模型。只有模型库非常丰富之后,人们才会喜欢使用基于模型的设计,生态才会形成。

大语言模型LLM-建模的新工具

        大语言模型的出现,极大地提升了机器理解人类自然语言的能力。人们似乎看到了希望,是否能够直接使用自然语言提示大语言模型自动建立资产的数字化模型呢?

     人们普遍对LLM 的能力预期过高,让它回答刁钻的问题,一旦chatGPT答非所问,又对LLM失去了信心。对于LLM 编程写代码这样的事情同样是如此,一开始就让它直接写计算机程序。对于LLM 产生的错误再嘲笑一番。

     令人遗憾的是目前大模型目前还不能完成这项工作。由于工业领域的资产描述内容繁多,准确性和一致性要求非常高。而大语言模型构建的模型会出现一定概率的差异性。

         

中间语言-AI时代的建模方法

    语言大模型基于模型模板(template)构建模型。而不是基于schema或者元模型规范来建立模型。因此,除非有大量的模板供LLM 学习,直接生成形式化的模型比较困难。

        同样地,LLM 生成程序代码也是基于代码的实例来构建代码的。由于网络上程序代码比较多,所以效果要好一点,但是如果需要实现比较复杂的控制算法,它就无能为力了,除非是已有的标准算法。目前的许多程序代码没有详细的注解和描述,LLM 能够学习语言的语法,却难以理解语义。

     以笔者的观点,如果要让LLM 生成形式化的模型文本或者复杂的程序代码,使用中间语言更加有效。

        所谓中间语言(模型)是指一个介于自然语言和形式化语言之间的语言,它有利于从自然语言描述转换,有能够转化成为标准化的机器可读的程序或者模型。

    LLM 的出现使机器理解自然语言的能力大幅度提升,它对语言的语法要求降低了,另一方面,自然语言能够表达语义明确的内容,比如:

  • 我要吃饭
  • 我想吃饭
  • 我想要吃饭

      这三句话表达的含义是一致的,明确的。所以说,自然语言完全能够准确的描述事物(模型),只是需要有一定的表达能力和逻辑性(或者说限制)就可以了。要比计算机的形式化语言的简单的多。使用中间语言建立自然语言和机器语言之间的桥梁是可行的方法。

    

         LLM 最擅长的是自然语言的理解和生成,但是它要完成复杂的AI能力,仍然需要使用各种传统的IT工具,比如网络搜索,数据库,软件工具。才能完成复杂的AI任务。所谓智能体是通过自然语言连接起来的工具链(langchain)实现的,我们已有的所有IT技术是AI的基础。其中包括工业自动化行业的各种标准,建模方法和理论。

      许多人没有将大语言模型和大语言模型的应用程序区分开来,其实许多所谓的大模型大模型的应用,它通过大模型调用各种软件工具实现的神奇能力。所以说,并不是由于LLM 的出现,其它技术都歇菜了,程序员要失业了。IT 工程师的作用依然非常重要,我们为LLM 提供新的工具,让它能够做的更多,更好。

中间语言有如下几个特点:

  • 简单的结构化形式语言

        比如使用JSON 格式或者其他DSL 语言描述。这种结构化模型能够通过程序转化为机器可读的形式化模型。能够通过程序转化为标准化的数字模型或者代码,例如管理壳,OPCUA 模型,计算机代码等。在转化过程中,根据模型的规范,自动添加规范中要求的语义、语法细节。

  • 代码或者模型中增加了比较多的自然语言描述(Description)

       有利于LLM 理解模型或者语言模型的含义,帮助LLM 准确地生成基于中间语言的代码或者模型。

在中间模型中,每个对象,属性都要增加描述(Description)例如

   current=     {

            value:10"

            description :"current of motor Driver"

           unit:"A"

        }

 同样地,在程序代码中的每个函数也需要描述,例如

   一个获取天气的函数function get_weather(locaton)需要下面的描述

  {
            "name": "weather",
            "description": "当需要了解天气时调用 需要 位置参数",
            "parameters": {
                "type": "object",
                "properties": {

                    "location": {
                        "type": "string",
                        "description": "输入您想要了解天气的位置。 示例:无锡",
                    },
                },
                "required": ["location"],
            },
        }

LLM 通过描述理解语义,未来的程序对于“人类”的可读性又非常重要了,这一次是LLM的可读性。

  •    能够转换成标准的模型

   中间语言是形式化结构型语言,通过添加细节,能够使用软件工具转换成标准化的模型文本。   比如OPC UA 和资产管理壳(AAS)。

        这种方法已经被人采纳过,例如OPCUA 的NodeSet2 格式非常复杂,OPCUA 基金会设计了一种ModelDesign的中间模型,通过基金会提供的UAModelCompier 软件生成C# 代码和NodeSet2.xml。ModelDesign便于人工编写和其它程序输出。

   由此可见,中间语言是介于自然语言与计算机语言之间的一种“高级”语言。中间语言和模型的另一个优点是它能够生成各种程序设计语言的代码和模型。

初步的实验

在下面的实验中,我们将分三步进行:

  • 基于工业4.0 的资产管理壳的数据模型,设计一种资产模型(中间模型)
  • 将自然语言编写的资产模型描述通过LLM 生成中间模型
  • 设计一个软件工具将中间模型转换成标准的AAS XML 文档

(待续)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

超越5G:迈向6G网络传感前沿的革命性飞跃

6G推动的传感技术发展有望将人类感官拓展到目前的极限。从精确测绘到活动识别,联网传感揭示了看不见的事物,使我们能够理解和预测以前未知的周围环境。高精度定位、增强人类感官和手势/活动识别的无缝集成预示着未来机器将以前所未有的自主性运行... 在飞…

安全AI未来 | C3安全大会 · 2024,数据驱动 AI原生

数字为时代变革注入动力,AI为重塑社会文明带来原力。数智浪潮中,我们见证着时代跃迁的巨变,面临着适变、应变、驭变的挑战。 数字驱动、AI原生。数字的流动不仅承载着信息,更将激活未来的无限价值;AI,不…

为什么要写技术方案?

技术方案是为研究解决各类技术问题,有针对性,系统性的提出的方法、应对措施及相关对策。技术方案设计是一个技术开发者必备的能力,特别是对于高级、资深、架构师等角色。技术方案设计不仅能够帮助我们明确需求,规划架构&#xff0…

【数据库】三、数据库SQL语言命令(基础从入门到入土)

【全文两万多字,涵盖大部分常见情况,建议点赞收藏】 目录 文章目录 目录安装SQL语言1.使用2.DATABASE查看所有库新建数据库修改数据库删除数据库连接数据库 3.TABLE创建表查看库所有表删除表查看表信息重命名表修改表字段(列)表中…

自动批量将阿里云盘文件发布成WordPress文章脚本源码(以RiPro主题为例含付费信息下载地址SEO等自动设置)源码

背景 很多资源下载站,付费资源下载站,付费内容查看等都可以用WordPress站点发布内容,这些站点一般会基于一个主题,付费信息作为文章附属的信息发布,底层存储在WP表里,比如日主题,子比主题等。 …

js的算法-插入排序(直接插入排序)

插入排序 插入排序是一种简单直接的排序方法,其基本思想是每次将一个待排序的记录按其关键字大小插入到前面已经排好序的子序列,直到全部记录插入完成。由插入排序的思想可以引申出三个重要的排序算法: 直接插入排序、折半插入排序和希尔排序…

一份本金 能得两份利息?

构建完善的量化交易策略,需要了解多种交易标的。有的产品在特殊时间可以产生超额收益。 1天期的国债逆回购的手续费为万0.1。 看似较低,因为每笔最小手续费是0.1元,如果投资者买入的金额较小(比如小于1w),…

bugku ezbypass

bugku ezbypass 1.代码审计 2.题目代码如下所示 <?php error_reporting(0); highlight_file(__FILE__);if (isset($_POST[code])) {$code $_POST[code];if (strlen($code) < 105){if (is_string($code)) {if (!preg_match("/[a-zA-Z0-9#%^&*:{}\-<\?>…

怎样用PHP语言实现远程控制三路开关

怎样用PHP语言实现远程控制三路开关呢&#xff1f; 本文描述了使用PHP语言调用HTTP接口&#xff0c;实现控制三路开关&#xff0c;三路开关可控制三路照明、排风扇等电器。 可选用产品&#xff1a;可根据实际场景需求&#xff0c;选择对应的规格 序号设备名称厂商1智能WiFi墙…

政企单位内外网数据交互,如何保障安全性和合规性?

政府内外网隔离是一种网络安全措施&#xff0c;旨在保护政府内部网络的安全性和保密性。根据国家法律要求&#xff0c;涉及国家秘密的计算机信息系统与公共网络之间必须实行物理隔离。这意味着这些系统应该被完全隔离开来&#xff0c;以防止任何未经授权的访问或数据泄露。其次…

Linux服务器安装谷歌浏览器

当我们使用自动化的时候&#xff0c;还想要将它部署到服务器上那么我们就需要安装谷歌或者其他浏览器&#xff0c;这里是以谷歌浏览器为例子 首先就是你的有安装包 我们到官网下载&#xff1a;https://www.google.cn/intl/zh-CN/chrome/&#xff0c;需要科学上网 进入官网之…

Python蜘蛛侠

目录 写在前面 蜘蛛侠 编写代码 代码分析 更多精彩 写在后面 写在前面 本期小编给大家推荐一个酷酷的Python蜘蛛侠&#xff0c;一起来看看叭~ 蜘蛛侠 蜘蛛侠&#xff08;Spider-Man&#xff09;是美国漫威漫画宇宙中的一位标志性人物&#xff0c;由传奇创作者斯坦李与艺…

工信部政策要求试点城市20%资金奖励中小企业用SaaS上云转型数字化

随着数字经济的不断发展&#xff0c;中小企业也迎来了前所未有的机遇和挑战。为了持续推动中小企业数字化转型&#xff0c;工信部出台了一项新政策&#xff0c;主要通过资金奖励的方式&#xff0c;鼓励中小企业采纳软件即服务&#xff08;SaaS&#xff09;模式&#xff0c;实现…

每日OJ题_BFS解决拓扑排序①_力扣207. 课程表

目录 拓扑排序和图的介绍 ①力扣207. 课程表 解析代码 拓扑排序和图的介绍 拓扑排序简单来说就是找到做事情的先后顺序&#xff08;拓扑排序的结果可能不是唯一的&#xff09;。 学习拓扑排序前先简单学习图的基本概念&#xff1a; 图是由顶点集合及顶点间的关系组成的一种…

Pytorch常用的函数(八)常见优化器SGD,Adagrad,RMSprop,Adam,AdamW总结

Pytorch常用的函数(八)常见优化器SGD,Adagrad,RMSprop,Adam,AdamW总结 在深度学习中&#xff0c;优化器的目标是通过调整模型的参数&#xff0c;最小化&#xff08;或最大化&#xff09;一个损失函数。 优化器使用梯度下降等迭代方法来更新模型的参数&#xff0c;以使损失函数…

windows系统实现postgresql数据库定时备份

在windows系统中&#xff0c;大家通常可能会遇到手动备份数据库、周期性的执行脚本等情况。如果每次手动去做的话不免有些麻烦&#xff0c;而且容易忘记。用过Linux的同学都知道用crontab就可以定时调用shell脚本来实现定时任务的执行&#xff0c;那么在windows系统怎么实现呢&…

IMU用于评估驾驶中颈部受伤风险

近日&#xff0c;一支由西班牙和意大利科研人员组成的联合团队成功研发了一种创新车载监控系统&#xff0c;该系统巧妙结合了IMU和红外激光传感器技术&#xff0c;旨在深入研究并有效评估驾驶员在紧急制动情境下颈部受伤的风险。 实验中&#xff0c;科研团队采用了一款低成本的…

最新国内敏捷调研报告:2023中国企业敏捷实践白皮书

在人工智能技术飞速发展&#xff0c;组织面临的复杂性和多变性不断加剧的背景下&#xff0c;《2023中国企业敏捷实践白皮书》通过广泛的调查&#xff0c;洞察剧变之下&#xff0c;谁在逆流而上&#xff0c;如何逆流而上。 敏捷作为适应市场变化的关键策略&#xff0c;已被越来越…

【C++】项目级的组织结构与Cmake编译

文章目录 C项目级的组织结构与Cmake编译分文件编写程序C项目级的组织结构Cmake编译 C项目级的组织结构与Cmake编译 分文件编写程序 (1) 创建后缀名为.h的头文件max.h&#xff0c;并在其中写函数的声明 #include<iostream> using namespace std; int max(int a, int b)…

Redux 状态持久化之 redux-persist 使用示例

同vuex一样&#xff0c;redux中的状态会在刷新浏览器后状态又恢复到初始状态&#xff0c;有些数据想在浏览器刷新后仍然是在最新的状态&#xff0c;不会丢失&#xff0c;就需要借助一些插件实现。本文通过 redux-persist 插件来实现Redux状态的持久化。 下面使用 redux-persis…
最新文章