Skip to main content
El SDK de Python es adecuado para servicios backend, tareas de datos, agentes de automatización y scripts por lotes. acedatacloud se encarga de las llamadas a la API, acedatacloud-x402 se encarga de firmar el encabezado de solicitud PAYMENT-SIGNATURE. Direcciones del código fuente y del paquete:

Instalación de Dependencias

Si se desea utilizar upto, también es necesario llamar una vez a Permit2 approve CLI, que depende de web3:
Salida de instalación y verificación de importación en un entorno Python limpio:
Explicación de resultados:
  • acedatacloud y acedatacloud-x402 se pueden instalar e importar desde PyPI.
  • pip install 'acedatacloud-x402[cli]' incluirá el CLI approve-permit2, que se utiliza para la autorización previa de upto.

Ejemplo de Base o SKALE

El siguiente ejemplo no requiere un token de API. La clave privada de la billetera solo se firma localmente y no se enviará a Ace Data Cloud.
El SDK de Python actualmente devuelve un dict, por lo que el ejemplo utiliza res["choices"][0]["message"]["content"]. No asuma directamente que siempre tendrá el atributo .choices. Resultados de la ejecución del programa de llamada pagada de SKALE:
Explicación de resultados:
  • El programa completó el análisis 402, la firma de PAYMENT-SIGNATURE y el reintento de la solicitud original.
  • content ADC_PY_SDK_X402_OK es una cadena fija devuelta por el modelo, lo que indica que la solicitud ha ingresado al API objetivo a través del enlace de pago X402.
  • id chatcmpl-DlcWajqAHOop3iebmO19XRfT5bTPz es el ID de respuesta de esta finalización de chat.
Al usar SKALE, solo es necesario cambiar el nombre de la red:

Ejemplo de Solana

Solana utiliza una clave secreta codificada en base58:
La ruta de Solana construirá y enviará una transacción TransferChecked de SPL USDC, y luego colocará la firma de la transacción en el sobre PAYMENT-SIGNATURE. El reintento pagado de Solana ha devuelto HTTP 200 y ADC_SOLANA_E2E_OK en la API de producción. Esta consulta RPC pública encontró limitaciones de tasa y no confirmó de manera estable la firma en la cadena; si necesita conciliación, consulte su propia RPC de Solana para esta transacción.

Cliente Asíncrono

El mismo controlador de pago se puede utilizar para AsyncAceDataCloud:

Uso de upto para Medición Posterior

El costo real de las API como la finalización de chat y las llamadas al modelo puede no conocerse hasta que finalice la respuesta. En este momento, la API puede devolver simultáneamente exact y upto. Si desea priorizar el uso de upto:
Resultados de la ejecución del programa de upto en Base:
Confirmación en la cadena:
Explicación de resultados:
  • content ADC_BASE_UPTO_OK indica que la solicitud ha ingresado realmente al API del modelo.
  • settled value 3 atomic USDC indica que upto se liquidó según el uso real, en lugar de deducir el límite completo.
  • settlement tx se puede abrir en BaseScan; guarde el hash de la transacción, el pagador, el ID de finalización y el resumen de la solicitud para la conciliación.
upto utiliza Permit2 para autorizar un límite, y el monto liquidado no puede exceder ese límite. Antes de usarlo por primera vez, es necesario hacer una approve(Permit2, amount) de USDC en la cadena objetivo. Forma CLI:
Forma de programa:
Este helper es idempotente. Si la asignación ya es suficiente, devolverá {"skipped": true}, y no repetirá la transacción en la cadena.

Firma de Bajo Nivel

Si no utilizas el SDK, también puedes llamar directamente a las funciones de firma de bajo nivel:
Las funciones de bajo nivel son adecuadas para pruebas, capas de proxy, integración de gateways o SDK no oficiales. El código de negocio normal debe utilizar preferentemente create_x402_payment_handler.