This release is a pre-release and may not be stable for production use.
AI Simulate
[!WARNING] Experimental. AI Simulate and Sweeper are intended for evaluation and feedback, not production capacity planning. Their APIs, configuration schemas, search behavior, and output may change without a standard deprecation period. They provide no SLA, accuracy, or configuration-optimality guarantees.
AI Simulate is a standalone Python distribution in the Dynamo repository. Its engine-only replay
CLI and aisimulate.sweeper package evaluate serializable replay specifications without depending
on ai-dynamo.
Sweeper accepts a replay RunnerFactory through its Python API. Optional feature adapters own
their search spaces and runtime hooks. An engine-only sweep can use a Dynamo-free replay runner;
a sweep configured with Dynamo Planner or Router adapters uses Dynamo's runner composition.
For an engine-only single replay run, use python -m aisimulate.replay. For a replay with Dynamo
Router, Planner, or online adapters, use python -m dynamo.replay. Both commands share the
engine, topology, traffic, replay-mode, SLA, and output arguments; Dynamo adds its adapter options.
They share option names and the base ReplaySpec schema; the selected runtime validates each
--*-engine-args JSON payload, which can therefore contain runtime-specific fields.
For configuration search, call Sweeper(runner_factory=...).run(config) or start from an example
under aisimulate/examples/sweeper.
For example, run one engine-only synthetic replay with fixed timing:
python -m aisimulate.replay \
--extra-engine-args '{"engine_type":"vllm","num_gpu_blocks":1024,"block_size":16,"timing_model":{"type":"fixed","prefill_ms":10,"decode_ms":2}}' \
--input-tokens 1024 \
--output-tokens 128 \
--request-count 16 \
--replay-concurrency 4
Install AI Simulate by itself for engine-only development:
uv venv .venv
source .venv/bin/activate
uv pip install -e ./aisimulate
The dynamo-planner image builds and installs AI Simulate from the same source revision as Dynamo.
The AI Simulate wheel is an image-local artifact, not a standalone release artifact. For Dynamo
feature development from a source checkout, also install ai-dynamo and the Planner requirements:
uv pip install --no-deps -e .
uv pip install -r container/deps/requirements.planner.txt
The ai-dynamo wheel registers the dynamo.planner and dynamo.router Sweeper provider entry
points. Its Dynamo runner composes the materialized runtime hooks with the shared AI Simulate
Replayer.
Run a sweep from Python with an explicit runner:
from aisimulate.sweeper import SmartSearchConfig, Sweeper
from dynamo.replay.simulation import DynamoReplayRunnerFactory
config = SmartSearchConfig.from_yaml("smart_sweep.yaml")
candidates = Sweeper(
runner_factory=DynamoReplayRunnerFactory(),
).run(config)
The standalone module validates the backend-neutral core schema but intentionally has no implicit
replay runtime. Adapter-owned search spaces are validated when the selected adapters are resolved
by Sweeper.run.
KVBM sweep fields have been removed and have no adapter migration.
Read the canonical Sweeper documentation for its configuration,
search-space, and replay behavior. Backend-neutral and Dynamo integration examples live under
aisimulate/examples/sweeper.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
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 aisimulate-0.1.0.dev1-cp310-abi3-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: aisimulate-0.1.0.dev1-cp310-abi3-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.10+, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eaa2211b510118c0c1d911255145883622bdaa9a4b771ce95a6b69b2b553990e
|
|
| MD5 |
30c4fdc31bf5ba49d4abde791a90bc1c
|
|
| BLAKE2b-256 |
31d8f48f94dba1d8cc43e4e980e58c4b36ff0c3a09ed2261d51733a80a7ebf45
|
File details
Details for the file aisimulate-0.1.0.dev1-cp310-abi3-manylinux_2_28_aarch64.whl.
File metadata
- Download URL: aisimulate-0.1.0.dev1-cp310-abi3-manylinux_2_28_aarch64.whl
- Upload date:
- Size: 1.2 MB
- Tags: CPython 3.10+, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5763a26fae3c294d5e26bf760c8b2c3fef9712b42e6b80ee7c4cfbed4b7f677a
|
|
| MD5 |
aa341b97fc7a7cb295c0cc45ad266263
|
|
| BLAKE2b-256 |
4e19a80d954239613e7b6520a42108740e07b7ae4cba912fd4e0b8dba653b12b
|