The official client for Scalix Cloud — one token for AI inference, database, functions, storage, KV, auth, and every platform service. OpenAI-compatible chat completions.
Project description
Scalix SDK — Python
One SDK, one API key. scalix.completions gives you full OpenAI-compatible chat (tools, vision, streaming). The rest of the SDK gives you Research, RAG, DocGen, Audio, Images, Text — services that only Scalix has.
Installation
pip install scalix-sdk
Quick Start
from scalix_sdk import Scalix
scalix = Scalix("scalix_sk_...")
# Chat completions — full OpenAI-compatible (tools, vision, streaming)
response = scalix.completions.create(
model="scalix-lumio-lite",
messages=[{"role": "user", "content": "Hello!"}],
)
# Streaming
stream = scalix.completions.create(
model="scalix-lumio-lite",
messages=[{"role": "user", "content": "Tell me a story"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="")
Platform Services
These are Scalix-only services — no other SDK can reach them. All platform methods are async.
Research — web search and deep research
results = await scalix.research.search("quantum computing")
report = await scalix.research.deep("AI trends 2026")
answer = await scalix.research.research("What is GraphQL?")
Text — sentiment, summarization, translation, grammar, autocomplete
sentiment = await scalix.text.sentiment("I love this product!")
summary = await scalix.text.summarize(long_article)
translated = await scalix.text.translate("Hello", "es")
grammar = await scalix.text.grammar("Me and him goes to store")
completion = await scalix.text.autocomplete("The quick brown")
Audio — transcription and text-to-speech
with open("audio.mp3", "rb") as f:
transcript = await scalix.audio.transcribe(f)
audio = await scalix.audio.speak("Hello world", voice="af_heart")
voices = await scalix.audio.voices()
languages = await scalix.audio.languages()
Images — generation with sync and async modes
image = await scalix.images.generate("A sunset over mountains")
job = await scalix.images.generate_async("A detailed cityscape")
status = await scalix.images.get_job(job["job_id"])
models = await scalix.images.models()
Document Generation — PDF, DOCX, CSV, XLSX
doc = await scalix.docgen.create(prompt="Q1 report", format="pdf")
history = await scalix.docgen.history()
formats = await scalix.docgen.formats()
templates = await scalix.docgen.templates()
await scalix.docgen.share(doc["doc_id"], "colleague@company.com")
RAG — upload and query documents
doc = await scalix.rag.upload(pdf_file, filename="report.pdf")
answer = await scalix.rag.query("revenue growth")
docs = await scalix.rag.documents()
await scalix.rag.delete_document(doc_id)
Storage — presigned upload URLs
url = await scalix.storage.get_upload_url("application/pdf")
Account — health, info, budget, usage
health = await scalix.account.health()
info = await scalix.account.info() # email, plan
budget = await scalix.account.budget() # credits remaining
usage = await scalix.account.usage() # usage stats
Models — list available models
models = await scalix.models.list()
# Each model includes: id, context_window, max_output_tokens, plan_required
Configuration
scalix = Scalix(
"scalix_sk_...",
base_url="https://api.scalix.world", # default
max_retries=2, # auto-retry with exponential backoff
timeout=60.0, # request timeout in seconds
)
Available Models
| Model | Description | Availability |
|---|---|---|
scalix-lumio-lite |
Fastest, lightest tier — the default model | Available |
scalix-lumio-pro |
Balanced quality for general use and production apps | Coming soon |
scalix-candela |
Most capable — deep reasoning and complex agents | Coming soon |
scalix-lumio-lite is generally available and is the default — calls that omit model use it. scalix-lumio-pro and scalix-candela are announced and coming soon (not callable yet). Run await scalix.models.list() to see the models enabled for your plan.
Error Handling
from scalix_sdk import Scalix, ScalixError, AuthenticationError, RateLimitError
try:
await scalix.research.search("...")
except AuthenticationError:
print("Invalid API key")
except RateLimitError:
print("Rate limited — SDK retries automatically")
except ScalixError as e:
print(f"API error: {e}")
Requirements
- Python >= 3.9
- openai >= 1.50.0
- httpx >= 0.25.0
- pydantic >= 2.5.0
- websockets >= 12.0
License
MIT — see LICENSE for details.
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
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
File details
Details for the file scalix_sdk-1.2.0.tar.gz.
File metadata
- Download URL: scalix_sdk-1.2.0.tar.gz
- Upload date:
- Size: 157.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef6f41c338612e4de2afe5859fec9b453b8d09c9a63136be1d98385328b391a4
|
|
| MD5 |
c111250e0291ff5615b4f3fca8504f24
|
|
| BLAKE2b-256 |
b091b599364e135d2f1d438e552af5e0d94772ac6528c47ed463ffbf67422e72
|
File details
Details for the file scalix_sdk-1.2.0-py3-none-any.whl.
File metadata
- Download URL: scalix_sdk-1.2.0-py3-none-any.whl
- Upload date:
- Size: 26.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
32512a106dc73abd1d9787e91f8559860ccb3f0b7ac8c6a2c07e664750347df2
|
|
| MD5 |
d157860b27dc939ca069e8fe9df65a2e
|
|
| BLAKE2b-256 |
58b089d9abfc44ad59681c03d39ce32e3c1093a3d36e2435865241966e629dc7
|