Skip to main content
Python SDK är lämplig för backend-tjänster, dataprojekt, automatiserade agenter och batch-skript. acedatacloud ansvarar för API-anrop, acedatacloud-x402 ansvarar för att signera PAYMENT-SIGNATURE begäran. Källkod och paketadress:

Installera beroenden

Om du vill använda upto, behöver du också göra en engångsanrop till Permit2 approve CLI, som är beroende av web3:
Utskrift av installation och importkontroll för en ren Python venv:
Resultatförklaring:
  • acedatacloud och acedatacloud-x402 kan båda installeras och importeras från PyPI.
  • pip install 'acedatacloud-x402[cli]' kommer att inkludera approve-permit2 CLI för att hantera förhandsgodkännande för upto.

Base eller SKALE exempel

Nedan exempel kräver ingen API-token. Plånbokens privata nyckel signeras endast lokalt och skickas inte till Ace Data Cloud.
Python SDK returnerar för närvarande en dict, så exemplet använder res["choices"][0]["message"]["content"]. Anta inte direkt att det alltid har .choices attributet. Resultatet av SKALE betald anrop:
Resultatförklaring:
  • Programmet har genomfört 402-analys, PAYMENT-SIGNATURE signering och omförsök av den ursprungliga begäran.
  • content ADC_PY_SDK_X402_OK är en fast sträng som modellen returnerar, vilket indikerar att begäran har gått igenom X402 betalningskedjan till mål-API:t.
  • id chatcmpl-DlcWajqAHOop3iebmO19XRfT5bTPz är ID:t för denna chat completion respons.
Vid användning av SKALE behöver du bara ändra nätverksnamnet:

Solana exempel

Solana använder base58-kodad hemlig nyckel:
Solana-vägen kommer att konstruera och skicka en SPL USDC TransferChecked transaktion, och sedan placera transaktionssignaturen i PAYMENT-SIGNATURE kuvertet. Solana betald omförsök har returnerat HTTP 200 och ADC_SOLANA_E2E_OK på produktions-API:t. Denna offentliga RPC-förfrågan har stött på begränsningar och har inte stabilt bekräftat signaturen på kedjan; för avstämning, vänligen använd din egen Solana RPC för att kontrollera denna transaktion.

Async klient

Samma betalningshanterare kan användas för AsyncAceDataCloud:

Använda upto efterkalkyl

De verkliga kostnaderna för API:er som chat completion, modellanrop etc. kan behöva vänta tills svaret är klart för att veta. Vid denna tidpunkt kan API:t samtidigt returnera både exact och upto. Om du vill prioritera användningen av upto:
Resultatet av Base upto programmet:
Kedjeverifiering:
Resultatförklaring:
  • content ADC_BASE_UPTO_OK indikerar att begäran verkligen har nått modell-API:t.
  • settled value 3 atomic USDC indikerar att upto har avräknats baserat på faktisk användning, snarare än att dra hela gränsen.
  • settlement tx kan öppnas på BaseScan, spara tx hash, payer, completion id och begärans sammanfattning för avstämning.
upto använder Permit2 för att godkänna en gräns, det faktiska beloppet som avräknas får inte överstiga denna gräns. Vid första användning måste du göra en approve(Permit2, amount) på USDC på målkedjan. CLI-metod:
Programmet metod:
Denna hjälpare är idempotent. Om tillåtelsen redan är tillräcklig, kommer den att returnera {"skipped": true}, och ingen kedjetransaktion kommer att skickas igen.

Låg nivå signering

Om du inte använder SDK kan du direkt anropa de lågnivåsigneringsfunktionerna:
Lågnivåfunktioner är lämpliga för testning, proxylager, gatewayintegration eller icke-officiella SDK. Vanlig affärskod bör prioritera att använda create_x402_payment_handler.