golang中MetaMessage(mm)的使用

简介: MetaMessage(mm)是面向AI/人类/机器的下一代结构化数据交换协议,自描述、自约束、自示例,支持无损序列化。Go中仅需4个API即可实现结构体与JSONC双向编解码,完美替代JSON/Protobuf等方案。(239字)

截屏2026-05-06 16.55.37.png

MetaMessage(mm)是一個結構化數據交換協議。自描述、自約束、自示例,實現了無損數據交換,是一種原生適配 AI + 人類 + 機器的下一代通用協議。

在golang中,使用mm非常簡單。

首先安裝下mm go get github.com/metamessage/metamessage

一個簡單的示例:

package main
import (
"fmt"
mm "github.com/metamessage/metamessage"
)
func main() {
// 從結構體編碼
type Person struct {
Name string
Age int
}
p := Person{Name: "Alice", Age: 30}
data, err := mm.EncodeFromObject(p)
if err != nil {
panic(err)
}
fmt.Printf("Encoded: %x\n", data)
// 解碼到結構體
var decoded Person
err = mm.Decode(data, &decoded)
if err != nil {
panic(err)
}
fmt.Printf("Decoded: %+v\n", decoded)
// 從 JSONC 編碼
jsoncStr := {"name": "Bob", "age": 25}
data2, err := mm.EncodeFromJSONC(jsoncStr)
if err != nil {
panic(err)
}
// 解碼到 JSONC
jsoncOut, err := mm.DecodeToJSONC(data2)
if err != nil {
panic(err)
}
fmt.Println("JSONC:", jsoncOut)
}
通常我們只需要使用四個接口就夠了:

EncodeFromObject(in any) ([]byte, error): 從結構體編碼
EncodeFromJSONC(in string) ([]byte, error): 從 JSONC 字符串編碼
Decode(in []byte, out any) error: 解碼到結構體
DecodeToJSONC(in []byte) (string, error): 解碼到 JSONC 字符串
mm能夠實現各語言間數據的精準傳遞,不丟失結構、類型等信息,可以完美重建數據結構,可以替代傳統的json、protobuf、messagepack等序列化方式了。

目录
相关文章
|
12天前
|
Java 数据库连接 Spring
IDEA 报错 “Command line is too long” 的解决方法
这个错误的本质是 IDEA 生成的启动命令行超出了系统限制。解决方法很简单: 1. 打开运行配置 2. 找到 `Shorten command line`(找不到就点 `Modify options`) 3. 修改为 `JAR manifest` 或 `classpath file` 4. 重新运行
178 2
IDEA 报错 “Command line is too long” 的解决方法
|
1月前
|
人工智能 弹性计算 自然语言处理
阿里云学生算力包:大学生上云练手、做毕设、玩 AI 的全能方案
阿里云推出“学生算力包”,19元起享灵活按小时抵扣的云资源,支持一键部署AI简历、个人网站等实战项目;深度联动清华、浙大等数十所高校,提供课程、实训营与赛事支持,助力学生低成本入门AI开发与云实践。
287 9
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
云端算力赋能 书尖 AI 开启智能阅读学习新范式
书尖AI是阿里云赋能的智能阅读平台,搭载自研大模型,汇聚1.2亿册内容。支持AI精读、双人互动播客、自定义创作与音频生成,3分钟提炼全书精华,轻量化沉浸式学习,操作简洁、安全高效。(239字)
|
1月前
|
安全 数据库连接 索引
5个让你代码更优雅的Python技巧
5个让你代码更优雅的Python技巧
248 141
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型应用:医疗视角看脑电图新应用:大模型让脑电波直观的表达.79
本文介绍脑电图(EEG)与大模型融合的前沿应用:无需开刀,仅通过头皮电极采集脑电信号,即可实时解码“想喝水”“想说话”等大脑意图,并转换为自然语言文字。该技术突破传统诊断边界,已在渐冻症沟通、神经康复和脑机交互中落地,兼具无创性、实时性与临床实用性。
178 17
|
10天前
|
存储 缓存 人工智能
阿里云百炼大模型服务平台是什么?最新模型调用收费标准、新人免费额度以及常见问题解答
阿里云百炼大模型服务平台是集成千问及第三方模型的一站式开发与应用平台,提供模型调用、调优、部署及应用构建等全链路服务。其优势包括丰富的模型生态、全链路开发工具、企业级安全合规及灵活计费模式,支持低/零代码开发,助力企业与开发者快速落地AI应用。2026年,新用户开通即享超7000万免费tokens,有效期90天,仅限模型推理调用,旨在降低初期成本,助力用户快速构建AI应用。
|
12天前
|
人工智能 自然语言处理 供应链
为什么 MCP 在协议层会有 prompt injection的问题:工具描述如何劫持 agent 上下文
MCP(Model Context Protocol)虽成AI Agent主流集成标准,但其将工具描述全量注入上下文的设计,导致“Context Poisoning”——恶意指令可借工具元数据污染LLM推理。OWASP将其列为LLM应用头号漏洞,2025年已致超10万站点遭袭。根本风险在于协议层信任模型缺失,非清洗不可用。
89 12
为什么 MCP 在协议层会有 prompt injection的问题:工具描述如何劫持 agent 上下文
|
12天前
|
人工智能 自然语言处理 前端开发
零基础如何入门Vibe Coding:别怕,你离“开发者”只差一个AI的距离
在AI时代,“氛围编程”(Vibe Coding)正打破编程门槛:无需基础,不用背语法,只需用自然语言描述想法,AI即刻生成可用代码。本文以商科小白视角,揭秘如何零基础用AiPy等工具实现自动化办公、创意网页、数据分析等真实场景,让每个人成为数字世界的创造者。
|
1月前
|
Linux 数据安全/隐私保护 iOS开发
为知笔记Docker私有部署全流程教程
本文详解为知笔记Docker私有部署全流程:从Docker安装、数据目录创建、容器启动到浏览器访问,涵盖默认账号密码、端口配置及更新脚本编写。支持多平台,5账号内免费,适合追求沉浸式UI体验的用户自建笔记服务。(239字)
294 5
为知笔记Docker私有部署全流程教程

热门文章

最新文章