ScaleXI LLM
A production-ready, multi-provider LLM proxy that gives you one unified API for many different model providers.
- 9 Providers: OpenAI, Anthropic (Claude), Google (Gemini), Groq, DeepSeek, Alibaba/Qwen, Grok, local Ollama, and RunPod (native API)
- 60+ Model Configurations: Pricing, limits, and capabilities encoded in a single model registry
- Structured Outputs: Pydantic schemas with intelligent fallbacks and validation
- Vision & Files: Image analysis, PDF/DOCX/TXT/JSON handling, and automatic vision fallbacks
- Web Search: Exa + SERP (Google) integration for retrieval-augmented generation (optionally restricted to a single domain)
- Fallbacks & Reliability: Provider-best and global-standard fallbacks, plus detailed error logging
- LangSmith Tracing: Optional built-in observability — set
enable_tracing=Trueand every call is traced
This package is ideal when you want a single, consistent interface to multiple LLM vendors, with:
- Centralized configuration for models and costs
- Unified ask function (
ask_llm) that works across providers - Built-in support for web search, files, and images
- Optional local-only workflows via Ollama
- Optional LangSmith tracing with token/cost tracking
Installation
pip install scalexi_llm
Quick Example
from scalexi_llm import LLMProxy
llm = LLMProxy()
response, execution_time, token_usage, cost = llm.ask_llm(
model_name="chatgpt-4o-latest",
system_prompt="You are a helpful assistant.",
user_prompt="Explain quantum computing in simple terms."
)
print(response)
Model Listing
Inspect all registered models and their metadata (provider, pricing, limits, capabilities):
import json
from scalexi_llm import LLMProxy
llm = LLMProxy(verbose=0)
models = llm.list_available_models()
print(json.dumps(models, indent=2))
Domain-Restricted Web Search
from scalexi_llm import LLMProxy
llm = LLMProxy()
response, _, _, _ = llm.ask_llm(
model_name="gpt-5-mini",
user_prompt="Find the admissions requirements",
websearch=True,
search_tool="both",
search_domain="binbaz.org.sa"
)
LangSmith Tracing (Optional)
from scalexi_llm import LLMProxy
# pip install langsmith (+ set LANGSMITH_API_KEY in .env)
llm = LLMProxy(enable_tracing=True)
response, exec_time, token_usage, cost = llm.ask_llm(
model_name="chatgpt-4o-latest",
user_prompt="What is quantum computing?"
)
# Token usage, cost, provider, and model are automatically logged to LangSmith
Features at a Glance
- One
LLMProxyclass for all providers - Unified
ask_llmAPI for text, files, images, and web search (with file/image fallbacks for providers like RunPod/Ollama) - Pydantic-based structured outputs with retry and model fallbacks
- Vision fallback when a chosen model doesn't support images
- Token and cost accounting for every call
- Optional LangSmith tracing with zero-code setup (
enable_tracing=True) - Comprehensive test suite (
provider_test.py,ollama_test.py,combined_test.py)
Metadata
Release files for scalexi-llm 0.1.49
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| scalexi_llm-0.1.49.tar.gz | 35.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| scalexi_llm-0.1.49-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 64.2 kB
Release files / scalexi_llm-0.1.49.tar.gz
| Download URL | scalexi_llm-0.1.49.tar.gz |
|---|---|
| Size | 35.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6596b6aeecf1f35679296deb4bdd0eca0ef855ab0c369f3eb78c6bc64f4e23c6
|
|
BLAKE2b-256 checksum How to use checksums |
cb4051ffc67543324042d10e62555cf91b8f72adaf3a450c4883a119e079b12f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|
Release files / scalexi_llm-0.1.49-py3-none-any.whl
| Download URL | scalexi_llm-0.1.49-py3-none-any.whl |
|---|---|
| Size | 28.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
57f694eb264621bb2d0698e3a583944aa9db19da58b174b4cff74d0e4f29774c
|
|
BLAKE2b-256 checksum How to use checksums |
8412b41dfab9df104403eb28a8788c7b36252531c057ae94a4607fe12fb10cf0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|