使用AINetwork Toolkit与AINetwork区块链交互

# 使用AINetwork Toolkit与AINetwork区块链交互

AI Network是一个为大规模AI模型设计的1层区块链,它通过去中心化GPU网络和$AIN代币来支持AI驱动的NFT(AINFTs)。AINetwork Toolkit是一套用于与AINetwork区块链交互的工具。这些工具能使你转移AIN、读取和写入数据、创建应用程序,以及设置区块链数据库内特定路径的权限。

## 安装依赖

在使用AINetwork Toolkit之前,你需要安装`ain-py`包。可以使用pip命令进行安装:

```bash
%pip install --upgrade --quiet ain-py langchain-community

设置环境变量

你需要设置AIN_BLOCKCHAIN_ACCOUNT_PRIVATE_KEY环境变量,以存储你的AIN区块链账户私钥。

import os

# 设置区块链账户私钥
os.environ["AIN_BLOCKCHAIN_ACCOUNT_PRIVATE_KEY"] = "your-private-key"

获取AIN区块链私钥

如果环境变量中没有私钥,会自动创建一个新的账户并设置私钥。

import os
from ain.account import Account

# 创建或获取区块链账户
if os.environ.get("AIN_BLOCKCHAIN_ACCOUNT_PRIVATE_KEY", None):
    account = Account(os.environ["AIN_BLOCKCHAIN_ACCOUNT_PRIVATE_KEY"])
else:
    account = Account.create()
    os.environ["AIN_BLOCKCHAIN_ACCOUNT_PRIVATE_KEY"] = account.private_key
    print(f"address: {account.address}\nprivate_key: {account.private_key}")

# 重要提示: 请务必将私钥保存好以便未来使用,丢失私钥意味着无法访问你的账户。

初始化AINetwork Toolkit

通过以下代码初始化AINetwork Toolkit并获取工具列表:

from langchain_community.agent_toolkits.ainetwork.toolkit import AINetworkToolkit

toolkit = AINetworkToolkit()
tools = toolkit.get_tools()
address = tools[0].interface.wallet.defaultAccount.address

初始化Agent

使用AINetwork Toolkit来初始化Agent:

from langchain.agents import AgentType, initialize_agent
from langchain_openai import ChatOpenAI

# 配置OpenAI语言模型
llm = ChatOpenAI(temperature=0)
agent = initialize_agent(
    tools=tools,
    llm=llm,
    verbose=True,
    agent=AgentType.OPENAI_FUNCTIONS,
)

示例用法

这里有一些示例展示如何使用Agent与AINetwork Toolkit进行交互。

创建区块链应用

appName = f"langchain_demo_{address.lower()}"
print(agent.run(f"Create an app in the AINetwork Blockchain database with the name {appName}"))

设置路径下的值

print(agent.run(f"Set the value {{1: 2, '34': 56}} at the path /apps/{appName}/object ."))

设置路径权限

print(agent.run(f"Set the write permissions for the path /apps/{appName}/user/$from with the eval string auth.addr===$from ."))

检索路径权限

print(agent.run(f"Retrieve the permissions for the path /apps/{appName}."))

获取AIN余额

print(agent.run(f"Check AIN balance of {address}"))

转移AIN

print(agent.run("Transfer 100 AIN to the address 0x19937b227b1b13f29e7ab18676a89ea3bdea9c5b"))

如果遇到问题欢迎在评论区交流。

---END---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值