EZSmolagents
EZSmolagents makes smolagents easy - a simplified API for running AI agents with LiteLLMModel using Docker isolation.
Quick Start
from easyrun import run_simple
result = run_simple("Write a Python script that fetches weather data", model="openai/gpt-4o-mini")
Installation
pip install -e .
Requires Docker and a LiteLLM-compatible API key (e.g., OpenRouter).
Features
- Docker isolation: Safe execution with configurable security levels
- Multiple execution modes: Docker (isolated) or local (development)
- Streaming support: Real-time output
- Any LiteLLM model: OpenAI, Anthropic, Google, etc.
- Simple API: Just import and run
Usage
Docker Execution (default)
from easyrun import run_simple
result = run_simple(
prompt="Write a Python script that fetches weather data",
model="openai/gpt-4o-mini",
api_key="your-api-key",
security_level="standard" # or "strict" / "relaxed"
)
Streaming Execution
from easyrun import run_simple_stream
for line in run_simple_stream("Write a report"):
print(line, end="")
Local Execution (no Docker)
from easyrun import run_local
result = run_local("Debug this code", model="openai/gpt-4o-mini")
Security Levels
| Level | Capabilities | Read-only FS | Network | Memory | CPU |
|---|---|---|---|---|---|
strict |
All dropped | Yes | Disabled | 512MB | 50% |
standard |
All dropped | No | Enabled | 1GB | 100% |
relaxed |
Minimal | No | Enabled | None | None |
Custom Executor Scripts
You can also pass a custom executor script:
result = run_simple(
"Analyze the data",
model="openai/gpt-4o",
executor_path="/path/to/my_task.py"
)
Your script should define a main(prompt, model) or run(prompt, model) function.
Setup
The Docker runner uses a custom image ezsmolagents-runner:latest with smolagents[litellm] pre-installed. Build it with:
docker build -t ezsmolagents-runner -f - . <<'EOF'
FROM python:3.13-slim
RUN pip install --no-cache-dir smolagents[litellm]>=1.24.0 docker>=7.1.0
EOF
Or use the pre-built image (if available).
License
GNU Affero General Public License v3.0
Metadata
Release files for ezsmolagents 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ezsmolagents-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / ezsmolagents-1.0.0-py3-none-any.whl
| Download URL | ezsmolagents-1.0.0-py3-none-any.whl |
|---|---|
| Size | 23.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
63d4b6521141dd530fbf5069301aca1826f634de1a7d663455fb3cb6c005cef5
|
|
BLAKE2b-256 checksum How to use checksums |
1aa2035f81f8fc9bc61e0fde8a3615de54c09210ca22cbdc57964c3ec3fbeab2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|