Ir al contenido principal
Versión: 2.0.0

Plantilla de inicio de Agentkit de CDP

Visión general

Esta plantilla muestra un agente onchain impulsado por AgentKit de Coinbase con el framework Next.js en el frontend y LangGraph para la configuración del agente. El agente está diseñado para capacidades on-chain impulsadas por IA.

AgentKit gestiona estas interacciones utilizando un nodo Gaia para la inferencia de Large Language Model (LLM).

cdp-image

Características

  • Interacciones en la cadena impulsadas por IA: Aprovecha AgentKit para permitir a los agentes de IA realizar acciones en las redes de blockchain.

  • Con prueba de arranque: Construido como un proyecto Next.js con un LangGraph en el servidor, bootstrapped con npm create onchain-agent@latest.

  • LLM configurable: Admite la integración con LLM alojados en nodos Gaia, configurados específicamente para la inferencia de uso de herramientas (por ejemplo, Llama-3-Groq-8B-Tool, Llama-3.3-70B-Instruct-Q5_K_M).

  • Gestión de carteras: Se integra con un SmartWalletProvider para las interacciones de blockchain, con gestión persistente de los datos del monedero.

  • Acciones extensibles: Utiliza varios proveedores de acciones (por ejemplo, WETH, Pyth, ERC20, API CDP, acciones Wallet) para definir las capacidades del agente.

  • Interfaz de chat: Proporciona una interfaz de chat fácil de usar para interactuar con el agente.

  • Respuestas en tiempo real: Las respuestas de los agentes se transmiten en streaming para una experiencia de usuario más interactiva.

  • Memoria: Incorpora memoria para conversaciones mediante MemorySaver de LangGraph.

Para empezar

Requisitos previos

  1. Node.js 18 o posterior está instalado
  2. Confirme que npm 9 o posterior está instalado

Comprueba las versiones de Node.js y npm:

node --version # Debe ser 18+
npm --version # Debe ser 9+
  1. Puede utilizar un nodo público de Gaia, por ejemplo: https://llama70b.gaia.domains/v1 o ejecutar el nodo localmente.

Crear un nuevo proyecto

Puede utilizar la CLI para arrancar un nuevo proyecto Agenkit con el siguiente comando:

npm create onchain-agent@latest

Siga las instrucciones de la CLI para configurar su proyecto y elija la opción Smart wallet (por defecto) para la configuración. También puede hacer una elección de marco entre:

  • Cadena LangChain
  • Vercel AI SDK

También hay una opción de Protocolo de Contexto de Modelo (MCP), pero, en esta guía, cubriremos el uso de la opción LangChain.

Configurar secretos y valores

Cambie el nombre del .env.ejemplo a .env y asegúrese de que tiene los valores indicados a continuación:

CDP_API_KEY_NAME=
CDP_API_KEY_PRIVATE_KEY= CLAVE PRIVADA

# Opcional
NETWORK_ID=base-sepolia

Para obtener los valores de CDP_API_KEY_NAME y CDP_API_KEY_PRIVATE_KEY diríjase a Portal CDP para crear una nueva clave API. Copie el nombre de la clave API y los valores de la clave privada del modal que aparece.

En ID_RED puede permanecer como base-sepolia y podrá explorar las posibles opciones de red también.

Estructura del proyecto

└── onchain-agent/
├── README.md
├── next-env.d.ts
├── next.config.js
├── package.json
├── postcss.config.mjs
├── tailwind.config.ts
├── tsconfig.json
├── wallet_data.txt
├── .eslintrc.json
├── .npmignore
├── .yarnrc.yml
└── app/
├── globals.css
├── layout.tsx
├── page.tsx
├── api/
│ └── agent/
│ ├── create-agent.ts
│ ├── prepare-agentkit.ts
│ └── route.ts
├── hooks/
│ └── useAgent.ts
└── tipos/
└── api.ts

Integración de Gaia

información

Un nodo local de Gaia no requiere una clave API. Necesitará una clave API de Gaia para utilizar nodos públicos.

La inferencia LLM se descarga en un nodo Gaia:

  • El LLM se configura en app/api/agent/create-agent.ts.
  • El proyecto utiliza ChatOpenAI de @langchain/openai para conectar con el nodo Gaia.
  • El modelo concreto configurado es "Llama-3-Groq-8B-Tool".
  • El punto final del nodo Gaia se establece mediante la opción baseURL en el ChatOpenAI configuración:

Por ejemplo, con un nodo local ejecutándose en una máquina:

const llm = new ChatOpenAI({
model: "Llama-3-Groq-8B-Tool",
configuration: {
baseURL: "https://YOUR_NODE_ID.gaia.domains/v1", // Gaia node URL
apiKey: "gaia", // API key for the Gaia node (if required)
},
});

Ejecutar plantilla

El siguiente comando ejecuta la plantilla:

npm run dev

Con la plantilla en ejecución, hay algunos ejemplos de avisos que puede utilizar para probar el agente:

  • "¿Cuál es la dirección de tu cartera?"
  • "¿Cuál es el saldo de tu cartera? Compruébelo y confírmelo".
  • "Comparte los detalles de tu cartera incluyendo toda la información relevante".

Documentación

Para más información y temas avanzados, consulte la siguiente documentación oficial: