Skip to main content
Le SDK Python est adapté aux services backend, aux tâches de données, aux agents d’automatisation et aux scripts de traitement par lots. acedatacloud gère les appels API, acedatacloud-x402 s’occupe de la signature de l’en-tête de requête PAYMENT-SIGNATURE. Adresse du code source et du package :

Installation des dépendances

Si vous souhaitez utiliser upto, vous devez également appeler une fois le CLI Permit2 approve, qui dépend de web3 :
Sortie de vérification de l’installation et de l’importation d’un venv Python propre :
Explication des résultats :
  • acedatacloud et acedatacloud-x402 peuvent être installés et importés depuis PyPI.
  • pip install 'acedatacloud-x402[cli]' inclura le CLI approve-permit2, utilisé pour l’autorisation préalable de upto.

Exemple Base ou SKALE

L’exemple ci-dessous ne nécessite pas de token API. La clé privée du portefeuille est uniquement signée localement et ne sera pas envoyée à Ace Data Cloud.
Le SDK Python renvoie actuellement un dict, donc l’exemple utilise res["choices"][0]["message"]["content"]. Ne supposez pas directement qu’il a nécessairement l’attribut .choices. Résultat de l’exécution du programme d’appel payé SKALE :
Explication des résultats :
  • Le programme a complété l’analyse 402, la signature PAYMENT-SIGNATURE et la nouvelle tentative de la requête d’origine.
  • content ADC_PY_SDK_X402_OK est une chaîne fixe réellement renvoyée par le modèle, indiquant que la requête a été transmise via le lien de paiement X402 à l’API cible.
  • id chatcmpl-DlcWajqAHOop3iebmO19XRfT5bTPz est l’ID de réponse de cette complétion de chat.
Lors de l’utilisation de SKALE, il suffit de changer le nom du réseau :

Exemple Solana

Solana utilise une clé secrète encodée en base58 :
Le chemin Solana construira et soumettra une transaction SPL USDC TransferChecked, puis mettra la signature de la transaction dans l’enveloppe PAYMENT-SIGNATURE. La tentative de paiement Solana a déjà renvoyé HTTP 200 et ADC_SOLANA_E2E_OK sur l’API de production. Cette requête RPC publique a rencontré des limitations de débit, n’ayant pas confirmé de manière stable la signature sur la chaîne ; pour la réconciliation, veuillez utiliser votre propre RPC Solana pour interroger cette transaction.

Client Async

Le même gestionnaire de paiement peut être utilisé pour AsyncAceDataCloud :

Utilisation de upto pour la facturation postérieure

Le coût réel des API telles que la complétion de chat et l’appel de modèle peut ne pas être connu avant la fin de la réponse. À ce moment-là, l’API peut renvoyer à la fois exact et upto. Si vous souhaitez prioriser l’utilisation de upto :
Résultat de l’exécution du programme upto de Base :
Confirmation sur la chaîne :
Explication des résultats :
  • content ADC_BASE_UPTO_OK indique que la requête a réellement atteint l’API du modèle.
  • settled value 3 atomic USDC indique que upto est réglé en fonction de l’utilisation réelle, et non pas en déduisant le plafond complet.
  • settlement tx peut être ouvert sur BaseScan, pour la réconciliation, conservez le hash tx, le payer, l’ID de complétion et le résumé de la requête.
L’utilisation de upto nécessite une autorisation de limite via Permit2, le montant réglé ne peut pas dépasser cette limite. Avant la première utilisation, vous devez effectuer une approve(Permit2, amount) pour USDC sur la chaîne cible. Méthode CLI :
Méthode programme :
Ce helper est idempotent. Si l’allocation est déjà suffisante, il renverra {"skipped": true}, sans répéter la transaction sur la chaîne.

Signature de bas niveau

Si vous n’utilisez pas le SDK, vous pouvez également appeler directement les fonctions de signature de bas niveau :
Les fonctions de bas niveau conviennent aux tests, aux couches de proxy, à l’intégration de passerelles ou aux SDK non officiels. Le code métier normal doit privilégier l’utilisation de create_x402_payment_handler.