Some checks failed
Documentation Validation / validate-docs (push) Successful in 7s
Documentation Validation / validate-policies-strict (push) Failing after 3s
Integration Tests / test-service-integration (push) Failing after 38s
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 28s
Package Tests / Python package - aitbc-core (push) Successful in 17s
Package Tests / Python package - aitbc-crypto (push) Successful in 14s
Package Tests / Python package - aitbc-sdk (push) Failing after 13s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 6s
Package Tests / JavaScript package - aitbc-token (push) Failing after 15s
Production Tests / Production Integration Tests (push) Failing after 10s
Python Tests / test-python (push) Failing after 2m53s
Security Scanning / security-scan (push) Failing after 53s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Failing after 12s
Smart Contract Tests / lint-solidity (push) Failing after 17s
Smart Contract Tests / test-solidity (map[name:zk-circuits path:apps/zk-circuits]) (push) Failing after 35s
- Update integration-tests workflow to use ./scripts/utils/link-systemd.sh instead of /opt/aitbc/scripts/utils/link-systemd.sh - Change aitbc-cli symlink from /opt/aitbc/cli/aitbc_cli.py to cli/aitbc_cli.py - Fix duplicate [tool.mypy] section in agent-coordinator pyproject.toml by merging plugins config - Update aitbc-core package include path from aitbc_core to aitbc - Fix aitbc-crypto imports to use absolute package paths instead of relative imports - Add pynacl>=1.5.0 dependency
AITBC SDK
Python client SDK for interacting with AITBC coordinator services, blockchain nodes, and marketplace components.
Installation
pip install aitbc-sdk
Requirements
- Python: 3.13.5 or later
- Dependencies: httpx, pydantic, aitbc-crypto
Compatibility & Stability
Python Version Support
- Minimum Version: Python 3.13.5+
- Recommended: Python 3.13.5 or 3.14
- Guarantee: All APIs maintain backward compatibility within Python 3.13.5+
- Security: Cryptographic operations maintain security properties across versions
API Stability
- Major Version: 0.x (pre-1.0, APIs may change with notice)
- Deprecation Policy: Deprecated features marked with warnings for 2+ releases
- Breaking Changes: Announced in release notes with migration guides
- Semantic Versioning: Follows semver.org specifications
Quick Start
import asyncio
from aitbc_sdk import AITBCClient
async def main():
# Initialize client
client = AITBCClient(base_url="https://aitbc.bubuit.net")
# Submit a job
job = await client.submit_job({
"service_type": "llm_inference",
"model": "llama3.2",
"prompt": "Hello, world!"
})
# Check job status
status = await client.get_job_status(job.id)
print(f"Job status: {status.status}")
# Get results when complete
if status.status == "completed":
result = await client.get_job_result(job.id)
print(f"Result: {result.output}")
if __name__ == "__main__":
asyncio.run(main())
Features
- Job Management: Submit, monitor, and retrieve computation jobs
- Receipt Verification: Cryptographically verify job completion receipts
- Marketplace Integration: Browse and participate in GPU marketplace
- Blockchain Integration: Interact with AITBC blockchain for settlement
- Zero-Knowledge Support: Private computation with ZK proof verification
API Reference
Client Initialization
from aitbc_sdk import AITBCClient
client = AITBCClient(
base_url="https://aitbc.bubuit.net",
api_key="your-api-key",
timeout=30
)
Job Operations
# Submit a job
job = await client.submit_job({
"service_type": "llm_inference",
"model": "llama3.2",
"parameters": {
"prompt": "Explain quantum computing",
"max_tokens": 500
}
})
# Get job status
status = await client.get_job_status(job.id)
# Get job result
result = await client.get_job_result(job.id)
# Cancel a job
await client.cancel_job(job.id)
Receipt Operations
# Get job receipts
receipts = await client.get_job_receipts(job.id)
# Verify receipt authenticity
is_valid = await client.verify_receipt(receipt)
Marketplace Operations
# List available services
services = await client.list_services()
# Get service details
service = await client.get_service(service_id)
# Place bid for computation
bid = await client.place_bid({
"service_id": service_id,
"max_price": 0.1,
"requirements": {
"gpu_memory": "8GB",
"compute_capability": "7.5"
}
})
Configuration
The SDK can be configured via environment variables:
export AITBC_BASE_URL="https://aitbc.bubuit.net"
export AITBC_API_KEY="your-api-key"
export AITBC_TIMEOUT=30
Development
Install in development mode:
git clone https://github.com/oib/AITBC.git
cd AITBC/packages/py/aitbc-sdk
pip install -e ".[dev]"
Run tests:
pytest
License
MIT License - see LICENSE file for details.
Support
- Documentation: https://aitbc.bubuit.net/docs/
- Issues: https://github.com/oib/AITBC/issues
- Discussions: https://github.com/oib/AITBC/discussions