Skip to main content
Das Python SDK eignet sich für Backend-Dienste, Datenaufgaben, automatisierte Agenten und Batch-Skripte. acedatacloud ist für API-Aufrufe verantwortlich, acedatacloud-x402 ist für das Auschecken des PAYMENT-SIGNATURE Anfrage-Headers verantwortlich. Quellcode und Paketadressen:

Abhängigkeiten installieren

Wenn Sie upto verwenden möchten, müssen Sie auch einmalig das Permit2 approve CLI aufrufen, das von web3 abhängt:
Ausgabe der Installation und Importüberprüfung in einer sauberen Python venv:
Erklärung der Ergebnisse:
  • acedatacloud und acedatacloud-x402 können beide von PyPI installiert und importiert werden.
  • pip install 'acedatacloud-x402[cli]' bringt das approve-permit2 CLI mit, das für die Vorabgenehmigung von upto verwendet wird.

Base oder SKALE Beispiel

Das folgende Beispiel benötigt kein API-Token. Der private Schlüssel der Brieftasche wird nur lokal signiert und nicht an Ace Data Cloud gesendet.
Das Python SDK gibt derzeit ein dict zurück, daher verwendet das Beispiel res["choices"][0]["message"]["content"]. Gehen Sie nicht davon aus, dass es immer das Attribut .choices hat. Ergebnis der SKALE bezahlten Anrufausführung:
Erklärung der Ergebnisse:
  • Das Programm hat die 402-Analyse, die PAYMENT-SIGNATURE-Signatur und den ursprünglichen Anfrage-Wiederholungsversuch abgeschlossen.
  • content ADC_PY_SDK_X402_OK ist der feste String, den das Modell tatsächlich zurückgibt, was bedeutet, dass die Anfrage über die X402-Zahlungskette in die Ziel-API eingegangen ist.
  • id chatcmpl-DlcWajqAHOop3iebmO19XRfT5bTPz ist die ID der Chat-Vervollständigungsantwort.
Wenn Sie SKALE verwenden, müssen Sie nur den Netzwerknamen ändern:

Solana Beispiel

Solana verwendet einen base58-kodierten geheimen Schlüssel:
Der Solana-Pfad wird eine SPL USDC TransferChecked-Transaktion konstruieren und einreichen und dann die Transaktionssignatur in das PAYMENT-SIGNATURE-Envelope einfügen. Die Solana bezahlte Wiederholung hat auf der Produktions-API HTTP 200 und ADC_SOLANA_E2E_OK zurückgegeben. Bei dieser öffentlichen RPC-Abfrage gab es eine Drosselung, die eine stabile Bestätigung der On-Chain-Signatur verhinderte; wenn Sie eine Abrechnung benötigen, verwenden Sie bitte Ihre eigene Solana RPC, um diese Transaktion abzufragen.

Async-Client

Der gleiche Zahlungs-Handler kann für AsyncAceDataCloud verwendet werden:

Verwendung von upto für nachträgliche Abrechnung

Die tatsächlichen Kosten von API-Anfragen wie Chat-Vervollständigungen und Modellaufrufen sind möglicherweise erst nach Abschluss der Antwort bekannt. Zu diesem Zeitpunkt kann die API sowohl exact als auch upto zurückgeben. Wenn Sie upto priorisieren möchten:
Ergebnis der Base upto-Programm-Ausführung:
On-Chain-Bestätigung:
Erklärung der Ergebnisse:
  • content ADC_BASE_UPTO_OK zeigt an, dass die Anfrage tatsächlich in die Modell-API eingegangen ist.
  • settled value 3 atomic USDC zeigt an, dass upto nach tatsächlichem Verbrauch abgerechnet wurde und nicht den gesamten Höchstbetrag abgezogen hat.
  • settlement tx kann auf BaseScan geöffnet werden; speichern Sie beim Abgleichen tx hash, payer, completion id und Anfragezusammenfassung.
upto verwendet Permit2, um ein Limit zu genehmigen, der tatsächlich abgerechnete Betrag darf dieses Limit nicht überschreiten. Vor der ersten Verwendung müssen Sie eine approve(Permit2, amount) auf USDC auf der Zielkette durchführen. CLI-Methode:
Programmmethode:
Dieser Helper ist idempotent. Wenn die Erlaubnis bereits ausreichend ist, wird {"skipped": true} zurückgegeben, und es wird keine wiederholte On-Chain-Transaktion gesendet.

Niedrigere Signatur

Wenn Sie das SDK nicht verwenden, können Sie auch direkt die niedrigstufigen Signaturfunktionen aufrufen:
Niedrigstufige Funktionen eignen sich für Tests, Proxy-Schichten, Gateway-Integrationen oder inoffizielle SDKs. Normale Geschäftscodes sollten bevorzugt create_x402_payment_handler verwenden.