Metadata-Version: 2.4 Name: aitbc-sdk Version: 0.1.0 Summary: AITBC client SDK for interacting with coordinator services Author-email: AITBC Team License: MIT Project-URL: Homepage, https://github.com/oib/AITBC Project-URL: Documentation, https://aitbc.bubuit.net/docs/ Project-URL: Repository, https://github.com/oib/AITBC.git Project-URL: Bug Tracker, https://github.com/oib/AITBC/issues Keywords: ai-compute,blockchain,gpu-marketplace,zk-proofs Classifier: Development Status :: 4 - Beta Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: MIT License Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.11 Classifier: Programming Language :: Python :: 3.12 Classifier: Programming Language :: Python :: 3.13 Classifier: Topic :: Software Development :: Libraries :: Python Modules Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence Requires-Python: >=3.13 Description-Content-Type: text/markdown Requires-Dist: httpx>=0.27.0 Requires-Dist: pydantic>=2.7.0 Requires-Dist: aitbc-crypto>=0.1.0 Provides-Extra: dev Requires-Dist: pytest>=7.0.0; extra == "dev" Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev" Requires-Dist: black>=23.0.0; extra == "dev" Requires-Dist: isort>=5.12.0; extra == "dev" Requires-Dist: mypy>=1.5.0; extra == "dev" # AITBC SDK Python client SDK for interacting with AITBC coordinator services, blockchain nodes, and marketplace components. ## Installation ```bash pip install aitbc-sdk ``` ## Requirements - **Python**: 3.11 or later - **Dependencies**: httpx, pydantic, aitbc-crypto ## Compatibility & Stability ### Python Version Support - **Minimum Version**: Python 3.11+ - **Recommended**: Python 3.11 or 3.12 - **Guarantee**: All APIs maintain backward compatibility within Python 3.11+ - **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 ```python 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 ```python from aitbc_sdk import AITBCClient client = AITBCClient( base_url="https://aitbc.bubuit.net", api_key="your-api-key", timeout=30 ) ``` ### Job Operations ```python # 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 ```python # Get job receipts receipts = await client.get_job_receipts(job.id) # Verify receipt authenticity is_valid = await client.verify_receipt(receipt) ``` ### Marketplace Operations ```python # 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: ```bash export AITBC_BASE_URL="https://aitbc.bubuit.net" export AITBC_API_KEY="your-api-key" export AITBC_TIMEOUT=30 ``` ## Development Install in development mode: ```bash git clone https://github.com/oib/AITBC.git cd AITBC/packages/py/aitbc-sdk pip install -e ".[dev]" ``` Run tests: ```bash 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