Skip to main content
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 参考