文章目录
DynaTalk: 企业级 CodeLab Adapter
前言
我们之前在 CodeLab Adapter 上边的工作,引起了许多企业的兴趣。
CodeLab Adapter 是一个由 Python 构建的软件(构建在消息之上(Everything Is a Message)), 致力于连接万物,无论是软件还是硬件,无论是 AI、开源硬件、现实世界的物体、还是虚拟世界的动画角色, 接入 CodeLab Adapter, 皆可彼此互动。
“连接能力” 和 “可扩展性” 是它的主要特色。
在 CodeLab Adapter 驱动的环境里,通过使用 Scratch 或 Python 编程,你可以与万物沟通: 你可以在朋友生日那天,在 Ta 进门的一刻,将手中的魔杖一挥,在空中划一个字母 L 的轨迹,瞬间,点亮房间里五彩的灯光。
这个链接里包含了许多使用 CodeLab Adapter 构建的演示项目。
CodeLab Adapter 定位是个人软件, 主要用于教育场景。 设计中并未考虑太多的企业级需求。
DynaTalk 拥有跟 CodeLab Adapter 一样强大的连接能力, 且能够服务于企业级需求, 这些需求包括: 安全性、工业级别的性能、多用户…
想法来源
Alan Kay 创造了“面向对象”一词, 他赋予这个词的含义包含三个部分:
- 一切都是对象
- 对象通过消息进行通信
- 对象解释它所理解的消息
软件行业目前使用这个词所指的东西, 通常只包含第 1 个部分。
今天的软件工程中, 对象之间的交互, 以及异构系统之间的交互, 通常由实现者自行决定。就我们自己的经验而言,这类需求(对象/系统之间的协作)会在不同的项目中反复出现,它在最初看起来是简单的,似乎通过函数调用、HTTP 接口就能解决,但随着系统变得复杂,对象/系统之间的协作问题会与并发、同步/异步、事件系统等问题纠缠在一起。它比乍看起来要复杂,而且需要有整体的设计。
构建一个系统时,人们最初会以为对象这些计算的实体是关键,这导致"面向对象"话题下的讨论多半围绕类的结构(属性与行为)。 Alan Kay 指出:
构建优秀且可扩展的系统的关键更多的是设计模块之间如何通信,而不仅仅是设计其内部属性和行为。
随着系统的生长,复杂性移向模块之间的交互,这要求我们能够对其进行观测,以诊断问题和提高可理解性。
我们不想每次只是临时解决问题,渴望有一个坚实的架构基础, 来支持不同对象/系统之间的通信,它可以支持系统的持续成长。DynaTalk 是我们在这个想法下交付的东西。
我们听从 Alan Kay 的教导,采用了消息传递(Message passing)风格的架构设计。
应用场景
以下是 DynaTalk 的一些应用场景:
它十分适合, 整个不同的系统:
- 制作客户端
- 构建 Agent
- 将人类、AI、软件系统、硬件设备整合到同一个计算环境中, 让它们彼此交互。
这两类系统都
诸如:
- 为 Unity/Roblox 中制作的游戏, 提供 Python/Scratch 客户端
重点讨论 AI Agent 和 Future Park
snap 三类积木
- 事件
- action
- request
todo
重构 Adapter 发布 以 Snap 或者 morphic 为用户界面
需要一个 Agent 可以管理其他 Agent,Agent决定结束自己?
体验
你可能会感兴趣
产品化
Roblox SDK 最初在这里打磨 Unixy SDK 如果你希望为你的游戏添加物理外设、用户编程界面 Snap SDK Python SDK
本地部署与云服务
我们之前的经历偏向于研究性质,缺少制作产品的经验。
我们试图将其 DynaTalk 商品化,但缺乏这块的经验,如果你感兴趣,欢迎联系我们,我们想了解你的需求。
如何使用
- 云服务
- 免费体验
- 本地部署
- 数据安全
- Python 客户端
- 可观测
- MQTT
- 问题解答,每月 10 小时(或者10次),每次一小时
参考
文章作者 种瓜
上次更新 0001-01-01