首先我不是很看好 0G 的技术含量,因为 0G 是中国团队开发的项目。0G 是一个 AI 赛道的项目,3 月份在 TinTinLand 上发布过招聘信息,大概 9 月份要发币的样子,猜测在 AI 方面的噱头大于技术积累。我因为最近加了一个 TinTinLand 的学习群,和 0G 合作推出社区课程那种,所以稍微有点兴趣来分析下这个项目。
0G 的官网地址是 0g.ai,在官网上就极尽所能的把各种名词摆上了,”the next generation”、“decentralized AI”、”DeAIOS”、”RWA”,用词口径越大通常不是一个好兆头。
0G 在 2024年8月 发布了 白皮书,单从白皮书目录和篇幅来看不是很乐观,目录结构比较简单,一共只有 20 页的内容。篇幅长度是肤浅的判断方式,比特币的白皮书也才 9 页。主要是目录结构,作为一个 AI 技术导向的项目,如此简洁的章节会给人草台的感觉。
首先来看看摘要里怎么说,0G 在解决的是 AI 模型训练过程中透明度的问题:
话说,看到 modular 这个词我有点不好的预感,尤其是看到 DA 这个词后,心想该不会用的 Celestia 吧,结合官网首页上宣称的 2500/s 的 TPS,有哪条链能做到呢?Cosmos 有点像。不过到这里还不理解首页上说的 8K 个 validator 是什么含义,Cosmos 可做不到这个。
好在不是 Celestia,白皮书里没详细说技术选型的事,但明显和 Celestia 是并列关系,自己搞了个叫 0G DA 的链。
白皮书里详细解释了 PoRA(Proof of Random Access)的挖矿机制,这个是有技术含量的部分,与 Filecoin 冷储存的模式不同,0G Storage 强调链上可以即时访问数据,所以设定了 8TB 的挖矿窗口,要求矿工可以快速在范围内验证数据完整性。
PoRA 的局限性在于,通过随机抽样验证的方式,可以验证矿工是否拥有完整数据,但是不能证明矿工拥有的数据是唯一的,也就是缺少 Filecoin 的 PoRep 提供的能力。这与网络面对的场景以及经济模型设计有关,0G Storage 只希望保证数据的可用,从矿工的奖励方式上限定了作恶是不能得到更多奖励的,所以整体机制上奏效。而 Filecoin 是根据算力高低给奖励,要面对的问题不一样。
从官网的第一篇 博客文章 中能更直观看到一些信息,0G 包含两个关键组成部分:0G Storage 和 0G DA,本质上在解决的就是 DA 的问题,主要是试图把这种 DA 能力用到 AI 场景中,所以分类到 AI 赛道了。项目背景上是一个分布式存储类的区块链项目。
0G 去年得到了 3 千万美元的种子轮融资,还是挺有资本的。
具体到工程实现上,可以看到 0G Storage 的 代码 基于 Conflux 的节点代码,在其之上做了一些功能开发:
PoRA 的工程实现部分就不深究了。
刚才从项目背景的角度,只提到了 0G Storage 和 0G DA 两部分,除此之外,0G 这个项目还有两个角色,0G Chain 和 0G Compute Network。估计一开始的项目规划里没有,所以白皮书里没提。
0G Chain 是一个用 Cosmos SDK 开发的链节点(终于看到 Cosmos 的身影了),而且是直接用了 evmos 来兼容以太坊智能合约的做法:
0G Chain 的仓库最后一次提交代码是在 5 个月前,也许已经放弃了用 Cosmos SDK 的路线。因为有一个近期比较活跃的仓库 0g-geth,看起来是在做 Geth 的二次开发,通过集成预编译合约的方式,加入对 0G DA 的支持。
0G Compute Network 是真正和 AI 模型训练相关的部分,现在已经支持一些 预训练模型 的使用。用户层面的使用比较简单,类似于 OpenAI 的 SDK 一样,发起请求,得到响应,就是一个 Client 层的 SDK。
给 0G Compute Network 的模型提供算力的节点叫 Provider,代码仓库是 0g-serving-broker,代码仓库里有体现模型训练的代码,比如 finetune.py 这个脚本是基于 Transformer 做文本模型的微调,Docker 容器是直接基于 pytorch 2.5.1-cuda12.4-cudnn9-devel 的容器打包。
所以从 LLM 模型训练的角度看,0G 有一些工程方面的技术内容。只不过 0G 在干的事情是微调(Fine-tuning),也就是基于预训练(Pre-training)好的模型,进一步用较小的算力训练,达到执行某种特定任务的效果。而我们平时看到的 OpenAI 和 Grok 等大公司,动辄 1 TB tokens 的训练量,干的事情才是预训练。
比如 OpenAI 训练并开源出一个 GPT-3 模型(实际上没开源),那么 0G Compute Network 就是基于这个 GPT-3 模型,结合自己的语料进行一些微调,训练出一个自己版本的 GPT-3 模型。大概就是这个意思。
更准确一点说,0G Compute Network 是提供了一个训练的场地,结合了区块链相关的经济模型、奖励机制等交互,让用户可以给微调这件事情提供算力并获得收益,另一些用户可以使用微调之后的模型。
至于 Provider 与链上合约交互的部分,应该就好理解了。0G 是用 Solidity 写的合约 0g-serving-contract ,对合约的调用自然也是以太坊生态的那一套组件。而 0G 需要做的,就是把模型微调(训练)的结果,以及关于训练任务的分发、奖励记录、惩罚机制等,用合约来实现,然后在链下的算力节点上集成对合约的交互。
综合来看,我需要改正一开始的态度,0G 是有一些技术含量在的,只不过更加侧重于工程方面的技术,无论是区块链方面的 DA,还是 AI 方面的模型微调,其实做的都不错,业务逻辑上已经能形成闭环。
但是说实话,写 0G 项目的分析,比之前写其他项目的分析,思路稍微不清晰一点,因为白皮书和文档都不是很完善,项目的技术路线又不是特别统一,所以没有非常好的资料自上而下的贯彻整个项目结构。不过经过以上内容的分析,我想应该已经刨析清楚了 0G 这个项目的技术情况。