Logo
新用户订阅 RPC,首月享 6.5 折优惠查看优惠
RPC Assistant

Bittensor 子网 123:它是什么以及如何连接?

摘要

Bittensor 子网 123 是运行在 Bittensor 网络之上的编号激励子网之一。每个子网都有自己的任务、矿工和验证者激励设计,以及自己的链上注册和质押记账,因此“子网 123”最好理解为特定子网的 netuid,而不是固定的产品名称。如果你正在其上构建,实际问题通常是:如何读取其状态以及如何可靠地访问 Bittensor 链。

本页解释了 Bittensor 子网 netuid 的含义,如何通过链检查子网 123,以及如何使用 Bittensor RPC 端点进行连接。OnFinality 为 Bittensor Finney 提供 RPC API 访问和专用节点选项,因此你无需运行自己的节点即可查询子网数据。

Bittensor 是一个去中心化的机器学习网络,许多独立的“子网”在其中竞争以产生有用的工作。每个子网由一个称为 netuid 的数字标识。当人们问起“子网 123”时,他们问的是在 Bittensor 链上以该 netuid 注册的子网。

简短的回答:子网 123 是 Bittensor 上的一个特定子网,由其 netuid、激励机制以及注册到它的矿工和验证者定义。它不是一个具有永久描述的固定产品,因为子网会演变,其目的由构建和运营它们的人设定。保持稳定的是链上身份:netuid、质押、注册成本和排放流。

如果你是开发者,有用的问题不仅是“它是什么”,还有“我如何读取其状态并连接到它”。本页回答了这两个问题,然后展示了如何通过 RPC 端点查询 Bittensor。

如何从链上读取子网 123

在与任何子网集成之前,请确认它在链上实际是什么,而不是依赖你在某处读到的描述。Bittensor 将子网元数据和超参数存储在链状态中,你可以通过 Subtensor RPC 接口读取它们。

最可靠的路径是直接查询链。在 Bittensor Finney(主网)上,你可以使用公共 RPC 端点:

curl -s https://bittensor-finney.api.onfinality.io/public \
  -H 'Content-Type: application/json' \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "chain_getHeader",
    "params": []
  }'

这确认了你正在与正确的链通信。要检查子网特定数据,你需要查询 Subtensor 运行时存储中你关心的 netuid。确切的存储键和方法名称取决于运行时版本,因此请检查当前的 Subtensor 元数据,而不是硬编码假设。

识别子网的实用检查清单:

需要确认的内容查看位置为什么重要
Netuid 和子网身份Subtensor 子网存储确认你正在读取正确的子网
激励机制子网超参数和文档告诉你矿工和验证者实际做什么
注册成本子网注册存储影响你是否可以作为矿工加入
排放和质押链状态和质押数据显示奖励如何流动
所有者和运营者链上账户数据帮助你评估谁在运营它

如果仅从链上数据无法明确子网的目的,请将该子网自己的文档和社区渠道视为其任务定义的真相来源。链上数据告诉你机制;运营者定义使命。

何时需要 RPC 端点 versus 自己的节点

这是大多数构建者早期面临的决策。读取 Bittensor 状态和与子网交互有三种广泛的选择。

  • 公共 RPC 端点。 最快的入门方式。适用于仪表板、脚本、测试和轻量级生产读取。你与其他用户共享容量,因此将其视为起点,而不是对繁重或延迟敏感工作负载的保证。
  • 专用节点。 你为自己的应用程序获得隔离的容量。这适合索引器、高频轮询、验证者工具,以及任何共享公共容量成为瓶颈的场景。
  • 自托管节点。 最大控制权,但你需要拥有硬件、同步、升级和监控。对于像 Bittensor 这样的基于 Substrate 的链,这是一项真正的运营承诺。

一个简单的决定方法:

你的情况合理的起点
首次探索子网 123公共 RPC 端点
构建具有稳定流量的仪表板或机器人托管 RPC API,然后扩展
运行验证者或矿工基础设施专用节点
需要完全控制并有运营能力自托管节点

OnFinality 提供 Bittensor Finney RPC 端点 以及 专用节点 选项,如果你超出共享访问。你可以在 RPC 定价 页面比较计划,并在 支持的 RPC 网络 列表中查看其他链。

连接到 Bittensor Finney

Bittensor 主网称为 Finney。原生代币是 TAO,有 9 位小数。如果你正在连接客户端,这些是你需要的设置。

设置
网络Bittensor Finney 主网
原生代币TAO(9 位小数)
HTTP RPChttps://bittensor-finney.api.onfinality.io/public
WebSocket RPCwss://bittensor-finney.api.onfinality.io/public-ws
传输HTTP 和 WebSocket

因为 Bittensor 是基于 Substrate 的网络,你使用 Substrate JSON-RPC 方法与之交互,而不是像 eth_call 这样的 EVM 方法。这一区别让习惯以太坊风格工具的开发者感到困惑。

一个最小的 JavaScript WebSocket 连接如下所示:

const WebSocket = require('ws');

const ws = new WebSocket('wss://bittensor-finney.api.onfinality.io/public-ws');

ws.on('open', () => {
  ws.send(JSON.stringify({
    jsonrpc: '2.0',
    id: 1,
    method: 'chain_getBlockHash',
    params: []
  }));
});

ws.on('message', (data) => {
  console.log('Block hash:', data.toString());
  ws.close();
});

如果你使用 Substrate 客户端库,将其指向相同的端点,并让库处理元数据和存储查询。这通常比手动编写 JSON-RPC 调用进行子网存储查询更简洁。

使用子网时的常见错误

当开发者首次接触 Bittensor 子网时,有几个问题反复出现。

  • 假设 EVM 方法有效。 Bittensor 基于 Substrate。像 eth_getBalance 这样的方法不是正确的工具。使用 Substrate RPC 和存储查询。
  • 硬编码 netuid 假设。 子网超参数和存储布局可能在运行时升级之间改变。读取元数据,而不是假设固定模式。
  • 混淆子网身份与子网目的。 netuid 是稳定的;子网的任务和社区可以改变。验证链上数据和子网自己的文档。
  • 忽略注册成本。 如果你计划注册为矿工,成本是动态的并由子网设定。在承诺之前检查它。
  • 将公共端点视为无限。 共享端点适合探索,但生产工作负载应计划专用容量。

调试连接问题

当 Bittensor RPC 调用失败时,按顺序处理,而不是猜测。

症状可能原因下一步
连接被拒绝URL 或传输错误确认 HTTP 与 WebSocket 以及确切的路径
方法未找到使用 EVM 风格方法切换到 Substrate JSON-RPC 方法
空或 null 结果错误的存储键或 netuid重新读取运行时元数据
负载下超时共享端点饱和迁移到专用节点
区块高度陈旧客户端缓存或错误的链重新查询 chain_getHeader

一个快速健康探测是请求最新区块头,并将区块号与区块浏览器进行比较。如果高度在移动,你的连接是活跃的。如果冻结,你可能指向了一个陈旧或配置错误的端点。

在生产中运营子网 123 工具

一旦你超越探索阶段,可靠性成为主要关注点。一些实践有帮助:

  • 分离读取和写入路径。 读取密集型的仪表板和写入密集型的注册或质押流程有不同的需求。不要假设一个端点配置适合两者。
  • 添加故障转移。 配置一个辅助端点,以便单个连接问题不会导致服务中断。
  • 监控区块高度和响应时间。 这两个信号能及早发现大多数连接问题。
  • 为运行时升级做计划。 Substrate 链定期升级。在部署前针对当前运行时进行测试。
  • 跟踪子网特定指标。 注册成本、排放和质押是你的用户会问到的数字。

如果你运行与子网相关的验证者或矿工基础设施,专用节点为你提供可预测的容量,并将你与共享端点上的嘈杂邻居隔离。

关键要点

  • Bittensor 子网 123 是通过其在 Bittensor 链上的 netuid 标识的特定子网,而不是固定的产品名称。
  • 链上数据告诉你机制:netuid、注册成本、质押和排放。子网自己的文档定义其任务。
  • Bittensor 基于 Substrate,因此你使用 Substrate JSON-RPC 方法,而不是 EVM 方法。
  • Bittensor 主网是 Finney,原生代币是 TAO,有 9 位小数。
  • 从公共 RPC 端点开始探索,然后迁移到 专用节点 用于生产工作负载。
  • OnFinality 提供 Bittensor Finney RPC 访问;查看 RPC 定价支持的 RPC 网络 了解选项。

常见问题

什么是 Bittensor 子网 123?

它是在 Bittensor 网络上以 netuid 123 注册的子网。其目的由运营它的人定义,而其链上身份、质押和排放可从链状态读取。

子网 123 是代币还是链?

都不是。子网是运行在 Bittensor 链上的编号激励机制。它使用 TAO 进行质押和注册,但它不是单独的链或独立的代币。

如何连接到 Bittensor 以读取子网 123 数据?

使用 Bittensor Finney RPC 端点。OnFinality 在 Bittensor Finney 网络页面 提供 HTTP 和 WebSocket 访问。查询 Subtensor 存储中你想要的 netuid。

我可以在 Bittensor 上使用像 ethers.js 这样的以太坊工具吗?

不能直接使用。Bittensor 基于 Substrate,因此你需要 Substrate 兼容的工具和 JSON-RPC 方法,而不是 EVM 方法。

我需要自己的节点来与子网交互吗?

对于探索和轻量级生产,托管 RPC 端点通常就足够了。对于高频轮询、索引或验证者和矿工基础设施,专用节点是更实际的选择。

如何知道一个子网是否值得构建?

检查其注册成本、排放流、质押分布和链上运营者活动,然后阅读其文档以了解任务。链上机制加上运营者意图共同讲述真实故事。

RPC 知识库

相关 RPC 内容

RPC 提供商选择BNB Chain

如何为高吞吐量工作负载扩展 BNB Chain RPC

为了扩展 BNB Smart Chain (BSC) RPC 以应对高吞吐量工作负载,不要将每秒请求数视为唯一指标。一个快速执行 eth_call 和 eth_getTransactionReceipt 循环的交易机器人、一个使用 eth_getLogs 扫描大区块范围的分析索引器,以及一个广播交易...

网络 RPCMonad

什么是 peaq 主网,如何连接?

peaq 主网是面向 DePIN(去中心化物理基础设施网络)经济的生产级 Layer 1 区块链,旨在支持现实世界的设备和机器工作负载。本文解释了 peaq 主网是什么、其主要功能,以及如何使用 RPC 端点、链设置和实际示例连接您的应用程序。...

网络 RPCBNB Chain

什么是币安智能链的RPC URL?

BNB智能链的官方公共RPC URL是 https://bnb.api.onfinality.io/public。该端点允许您查询BNB智能链主网,而无需运行自己的节点。对于生产环境,您应评估提供更高速率限制、归档数据和WebSocket支持的管理型和专用RPC选项。...

网络 RPCAvalanche

Base Network RPC:如何连接以及应使用哪个端点?

Base 是基于 OP Stack 构建的以太坊 Layer 2,因此其 RPC 接口与以太坊工具链兼容 JSON-RPC。您只需将客户端指向链 ID 为 8453 的 Base 端点即可连接,大多数以太坊库几乎无需修改或只需少量修改即可使用。主要决策在于选择哪个端点、如何处理速率限制,以及如何在流...

网络 RPCAvalanche

什么是 peaq 网络区块链,以及如何连接到它?

peaq 是一条专为机器、车辆、机器人和其他需要链上身份、支付和数据的设备构建的 Layer-1 区块链。其 EVM 兼容运行时意味着大多数以太坊工具只需更改网络即可使用,因此开发者通常从连接 RPC 端点并读取链状态开始。 本页解释了 peaq 是什么、如何将其添加到钱包、如何进行 JSON-RP...

网络 RPCArbitrum

Arbitrum API:端点、方法及生产环境建议

Arbitrum API 允许开发者使用标准的以太坊 JSON-RPC 方法与 Arbitrum One 和 Arbitrum Nova 交互,完全兼容 EVM。本文涵盖链设置、常见 API 调用、提供商选择标准以及生产环境 dApp 的最佳实践。...

永远不用担心基础设施

OnFinality 消除了 DevOps 的繁重工作,让您能够更聪明、更快地构建。

开始