Python SDK for Compute3 - GPU orchestration and LLM API
Project description
C3 SDK
Python SDK for Compute3 - GPU orchestration API.
Installation
pip install c3-sdk
Setup
Set your API key:
export C3_API_KEY=your_api_key
Or create ~/.c3/config:
C3_API_KEY=your_api_key
Or pass directly:
c3 = C3(api_key="your_api_key")
Usage
from c3 import C3
c3 = C3()
# Check balance
balance = c3.billing.balance()
print(f"Balance: ${balance.total:.2f}")
print(f"Rewards: ${balance.rewards:.2f}")
# List transactions
for tx in c3.billing.transactions(limit=10):
print(f"{tx.transaction_type}: ${tx.amount_usd:.4f}")
# Create a job
job = c3.jobs.create(
image="nvidia/cuda:12.0",
command="python train.py",
gpu_type="l40s",
gpu_count=1,
)
print(f"Job ID: {job.job_id}")
print(f"State: {job.state}")
# List jobs
for job in c3.jobs.list():
print(f"{job.job_id}: {job.state}")
# Get job details
job = c3.jobs.get("job_id")
# Get job logs
logs = c3.jobs.logs("job_id")
# Get GPU metrics
metrics = c3.jobs.metrics("job_id")
for gpu in metrics.gpus:
print(f"GPU {gpu.index}: {gpu.utilization}% util, {gpu.temperature}°C")
# Cancel a job
c3.jobs.cancel("job_id")
# Extend runtime
c3.jobs.extend("job_id", runtime=7200)
# Get user info
user = c3.user.get()
print(f"User: {user.email}")
LLM API
For LLM access, use the OpenAI SDK with C3's base URL:
from openai import OpenAI
client = OpenAI(
api_key="your_c3_api_key",
base_url="https://api.compute3.ai/v1"
)
response = client.chat.completions.create(
model="deepseek-v3.1",
messages=[{"role": "user", "content": "Hello!"}]
)
Error Handling
from c3 import C3, APIError
c3 = C3()
try:
job = c3.jobs.get("invalid_id")
except APIError as e:
print(f"Error {e.status_code}: {e.detail}")
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
c3_sdk-0.2.1.tar.gz
(27.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
c3_sdk-0.2.1-py3-none-any.whl
(24.8 kB
view details)
File details
Details for the file c3_sdk-0.2.1.tar.gz.
File metadata
- Download URL: c3_sdk-0.2.1.tar.gz
- Upload date:
- Size: 27.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9b0ca4d389cd1ffb0459547e414eb8326abf78d72b1423acb79540f9353c52bc
|
|
| MD5 |
1c2a878615817ddae8a82fa0dea87059
|
|
| BLAKE2b-256 |
41e3f9d13802ecaf14240c62281364ba4bd2b5a65a754b3d5a05109559406bec
|
File details
Details for the file c3_sdk-0.2.1-py3-none-any.whl.
File metadata
- Download URL: c3_sdk-0.2.1-py3-none-any.whl
- Upload date:
- Size: 24.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
648581e0c43823c2c79766daf093009da76f37a5d528de79b4817a3cbcf2eff6
|
|
| MD5 |
6fe1a7edde38f99b0599a05f9bca356d
|
|
| BLAKE2b-256 |
3ade75758533e5ac0ae2963b654179c3aa8edadddc44660d5567cfb51e1e5070
|