跳到主要内容
Open In ColabOpen on GitHub

GOAT

GOAT 是面向 AI 代理的金融工具包。

概述

创建能够执行以下操作的代理:

  • 发送和接收付款
  • 购买实物和数字商品及服务
  • 参与各种投资策略
    • 获取收益
    • 在预测市场中下注
  • 购买加密资产
  • 将任何资产通证化
  • 获取财务见解

工作原理

GOAT 利用区块链、加密货币(如稳定币)和钱包作为基础设施,使代理能够成为经济行为者。

  1. 为您的代理提供一个钱包
  2. 允许它在任何地方进行交易
  3. 使用超过+200 个工具

在此查看 GOAT 支持的所有功能。

轻量级和可扩展 与其他工具包不同,GOAT 旨在保持其核心最小化,并允许您仅安装所需的工具,从而实现轻量级和可扩展性。

如果您在我们提供的 200 多个集成中没有找到所需功能,您可以轻松地:

  • 创建您自己的插件
  • 集成新的区块链
  • 集成新的钱包
  • 集成新的代理框架

在此查看如何操作。

快速入门

最佳入门方式是使用下面的快速入门。了解如何配置 GOAT 以实现以下任何用例。

设置

  1. 安装核心软件包和 LangChain 适配器
pip install goat-sdk goat-sdk-adapter-langchain
  1. 安装您想使用的钱包类型(例如 Solana)
pip install goat-sdk-wallet-solana
  1. 安装您想在该链中使用的插件
pip install goat-sdk-plugin-spl-token

实例化

现在我们可以实例化我们的工具包

from goat_adapters.langchain import get_on_chain_tools
from goat_wallets.solana import solana, send_solana
from goat_plugins.spl_token import spl_token, SplTokenPluginOptions
from goat_plugins.spl_token.tokens import SPL_TOKENS

# Initialize Solana client
client = SolanaClient(os.getenv("SOLANA_RPC_ENDPOINT"))

# Initialize regular Solana wallet
keypair = Keypair.from_base58_string(os.getenv("SOLANA_WALLET_SEED") or "")
wallet = solana(client, keypair)

tools = get_on_chain_tools(
wallet=wallet,
plugins=[
send_solana(),
spl_token(SplTokenPluginOptions(
network="mainnet", # Using devnet as specified in .env
tokens=SPL_TOKENS
)),
],
)

调用

tools["get_balance"].invoke({ "address": "0x1234567890123456789012345678901234567890" })

在代理中使用

import os
import asyncio
from dotenv import load_dotenv

# Load environment variables
load_dotenv()

from solana.rpc.api import Client as SolanaClient
from solders.keypair import Keypair

from goat_adapters.langchain import get_on_chain_tools
from goat_wallets.solana import solana, send_solana
from goat_plugins.spl_token import spl_token, SplTokenPluginOptions
from goat_plugins.spl_token.tokens import SPL_TOKENS

# Initialize Solana client
client = SolanaClient(os.getenv("SOLANA_RPC_ENDPOINT"))

# Initialize regular Solana wallet
keypair = Keypair.from_base58_string(os.getenv("SOLANA_WALLET_SEED") or "")
wallet = solana(client, keypair)

# Initialize LLM
llm = ChatOpenAI(model="gpt-4o-mini")

def main():
# Initialize tools with Solana wallet
tools = get_on_chain_tools(
wallet=wallet,
plugins=[
send_solana(),
spl_token(SplTokenPluginOptions(
network="mainnet", # Using devnet as specified in .env
tokens=SPL_TOKENS
)),
],
)

# Initialize agent
# Your agent code here


if __name__ == "__main__":
main()

API 参考