acedatacloud는 API 호출을 담당하고, acedatacloud-x402는 PAYMENT-SIGNATURE 요청 헤더를 체크아웃하는 역할을 합니다.
소스 코드 및 패키지 주소:
- SDK 저장소: https://github.com/AceDataCloud/SDK
- X402 클라이언트 저장소: https://github.com/AceDataCloud/X402Client
- PyPI SDK: https://pypi.org/project/acedatacloud/
- PyPI X402 클라이언트: https://pypi.org/project/acedatacloud-x402/
의존성 설치
upto를 사용하려면 Permit2 approve CLI를 한 번 호출해야 하며, 이 CLI는 web3에 의존합니다:
acedatacloud와acedatacloud-x402는 모두 PyPI에서 설치 및 가져올 수 있습니다.pip install 'acedatacloud-x402[cli]'는upto전제 승인을 위한approve-permit2CLI를 포함합니다.
Base 또는 SKALE 예제
아래 예제는 API 토큰이 필요하지 않습니다. 지갑 개인 키는 로컬에서만 서명되며 Ace Data Cloud에 전송되지 않습니다.dict를 반환하므로 예제에서는 res["choices"][0]["message"]["content"]를 사용합니다. 반드시 .choices 속성이 있다고 가정하지 마십시오.
SKALE 유료 호출의 프로그램 실행 결과:
- 프로그램은 402 파싱,
PAYMENT-SIGNATURE서명 및 원 요청 재시도를 완료했습니다. content ADC_PY_SDK_X402_OK는 모델이 실제로 반환한 고정 문자열로, 요청이 X402 유료 링크를 통해 대상 API에 도달했음을 나타냅니다.id chatcmpl-DlcWajqAHOop3iebmO19XRfT5bTPz는 이번 채팅 완성 응답 ID입니다.
Solana 예제
Solana는 base58 인코딩된 비밀 키를 사용합니다:TransferChecked 거래를 구성하고 제출한 다음 거래 서명을 PAYMENT-SIGNATURE envelope에 넣습니다.
Solana 유료 재시도는 프로덕션 API에서 HTTP 200과 ADC_SOLANA_E2E_OK를 반환했습니다. 이번 공개 RPC 쿼리는 속도 제한에 걸려 체인 상의 서명을 안정적으로 확인하지 못했습니다; 정산이 필요할 경우 자신의 Solana RPC를 사용하여 해당 거래를 조회하십시오.
Async 클라이언트
같은 결제 핸들러는AsyncAceDataCloud에도 사용할 수 있습니다:
upto 후속 계량 사용
채팅 완성, 모델 호출 등 API의 실제 비용은 응답이 끝난 후에야 알 수 있습니다. 이때 API는 exact와 upto를 동시에 반환할 수 있습니다. upto를 우선 사용하려면:
upto의 프로그램 실행 결과:
content ADC_BASE_UPTO_OK는 요청이 실제로 모델 API에 도달했음을 나타냅니다.settled value 3 atomic USDC는upto가 실제 사용량에 따라 정산되었음을 나타내며, 전체 한도를 차감하지 않았습니다.settlement tx는 BaseScan에서 열 수 있으며, 정산 시 tx 해시, 지불자, 완성 ID 및 요청 요약을 저장하십시오.
upto는 Permit2를 사용하여 한도를 승인하며, 실제 정산 금액은 해당 한도를 초과할 수 없습니다. 처음 사용하기 전에 목표 체인에서 USDC에 대해 한 번 approve(Permit2, amount)를 수행해야 합니다.
CLI 방식:
{"skipped": true}를 반환하며, 체인 상 거래를 반복해서 발생시키지 않습니다.
저수준 서명
SDK를 사용하지 않는 경우, 저수준 서명 함수를 직접 호출할 수 있습니다:create_x402_payment_handler를 우선 사용해야 합니다.
