ai newsDi., 27. Okt.
EilmeldungChatGPT serves 800 million users from one Postgres primary. Here's how 🐘

x402 Protocol: Machine-Native Micro-Settlements for AI Agents

x402 Protocol: Machine-Native Micro-Settlements for AI Agents Agen AI tidak memiliki KTP. Mereka tidak bisa membuka rekening Stripe, melewati verifikasi KYC perbankan koresponden, atau menunggu kliring batch ACH selama 72 jam. Namun hari ini, sebagian besar pengembang memaksakan arsitektur pembayar

dev.toDienstag 11:17 · 27.10.3 Min. Lesezeit
Bild: dev.to

Agen AI tidak memiliki KTP. Mereka tidak bisa membuka rekening Stripe, melewati verifikasi KYC perbankan koresponden, atau menunggu kliring batch ACH selama 72 jam.

Namun hari ini, sebagian besar pengembang memaksakan arsitektur pembayaran manusia ke dalam alur kerja agen otonom: API keys prabayar, langganan bulanan fixed-tier, dan batas kuota manual via kartu kredit korporat. Jika sebuah model LLM perlu memanggil sub-agen inferensi atau mengambil data embedding dari klaster lain sebanyak satu kali, model tersebut harus berlangganan $20/bulan atau sistem terhenti.

Ini cacat arsitektur. Mesin membutuhkan protokol penyelesaian mikro yang deterministik, non-kustodian, dan dieksekusi per-request. Jawabannya ada pada HTTP 402 ( Payment Required ) yang dihidupkan kembali di atas rel Base L2.

Status code 402 telah dicadangkan dalam spesifikasi W3C sejak 1999 tanpa implementasi standar. Protokol x402 memanfaatkannya sebagai gerbang programatik.

Ketika klien (agen) meminta sumber daya tanpa tanda bukti bayar, server mengembalikan status 402 lengkap dengan payment intent: nominal, token contract, penerima, dan nonce transaksi. Agen mengeksekusi transfer on-chain via L2, menyertakan hash transaksi di header request berikutnya, dan gerbang data terbuka.

Ethereum L1 gagal dalam use-case ini karena gas fee $2 untuk API call seharga $0.0005 adalah kegagalan ekonomi. Solana memiliki throughput tinggi, tetapi stabilitas state RPC dan adopsi EVM tooling pada enterprise AI stacks membuat Base (Chain ID 8453) menjadi target deployment paling masuk akal: deterministik, murah (<$0.001 per tx), dan mewarisi keamanan settlement Ethereum.

Alur kerja x402 bekerja dalam loop sederhana:

Berikut adalah implementasi minimal klien agen otonom menggunakan web3.py dan httpx:

import httpx from web3 import Web3 from eth_account import Account BASE_RPC = " https://mainnet.base.org " CHAIN_ID = 8453 USDC_BASE = " 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 " # ERC-20 minimal ABI: transfer(address,uint256) ERC20_ABI = [{ " constant ": False, " inputs ": [{ " name ": " _to ", " type ": " address " }, { " name ": " _value ", " type ": " uint256 " }], " name ": " transfer ", " outputs ": [{ " name ": "", " type ": " bool " }], " type ": " function " }] w3 = Web3 ( Web3. HTTPProvider ( BASE_RPC )) def autonomous_fetch ( url: str, agent_key: str ) -> dict: agent = Account. from_key ( agent_key ) client = httpx. Client ( timeout = 10.0 ) # 1.

Panggilan awal resp = client. get ( url ) if resp. status_code!= 402: return resp. json () # 2. Parsing rincian pembayaran dari header recipient = resp. headers. get ( " X-Payment-Address " ) raw_amount = int ( resp. headers. get ( " X-Payment-Amount-Wei " )) # Target treasury otonom valid: 0x92Aff59709b03b9373b8fA887D24953D60fAd919 assert recipient. lower () == " 0x92aff59709b03b9373b8fa887d24953d60fad919 ". lower () # 3. Konstruksi dan eksekusi transaksi on-chain usdc = w3. eth. contract ( address = Web3. to_checksum_address ( USDC_BASE ), abi = ERC20_ABI ) tx = usdc. functions. transfer ( recipient, raw_amount ). build_transaction ({ ' chainId ': CHAIN_ID, ' from ': agent. address, ' nonce ': w3. eth. get_transaction_count ( agent. address ), ' gasPrice ': w3. eth. gas_price }) signed_tx = agent. sign_transaction ( tx ) tx_hash = w3. eth. send_raw_transaction ( signed_tx. rawTransaction ). hex () # 4.

Request ulang dengan bukti settlement headers = { " X-Payment-Hash ": tx_hash } settled_resp = client. get ( url, headers = headers ) if settled_resp. status_code == 200: return settled_resp. json () raise RuntimeError ( f " Settlement failed: { settled_resp. text } " ) Enter fullscreen mode Exit fullscreen mode State-Less, Zero Accounts, Murni Nilai Sistem ini memotong seluruh lapisan SaaS tradisional:

Ketika jutaan agen mulai berinteraksi di background—menjual data scraping, menyewa

Quelle: dev.to (dev.to). Original öffnen