什么是链上和链下
注意:本文档是英文原版的自动翻译。
什么是链上和链下
Onchain(链上) 意味着某项操作、记录或计算被直接在一条 区块链 上执行和存储,在那里它由网络的节点验证,并成为永久的、可公开审计的账本的一部分。Offchain(链下) 意味着该操作发生在区块链之外——在传统服务器、本地机器或独立网络上——并且不被区块链的共识过程直接记录或验证。
这一区别之所以重要,是因为它决定了什么是可独立验证的,什么是需要信任的。任何链上的东西都可以被任何能访问区块浏览器的人查验。任何链下的东西都需要信任执行计算或存储数据的那一方,除非有额外的机制(例如密码学证明)来弥合这一差距。
简而言之: onchain 意味着在区块链上记录和验证;offchain 意味着它发生在别处——在加密 AI 中,理解 AI 实际在哪里运行是评估一个项目 Onchain necessity 的关键。
onchain 和 offchain 的工作原理
链上发生什么
当某件事发生在链上时,它会经历完整的区块链生命周期:
- 一个用户或应用向网络提交一笔 交易。
- 该交易被广播到网络中的各个 节点。
- 验证者根据该链的 共识机制 将该交易包含进一个 区块。
- 每个节点独立验证该交易是否遵循协议规则。
- 一旦区块被确认,该交易就成为永久的、不可篡改的账本的一部分。
链上操作包括:转移代币、部署或调用 智能合约、在合约存储中记录数据、铸造 NFT、进行治理投票,以及登记证明或哈希。
链上活动的关键属性是 可独立验证性。任何人都可以查询区块链、检查任何一笔交易,并在不依赖第三方的情况下验证其有效性。这正是使区块链作为信任层而有用的原因。
链下发生什么
链下操作是一切不经过区块链共识过程的东西。这包括:
- 传统计算 —— 在服务器、云实例或个人机器上运行软件。世界上绝大多数计算都是链下的。
- 链下数据存储 —— 将文件、数据库或模型权重存储在中心化服务器、IPFS、Arweave 或其他不属于区块链状态的存储系统上。
- 链下消息传递与协调 —— 各方之间通过 API、消息队列或区块链之外的点对点协议进行的通信。
- AI 推理与训练 —— 运行 机器学习 模型,这在计算上是密集型的,通常在区块链的执行环境内执行成本过高。
链下操作本质上并不比链上操作低劣。它们更快、更便宜、更灵活。其权衡在于,它们需要信任执行它们的人,除非结果通过验证机制被锚定回区块链。
成本等式
大多数计算之所以停留在链下,一个核心原因是 成本。在以太坊上,智能合约内部的每项操作都消耗 gas——一笔支付给验证者以执行和验证计算的费用。运行一笔简单的代币转账可能只花费不到一美元的零头。而在一个智能合约内部运行一个拥有数百万参数的机器学习模型,将花费数千或数百万美元的 gas 费用——前提是它在区块 gas 限制内在技术上甚至是可行的。
这种成本结构意味着区块链是为 验证 而非 计算 优化的。它们擅长确认某件事正确地发生了,而不擅长执行繁重的工作。这就是为什么加密 AI 中的主流架构是混合式的:繁重的计算在链下,验证和结算在链上。
混合架构
大多数现实世界的加密 AI 项目使用一种混合模型:
- AI 计算 发生在链下——在 GPU 集群、去中心化计算网络或云提供商上。这是模型训练、推理、数据处理和分析发生的地方。
- 结果与证明 被发布到链上——输出、密码学证明、模型哈希或决策检查点被记录在区块链上,以供验证和审计。
- 经济结算 发生在链上——代币付款、奖励、质押和治理操作由区块链上的智能合约处理。
这种混合方式不是一种妥协或去中心化的失败。它是一种合理的架构,让每一层去做它最擅长的事情:区块链用于最小化信任的验证和经济协调,链下系统用于高性能计算。
一些项目则更进一步,采用 零知识证明(ZK) 或 可信执行环境(TEE) 等技术,这些技术允许链下计算产生密码学保证,证明该计算被正确执行——实际上为链下操作借来了链上级别的可验证性。
为什么它对加密 AI 项目很重要
onchain-offchain 这一区别是 DecAIHub 三个核心评估维度之一——Onchain necessity——的技术基础。
大多数 AI 是链下的——而这是正常的
一个常见的误解是,一个"加密 AI"项目应当在链上运行其 AI 模型。在实践中,对大多数应用而言,这既不可行也不可取。神经网络 需要大量的顺序浮点计算,而区块链虚拟机并非为此设计。在一个以太坊智能合约内部运行 GPT 规模的推理,并不是一个合理的期望。
合理 的期望是,该项目有意义地使用区块链:用于可验证的结果记录、用于计算资源的去中心化协调、用于透明的基于代币的激励机制,或用于对 AI 系统本身的治理。
关键问题:上链是否增添价值?
DecAIHub 的 Onchain necessity 评估提出这样的问题:如果你从这个项目中移除区块链组件,产品是否会发生根本性的改变?如果答案是"没有任何区块链参与,AI 也会完全一样地运作",那么链上组件可能只是装点门面——为了叙事目的而非功能必要性而添加。
具有强 Onchain necessity 的项目通常表现出这样的模式:
- 区块链协调一个由计算提供方组成的去中心化网络,他们为 AI 任务贡献资源。
- AI 模型的输出或决策检查点被记录在链上以供独立验证。
- 代币激励以一种没有区块链就难以复制的方式,对齐数据提供方、验证者或模型贡献者的行为。
- 对 AI 模型或其参数的治理通过链上机制进行。
具有弱 Onchain necessity 的项目可能表现出这样的模式:
- 一个标准的 AI 产品,附加了一个用于募资的代币,而该产品在没有代币或区块链的情况下也会完全一样地运作。
- 一个 AI 聊天机器人,其回复不被任何链上机制记录、验证或影响。
- 一个发行了代币但所有操作都在中心化基础设施上执行、没有有意义的链上集成的项目。
将技术问题与方法论问题分开
区分两个相关但不同的问题很重要:
- 技术性的: 这项操作是链上还是链下?——这是一个关于计算和数据驻留在何处的、事实性的、可观察的问题。
- 方法论性的: 这个项目对区块链的使用是否服务于一个必要的目的?——这是 DecAIHub 框架中的 Onchain necessity 问题,它涉及对项目架构和价值主张的判断。
本说明文档涵盖第一个问题。关于第二个问题,请参见 AI reality, Onchain necessity and Token necessity。
这在 DecAIHub 项目卡片中的体现
onchain-offchain 这一区别影响着若干项目卡片字段的解读方式:
- Onchain necessity —— 这是 onchain-offchain 概念在方法论上的直接应用。它评估项目的链上活动是否服务于真实的功能。
- Main chain —— 指明项目的链上活动被记录在何处。如果一个项目将
Ethereum列为其主链,那么它的链上交易和智能合约就存在于以太坊网络上。 - AI component —— AI component 字段描述项目的 AI 实际做什么(推理、计算、分析、训练、代理)。理解链上与链下有助于确定该 AI 组件 在哪里 运行,以及其输出如何被验证。
- Type 和 Category —— 像 L1、L2、协议和 dApp 这样的架构区分,暗示了不同的链上-链下平衡。一个 L1(通常为
Type: Appchain)是完全链上的基础设施。一个 dApp(通常为Type: EVM或non-EVM)可能主要是链下的,仅在链上结算。 - Evidence 表 —— 像代码仓库、已部署的合约和可验证的模型端点这样的 Tier-1 证据,有助于确立链上主张是否得到了实际链上活动的支持。
阅读一份项目卡片时,要问:究竟什么是链上的?它只是代币,还是区块链在 AI 工作流中扮演了一个功能性角色?这个问题的答案是 Onchain necessity 评估的核心。
仅凭链上活动无法证明什么
拥有链上活动——交易、智能合约、代币转账——告诉你该项目与区块链有交互,但它并不能证明:
- AI reality —— 一个项目可以有大量的链上活动(代币转账、质押合约、治理投票)却没有任何 AI 功能。链上活动和 AI reality 是相互独立的维度。
- AI 的去中心化 —— 将 AI 结果发布到链上并不意味着 AI 本身是去中心化的。模型可能运行在单一的中心化服务器上,只有其输出被记录在链上。
- 链下计算的正确性 —— 除非项目使用密码学验证(例如 ZK 证明),否则将结果记录在链上只能证明 有人提交了那些结果,而非底层计算被正确执行。
- 用户价值 —— 链上活动可以被人为制造。一个项目可以在不提供有意义服务的情况下制造大量交易。交易数量本身不是产品市场契合度的证据。
- Token necessity —— 链上智能合约的存在并不能解释项目为什么需要一个代币。一个有用的链上应用可以纯粹使用基础链的原生代币来支付 gas 费用,而无需自己的代币。
请勿混淆
- Decentralized(去中心化) —— "onchain"和"decentralized"是相关但不同的概念。一项操作可以是链上的(被记录在区块链上)而不是去中心化的(如果该区块链只有少数几个验证者)。而一个系统可以是去中心化的(分布在许多独立节点上)却根本不使用区块链(例如点对点文件共享)。
- 开源(Open-source) —— 开源代码是公开可供检查的。链上数据是公开可供验证的。这两者是互补但不同的:一个项目可以拥有运行在链下的开源代码,或生成链上交易的闭源代码。
- Onchain necessity(DecAIHub 指标) —— 术语"onchain"描述某件事发生在哪里。"Onchain necessity"是一项 DecAIHub 评估,它评估区块链的使用是否服务于真实的目的。本说明文档涵盖技术概念;方法论在 AI reality, Onchain necessity and Token necessity 中介绍。
- Layer 2(L2) —— L2 网络在链下(或在一条独立的链上)处理交易,并定期将证明或状态根结算回 L1。从用户的角度看,L2 交易感觉像是"链上的",但它们涉及与 L1 交易不同的信任模型。理解其中的细微差别需要知道一个项目的活动存在于哪一层。
常见问题
AI 可以在链上运行吗?
就大多数实际用途而言,目前还不能。在一个智能合约内部运行一个神经网络在通用区块链上成本高得令人望而却步。以太坊的执行环境为每一个计算步骤收取 gas,即便是简单的 ML 模型也会超出区块 gas 限制。一些专门的方法——例如将小模型编译进智能合约逻辑,或使用 ZK 证明来验证链下计算——正在被探索,但加密 AI 的标准架构是链下计算配合链上验证和结算。
如果 AI 在链下运行,区块链的意义何在?
区块链充当验证和协调层。即使 AI 计算发生在链下,区块链仍可以:记录结果以供独立审计、管理计算提供方与消费者之间的付款、通过智能合约执行激励规则、通过链上投票治理模型参数,以及为访问 AI 服务提供一个抗审查的接口。其价值在于区块链 验证和协调 什么,而不在于它 计算 什么。
我如何验证链下计算被正确执行了?
存在几种方法:(1)密码学证明 —— 零知识证明可以在不泄露底层数据的情况下,从数学上证明某项计算被正确执行。(2)冗余计算 —— 多个独立的方执行同一项计算并比较结果。(3)可信执行环境(TEE) —— 提供证明、表明代码按指定方式运行的硬件飞地。(4)声誉与质押 —— 计算提供方质押代币,若其产生错误结果则可被罚没。这些方法没有一个是完美的,每一种都在成本、速度和信任假设之间存在权衡。
当一个项目说它是"完全链上的"时意味着什么?
它通常意味着该项目的核心逻辑、状态和治理被实现为区块链上的智能合约,而非依赖链下服务器来执行关键功能。对一个简单的 DeFi 协议(例如代币兑换或借贷池)而言,做到"完全链上"是可行且有意义的。对一个 AI 项目而言,"完全链上"是一个强得多的主张,应当仔细审视——它是指 AI 模型本身在链上运行(极为罕见且昂贵),还是指代币机制和治理在链上而 AI 仍在链下?
链下意味着中心化吗?
不一定。链下计算可以分布在一个由独立提供方组成的去中心化网络中。去中心化计算网络通过基于区块链的市场协调链下 GPU 资源,在不将计算放进智能合约内部的情况下实现去中心化执行。链下只是意味着"不在区块链上"——它并不说明该操作是中心化的还是分布式的。
外部参考
- Ethereum.org — Transactions —— 解释以太坊链上交易的官方文档。
- On-chain vs. off-chain transactions (Wikipedia) —— 区块链架构中这一根本区别的概述。
- Ethereum.org — Scaling —— 关于扩容方法(包括链下计算配合链上验证)的说明。
No comments to display
No comments to display