முக்கிய உள்ளடக்கத்திற்கு தவிர்க்கவும்
AUTOGEN ஒருங்கிணைப்பு

AutoGen கட்டண ஒருங்கிணைப்பு.

AutoGen தொகுப்பு இல்லை, மற்றும் நீங்கள் ஒன்றை தேவைப்படவில்லை. உண்மையான blockchain0x கிளையைக் ஒரு செயல்பாட்டில் சுற்றி வைத்து, அதை உங்கள் முகவரிக்கு கொடுத்து, அது Base இல் USDC ஐ நகர்த்த முடியும்.

குறுகிய பதில்

AutoGen-specific package எதுவும் இல்லை, மேலும் உங்களுக்கு அது தேவையுமில்லை. AutoGen ஏற்கனவே ஒரு plain typed function-ஐ tool-ஆக மாற்றுகிறது, ஆகவே உண்மையான Python client-ஐ ஒரு function-இல் wrap செய்து, அதை -க்கு வழியாக கொடுக்கலாம், மேலும் agent Base-இல் USDC அனுப்பவும், invoices-ஐ settle செய்யவும், wallets-ஐ read செய்யவும் முடியும். அமைத்து தொடங்குங்கள்.

ஏன் எந்த தொகுப்பும் இல்லை

AutoGen ஏற்கனவே ஒரு செயல்பாட்டை ஒரு கருவியாக மாற்றுகிறது. அதை பயன்படுத்தவும்.

AutoGen ஒரு Python செயல்பாட்டின் கையொப்பம் மற்றும் ஆவணத்திலிருந்து நேரடியாக ஒரு கருவி வடிவமைப்பை உருவாக்குகிறது. ஒரு தனிப்பட்ட AutoGen அடாப்டர் நாங்கள் எழுதும் ஒரு செயல்பாட்டை மட்டுமே சுற்றி வைக்கும், பின்னர் AutoGen இன் வேகமாக நகரும் API உடன் ஒத்திசைவு இழக்கிறது. எனவே, நாங்கள் ஒன்றை அனுப்பவில்லை. நீங்கள் உண்மையான blockchain0x கிளையினை அழைக்கும் சில வரிகளை எழுதுகிறீர்கள், மற்றும் நீங்கள் வாதங்கள், சரிபார்ப்பு, மற்றும் பிழை கையாள்வில் முழு கட்டுப்பாட்டை வைத்திருக்கிறீர்கள்.

இது அனுப்பிய LangChain மற்றும் CrewAI அடிப்படைகள் அடிப்படையில் சுற்றி வைத்திருக்கும் அதே கிளையின்மேல் உள்ளது. இங்கு நீங்கள் அதை தானாகவே சுற்றி வைத்திருக்கிறீர்கள், அதாவது கண்காணிக்க எந்த அடிப்படையாளர் பதிப்பு இல்லை மற்றும் உங்கள் முகவர் மற்றும் API இடையே உங்கள் சொந்த செயல்பாட்டை தவிர எதுவும் இல்லை. பல முகவர் குழுக்கள் ஒரே விதத்தில் செயல்படுகின்றன: ஒரு முகவரிக்கு பணப்பை செயல்பாட்டை அளிக்கவும், மற்றவர்களை அதில் இல்லாமல் விடவும், மற்றும் செலவீன அதிகாரம் ஒரே இடத்தில் இருக்கும்.

நிறுத்துதல்

AutoGen மற்றும் மைய SDK ஐ நிறுவவும். ஒரு சுற்றுப்புற மாறி.

சேர்க்க எந்த தனிப்பட்ட AutoGen தொகுப்பும் இல்லை. நீங்கள் AutoGen ஐ (Python 3.10+) மற்றும் உண்மையான blockchain0x மைய SDK ஐ நிறுவுகிறீர்கள், பிறகு கீழே உள்ள செயல்பாட்டைப் எழுதுகிறீர்கள். இது முழு சார்பு பட்டியல்.

நிறுத்தவும்
pip install autogen-agentchat "autogen-ext[openai]" blockchain0x
சூழல் மாறி
export BLOCKCHAIN0X_API_KEY=sk_test_...   # sk_test_ = Base Sepolia, sk_live_ = Base mainnet

BLOCKCHAIN0X_API_KEY என்பது உங்கள் dashboard-இல் உள்ள sk_test_ testnet அல்லது sk_live_ mainnet key ஆகும்; client அதை environment-இலிருந்து வாசிக்கிறது. உங்கள் agent பணத்தையும் பெறுமானால், webhook handler-க்கு கூடுதலாக BLOCKCHAIN0X_WEBHOOK_SECRET தேவைப்படும், webhook-ஐ create அல்லது rotate செய்யும் போது dashboard அதை ஒருமுறை வழங்கும்.

செய்முறை

ஒரு செயல்பாடு, செலுத்தும், ஒரு உதவியாளர் முகவருக்கு வழங்கப்படுகிறது.

கீழே முழு ஒருங்கிணைப்பு உள்ளது. send_usdc உண்மையான blockchain0x கிளையினை அழைக்கிறது; AssistantAgent(tools=[send_usdc]) அதை மாதிரி அழைக்கக்கூடிய கருவியாக மாற்றுகிறது. AutoGen வகை குறிப்புகள் மற்றும் ஆவணத்தைப் படிக்கிறது, எனவே அவற்றை நேர்மையாக வைத்திருக்கவும். அதை இயக்கவும், முகவர் Base இல் USDC ஐ நகர்த்துகிறது.

AGENT.PY
from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient
from blockchain0x import Client

blockchain0x = Client()  # reads BLOCKCHAIN0X_API_KEY from the environment

# AutoGen turns a plain typed function into a tool. No dedicated package needed.
def send_usdc(agent_id: str, to: str, amount_wei: str) -> str:
    """Send a USDC payment from an agent wallet.

    amount_wei is USDC base units (6 decimals), so "10000" is 0.01 USDC.
    """
    result = blockchain0x.payments.create(
        body={"agentId": agent_id, "to": to, "amountWei": amount_wei},
    )
    return str(result)

treasurer = AssistantAgent(
    name="treasurer",
    model_client=OpenAIChatCompletionClient(model="gpt-4o"),
    tools=[send_usdc],
    system_message="You pay vendor invoices in USDC within owner-set limits.",
)

result = await treasurer.run(
    task="Pay 0.01 USDC from agent agt_123 to 0xVendor for the dataset.",
)

When the agent decides to pay, it calls send_usdc, the SDK submits the transfer, and you get a transaction hash back. amount_wei is base units, so 0.01 USDC is "10000". A sk_test_ key keeps it on Base Sepolia until you switch to sk_live_. Add more functions - read a wallet, settle an invoice - the same way; each becomes another entry in tools.

WEBHOOK கையாளுதல்

ஒரு கையொப்பம் செய்யப்பட்ட webhook உடன் உள்ளே வரும் கட்டணங்களை உறுதிப்படுத்தவும்.

உங்கள் எஜெண்ட் USDC ஐப் பெறுமானால், polling மூலம் அல்ல, webhook மூலம் உறுதிப்படுத்துங்கள். verify உதவியாளர் Node SDK இல் அனுப்பப்படுகிறது; ஒரு Python சேவையில் நீங்கள் ஆவணப்படுத்தப்பட்ட HMAC க்கு எதிராக கையால் சரிபார்க்கிறீர்கள், இது உதவியாளர் செய்யும் அனைத்தும். கீழே உள்ள FastAPI எடுத்துக்காட்டு; ஒரே குறியீடு எந்த அசிங்க் Python கட்டமைப்பிலும் வேலை செய்கிறது.

வெப்கோக்.PY
import hmac, hashlib, os, time
from fastapi import FastAPI, Request, HTTPException

app = FastAPI()
SECRET = os.environ["BLOCKCHAIN0X_WEBHOOK_SECRET"].encode()

@app.post("/webhooks/payment")
async def receive(request: Request):
    raw = await request.body()  # RAW bytes - do not parse first
    sig = request.headers.get("X-Blockchain0x-Signature", "")
    ts = request.headers.get("X-Blockchain0x-Timestamp", "")
    parts = dict(p.split("=", 1) for p in sig.split(",") if "=" in p)
    t, v1 = parts.get("t", ts), parts.get("v1", sig)
    want = hmac.new(SECRET, t.encode() + b"." + raw, hashlib.sha256).hexdigest()
    if not hmac.compare_digest(want, v1) or abs(time.time() - int(t)) > 300:
        raise HTTPException(status_code=401)
    if request.headers.get("X-Blockchain0x-Event-Type") == "payment.received":
        await trigger_followup()  # USDC landed - run the next step
    return {"ok": True}

அல்காரிதம் t.rawBody என்ற சரத்தில் HMAC-SHA256 ஆக உள்ளது, ஒரு நிலையான நேர ஒப்பீடு, மற்றும் 300-நிமிட மறுபடியும் விளையாட்டு ஜன்னல். await request.body() மூலம் கச்சா உடலைப் படிக்கவும், request.json() மீள்பெயரிடாதீர்கள், ஏனெனில் அது கையொப்பம் மூடப்படும் பைட்டுகளை மாற்றுகிறது. அனுப்பப்பட்ட நிகழ்வுகள் payment.received, payment.sent, wallet.deployed, மற்றும் webhook.test ஆக உள்ளன. எடை அதிகமான தொடர்ச்சியான வேலைக்கு, ஒரு வேலை (Celery, RQ, arq) சேர்க்கவும் மற்றும் கையாளரை மறுக்காமல் உடனடியாக 200 ஐ பதிலளிக்கவும்.

மூலமும் ஆவணங்களும்

நீங்கள் சுற்றி வைக்கும் கிளையன் திறந்தது. அதைப் படிக்கவும்.

Clone செய்ய AutoGen starter package இல்லை - மேலே உள்ள recipe-தான் integration. blockchain0x SDKs GitHub-இல் open source ஆக உள்ளன; இந்த recipe Python SDK (blockchain0x-python)-ஐ wrap செய்கிறது, முழு method surface docs-இல் உள்ளது. function bodies-க்கு reference ஆக அதை வாசிக்கவும்.

github.com/tosh-labs/blockchain0x-python

முழு SDK method surface மற்றும் scopes ஆகியவை the docs இல் ஆவணப்படுத்தப்பட்டுள்ளன. Base Sepolia-வில் sk_test_ key-யுடன் தொடங்கி, பின்னர் function நீங்கள் எதிர்பார்த்ததைச் செய்ததும் sk_live_ க்கு மாற்றவும்.

பொதுவான தவறுகள்

தவிர்க்க வேண்டிய ஐந்து குழு-சாட் மற்றும் அசிங்க் சிக்கல்கள்.

AutoGen இன் பல-ஏஜென்ட் + அசிங்க வடிவமைப்பு சக்திவாய்ந்த மாதிரிகளை திறக்கிறது, ஆனால் அதன் சொந்த பாதைகளையும் அறிமுகப்படுத்துகிறது. இவை எங்கள் ஆதரவு மின்னஞ்சலிலிருந்து வருகின்றன.

PITFALL 1

AutoGen தொகுப்பு இல்லை - நீங்கள் SDK ஐ சுற்றி வைத்திருக்கிறீர்கள்

Blockchain0x LangChain மற்றும் CrewAI க்கான அடாப்டர்களை மற்றும் MCP சேவையகத்தை அனுப்புகிறது; தனிப்பட்ட AutoGen தொகுப்பு இல்லை. மேலே உள்ள செய்முறை பாதை: உண்மையான blockchain0x கிளையண்டை அழைக்கும் ஒரு சாதாரண வகை செயல்பாடு, AssistantAgent(tools=[...]) க்கு வழங்கப்படுகிறது. AutoGen செயல்பாட்டின் கையொப்பம் மற்றும் ஆவணத்தை வாசித்து கருவியின் வடிவமைப்பை உருவாக்குகிறது, எனவே ஆவணத்தை சரியானதாக வைத்திருக்கவும்.

PITFALL 2

தொகைகள் USDC அடிப்படைக் அலகுகள், உரையாக

payments.create takes amountWei: a string of USDC base units, not a float and not a dollar figure. USDC has 6 decimals, so 0.01 USDC is "10000" and 5 USDC is "5000000". Type the tool argument as str and validate it before the call - a float that sneaks through either errors at the backend or moves a millionth of what you meant.

PITFALL 3

send_payment ஆரம்ப கட்டத்தில் 503 answer செய்யக்கூடும்

payments.create default-ஆக retry செய்யாது, மேலும் உங்கள் network-க்கு chain adapter இணைக்கப்படும் வரை 503 return செய்யக்கூடும். failed payment-இல் group chat loop ஆக விடாதீர்கள் - உங்கள் function-இல் error-ஐ catch செய்து, model செயல்படக்கூடிய தெளிவான message-ஐ return செய்யவும், மேலும் manual retry double-pay ஆகாதவாறு auto-minted idempotency key-யை நம்பவும்.

PITFALL 4

AutoGen 0.4+ என்பது async; SDK அழைப்பு ஒத்திசைவு

AutoGen 0.4 கருவிகளை async சுற்றில் இயக்குகிறது. blockchain0x கிளையினை அழைப்பது ஒத்திசைவு ஆக உள்ளது, இது ஒரு விரைவு கோரிக்கைக்காக சரியாக உள்ளது, ஆனால் ஒரு மெதுவான அழைப்பு சுற்றை அடைக்கிறது. நீங்கள் உண்மையான அளவுகளை நகர்த்துகிறீர்கள் என்றால், SDK அழைப்பை asyncio.to_thread உடன் சுற்றி வைக்கவும், எனவே நிகழ்வு சுற்று பதிலளிக்கக்கூடியதாக இருக்கும். ஒரு முறை ஒன்றுக்கு ஒரு செலவுக்கு, அதை நேரடியாக அழைப்பது சரியாக உள்ளது.

PITFALL 5

மூல உடலுக்கு எதிராக உள்ளீட்டு வெப்கோக்‌களை சரிபார்க்கவும்

உங்கள் எஜெண்ட் பணத்தை RECEIVES செய்தால், அதை polling மூலம் அல்ல, webhook மூலம் உறுதிப்படுத்துங்கள். RAW கோரிக்கையின் பைட்டுகளின் மீது கையொப்பத்தைச் சரிபார்க்கவும் (await request.body()), request.json() மறுபடியும் வரிசைப்படுத்தாதீர்கள், ஏனெனில் HMAC சரியான பைட்டுகளை மூடுகிறது. இது 300-வினாடி மறுபடியான ஜன்னலுடன் HMAC-SHA256 ஆகும். கீழே உள்ள கையாளி முழுமையாக உள்ளது.

அடிக்கடி கேட்கப்படும்

மூன்று AutoGen-சிறப்பு கேள்விகள்.

நிறுத்துவதற்கு ஒரு குறிப்பிட்ட AutoGen தொகுப்பு உள்ளதா?

இல்லை. ஒரு தனிப்பட்ட AutoGen இணைப்பாளர் இல்லை, மற்றும் அது நோக்கமாகவே உள்ளது - AutoGen ஏற்கனவே ஒரு சாதாரண வகை செய்யப்பட்ட செயல்பாட்டை ஒரு கருவியாக மாற்றுகிறது, எனவே நேர்மையான பாதை உண்மையான blockchain0x கிளையனை ஒரு செயல்பாட்டில் சுற்றி விடுவது மற்றும் அதை உங்கள் முகவருக்கு வழங்குவது, மேலே காட்டப்பட்டுள்ளபடி. அனுப்பப்பட்ட ஒரே கட்டமைப்பு தொகுப்புகள் blockchain0x-langchain மற்றும் blockchain0x-crewai (இரண்டுமே Python) மற்றும் @blockchain0x/mcp சேவையகம். மற்ற அனைத்தும், AutoGen உட்பட, இந்த சில வரி செய்முறை.

செய்முறை பழைய AutoGen (0.2.x) மற்றும் 0.4+ இல் வேலை செய்கிறதா?

ஆம், ஏனெனில் பணம் செலுத்தும் தரவியல் ஒரு Python செயல்பாடு மட்டுமே - AutoGen-பதிப்பு குறிப்பிட்டது அதில் வாழவில்லை. 0.4+ இல் நீங்கள் மேலே உள்ள AssistantAgent(tools=[...]) மூலம் அதை செலுத்துகிறீர்கள். 0.2.x ConversableAgent வரியில் நீங்கள் register_function உடன் அதே செயல்பாட்டைப் பதிவு செய்கிறீர்கள். ஏனெனில் எந்த தொகுப்பும் இல்லை, நீங்கள் செயல்பாட்டை சொந்தமாகக் கொண்டுள்ளீர்கள்.

எப்படி என் எஜெண்ட் USDC ஐ பெறுகிறது அல்லது ஒரு விலைப்பட்டியலை ஒத்திசைக்கிறது, அதை மட்டும் அனுப்புவதில்லை?

client-இன் மேலும் பகுதிகளை இதே முறையில் wrap செய்யவும். blockchain0x.transactions.get ஒரு transaction-ஐ வாசிக்கிறது, blockchain0x.agents.get மற்றும் blockchain0x.agents.list wallets-ஐ வாசிக்கின்றன, மேலும் blockchain0x.payment_requests.settle dashboard-இல் நீங்கள் உருவாக்கிய invoice-ஐ on-chain proof-உடன் settle செய்கிறது. ஒவ்வொன்றும் உங்கள் tools list-இல் இன்னொரு typed function ஆகிறது. Inbound payments payment.received webhook மூலம் உறுதிப்படுத்தப்படுகின்றன (கீழே உள்ள handler-ஐ பயன்படுத்தி அதை verify செய்யவும்); payment requests dashboard-இல் உருவாக்கப்படுவதால், புதிய invoice-ஐ mint செய்யும் tool எதுவும் இல்லை.

உங்கள் AutoGen எஜெண்டிற்கு ஒரு பணப்பையை வழங்குங்கள்.

உண்மையான கிளையன்ட் சுற்றி சில வரிகள், நிறுவுவதற்கு எந்த பேக்கேஜும் இல்லை. தொடங்குவதற்கு இலவசம்.