Skip to main content
Open In ColabOpen on GitHub

GOAT

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

概览

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

  • 发送和接收付款
  • 购买实体和数字商品及服务
  • 参与各种投资策略:
    • 赚取收益
    • 预测市场投注
  • 购买加密资产
  • 代币化任何资产
  • 获取金融洞察

工作原理

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

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

在此处 查看 GOAT 支持的所有内容

轻量级且可扩展 与其他工具包不同,GOAT 的设计理念是轻量级且可扩展,其核心极其精简,允许您仅安装所需的工具。

如果您在我们超过 200 个集成中找不到所需内容,您可以轻松地:

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

在此处 查看如何操作

快速入门

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

  • 按用例分类
  • 按钱包分类
  • 在此处查看所有 python 快速入门指南 here

设置

  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

# 初始化 Solana 客户端
client = SolanaClient(os.getenv("SOLANA_RPC_ENDPOINT"))

# 初始化常规 Solana 钱包
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", # 在 .env 中指定使用 devnet
tokens=SPL_TOKENS
)),
],
)

调用

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

在 agent 中使用

import os
import asyncio
from dotenv import load_dotenv

# 加载环境变量
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

# 初始化 Solana 客户端
client = SolanaClient(os.getenv("SOLANA_RPC_ENDPOINT"))

# 初始化常规 Solana 钱包
keypair = Keypair.from_base58_string(os.getenv("SOLANA_WALLET_SEED") or "")
wallet = solana(client, keypair)

# 初始化 LLM
llm = ChatOpenAI(model="gpt-4o-mini")

def main():
# 使用 Solana 钱包初始化工具
tools = get_on_chain_tools(
wallet=wallet,
plugins=[
send_solana(),
spl_token(SplTokenPluginOptions(
network="mainnet", # 在 .env 中指定使用 devnet
tokens=SPL_TOKENS
)),
],
)

# 初始化 agent
# 在此处添加您的 agent 代码


if __name__ == "__main__":
main()

API 参考