Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
Integration Tests / test-service-integration (push) Has been cancelled
P2P Network Verification / p2p-verification (push) Has been cancelled
Multi-Node Blockchain Health Monitoring / health-check (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Package Tests / Python package - aitbc-agent-sdk (push) Successful in 16s
Package Tests / Python package - aitbc-core (push) Failing after 12s
Package Tests / Python package - aitbc-crypto (push) Successful in 7s
Package Tests / Python package - aitbc-sdk (push) Successful in 11s
Package Tests / JavaScript package - aitbc-sdk-js (push) Successful in 4s
Package Tests / JavaScript package - aitbc-token (push) Successful in 12s
Python Tests / test-python (push) Successful in 7s
Version 47.0.0 does not exist in PyPI. Reverted to 46.0.0 which is the latest available version and still provides security fixes for the reported vulnerabilities.
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