CDP'nin Agentkit Başlangıç Şablonu
Genel Bakış
Bu şablon, Coinbase'in AgentKit'i tarafından desteklenen, ön uçta Next.js çerçevesi ve aracının kurulumu için LangGraph ile bir zincirleme aracıyı göstermektedir. Aracı, yapay zeka odaklı zincir içi yetenekler için tasarlanmıştır.
AgentKit bu etkileşimleri Büyük Dil Modeli (LLM) çıkarımı için bir Gaia düğümü kullanarak gerçekleştirir.
Özellikler
-
Yapay zeka güdümlü zincir içi etkileşimler: Yapay zeka ajanlarının blok zinciri ağlarında eylemler gerçekleştirmesini sağlamak için AgentKit'ten yararlanır.
-
Bootstrapped: Sunucuda bir LangGraph ile bir Next.js projesi olarak oluşturuldu, şu şekilde önyüklendi
npm create onchain-agent@latest
. -
Yapılandırılabilir LLM: Gaia düğümlerinde barındırılan, özellikle araç kullanımı çıkarımı için yapılandırılmış LLM'lerle entegrasyonu destekler (örneğin, Llama-3-Groq-8B-Tool, Llama-3.3-70B-Instruct-Q5_K_M).
-
Cüzdan yönetimi: ile entegre olur
SmartWalletProvider
kalıcı cüzdan veri yönetimi ile blok zinciri etkileşimleri için. -
Genişletilebilir eylemler: Aracının yeteneklerini tanımlamak için çeşitli Eylem Sağlayıcıları (örneğin, WETH, Pyth, ERC20, CDP API, Cüzdan eylemleri) kullanır.
-
Sohbet arayüzü: Temsilci ile etkileşim için kullanıcı dostu bir sohbet arayüzü sağlar.
-
Akışlı yanıtlar: Temsilci yanıtları daha etkileşimli bir kullanıcı deneyimi için yayınlanır.
-
Hafıza: Kullanarak konuşmalar için bellek içerir
MemorySaver
LangGraph'tan.
Başlarken
Ön Koşullar
- Node.js 18 veya üstü yüklü
- npm 9 veya üstünün kurulu olduğunu onaylayın
Node.js ve npm sürümlerinizi kontrol edin:
node --version # 18+ olmalıdır
npm --version # 9+ olmalıdır
- Genel bir Gaia düğümü kullanabilirsiniz, örneğin: https://llama70b.gaia.domains/v1 ya da düğümü yerel olarak çalıştırabilirsiniz.
Yeni bir proje oluşturma
Aşağıdaki komutla yeni bir Agenkit projesi başlatmak için CLI'yı kullanabilirsiniz:
npm create onchain-agent@latest
Projenizi kurmak için CLI'daki talimatları izleyin ve kurulum için Akıllı cüzdan (varsayılan) seçeneğini seçin. Arasından bir çerçeve seçimi de yapabilirsiniz:
- LangChain
- Vercel AI SDK
Ayrıca bir Model Bağlam Protokolü (MCP) seçeneği de vardır, ancak bu kılavuzda LangChain seçeneğini kullanmayı ele alacağız.
Gizli dizileri ve değerleri yapılandırma
Yeniden adlandırın .env.example
için .env
ve aşağıdaki değerlere sahip olduğunuzdan emin olun:
CDP_API_KEY_NAME=
CDP_API_KEY_PRIVATE_KEY=
# İsteğe bağlı
NETWORK_ID=base-sepolia
Değerleri elde etmek için CDP_API_KEY_NAME
ve CDP_API_KEY_PRIVATE_KEY
şuraya gidin CDP portalı yeni bir API anahtarı oluşturmak için. API anahtar adını ve özel anahtar değerlerini görüntülenen modalden kopyalayın.
Bu NETWORK_ID
olarak kalabilir base-sepolia
ve mümkün olanları keşfedebilirsiniz ağ seçenekleri aynı zamanda.
Proje yapısı
└── 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
└── types/
└── api.ts
Gaia Entegrasyonu
Yerel bir Gaia düğümü bir API anahtarı gerektirmez. Genel düğümleri kullanmak için bir Gaia API anahtarına ihtiyacınız olacaktır.
LLM çıkarımı bir Gaia düğümüne yüklenir:
- LLM şu şekilde yapılandırılır
app/api/agent/create-agent.ts
. - Proje şunları kullanıyor
ChatOpenAI
itibaren@langchain/openai
Gaia düğümüne bağlanmak için. - Yapılandırılan özel model "Llama-3-Groq-8B-Tool "dur.
- Gaia düğüm uç noktası şu yolla ayarlanır
baseURL
içindeChatOpenAI
Yapılandırma:
Örneğin bir makinede çalışan yerel bir düğüm ile:
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)
},
});
Şablonu çalıştır
Aşağıdaki komut şablonu çalıştırır:
npm run dev
Şablon çalışırken, aracıyı test etmek için kullanabileceğiniz birkaç örnek istem vardır:
- "Cüzdan adresiniz nedir?"
- "Cüzdan bakiyeniz nedir? Kontrol edin ve onaylayın."
- "İlgili tüm bilgileri içeren cüzdan bilgilerinizi paylaşın."
Dokümantasyon
Daha fazla bilgi ve ileri düzey konular için aşağıdaki resmi belgelere bakın:
-
AgentKit Dokümantasyonu:
- GitHub: https://github.com/coinbase/agentkit
- CDP Dokümanları: https://docs.cdp.coinbase.com/agentkit/docs/welcome
-
GaiaNet Dokümantasyonu:
- Gaia Düğüm Kurulumu (örnek Llama-3-Groq-8B-Tool): https://github.com/GaiaNet-AI/node-configs/tree/main/llama-3-groq-8b-tool
-
Coinbase Geliştirici Platformu (CDP): https://docs.cdp.coinbase.com/