TauOpt, the optimizer
For anyone with an expensive function to optimize.
Closed beta today, hostedEngine public December 5
TauOpt picks the next configuration to try when each evaluation is expensive: hyperparameter tuning, simulator calibration, experimental design. The engine fits its own statistical model to the observations reported so far and picks the next point, and every suggestion carries a receipt naming the strategy that produced it.
One client runs the engine in-process on your own machine or talks to the hosted service, with the same create, suggest, observe, and best calls either way. The engine never runs your objective; you do. Today: the hosted service, by request. December 5: the same engine in-process on your machine.
How you would use it
Four calls, in a loop you own.
- create an experiment: the parameters and their ranges, the metrics, any constraints.
- suggest: ask for the next point. On the hosted service many workers can draw from one experiment without repeating a point.
- Evaluate it yourself: a training run, a simulation, an experiment.
- observe: report the value, its measurement noise, or a failure. best returns the best point so far whenever you ask.
from tauopt import Client
# in-process; the hosted service takes the same calls
client = Client(driver="local")
exp = client.create_experiment(
name="my-tuning-run",
parameters=[
{"name": "lr", "type": "double", "bounds": (1e-5, 1e-1), "log_scale": True},
{"name": "layers", "type": "integer", "bounds": (1, 8)},
],
metric={"name": "val_score", "objective": "maximize"},
)
for _ in range(30):
sug = client.suggest(exp.id)
# your training run, simulation, or experiment
value = evaluate(sug.assignments)
client.observe(exp.id, suggestion_id=sug.id, value=value)
best = client.best(exp.id).data[0]What it handles
- Expensive evaluations: loops where each evaluation costs real time. Report a crashed evaluation as a failure and a noisy one with its measurement noise.
- Mixed spaces, constraints, and multiple metrics in one experiment.
- Hosted parallel workers: each open suggestion holds a slot until its result is reported, so a batch of jobs or a whole cluster can draw from the same experiment.
- MCP access for agents: the hosted service exposes the experiment surface as tools over the Model Context Protocol, so an agent in Claude Code or any other MCP client can run the loop in conversation.
Where TauOpt meets Talaria
- On an optimal design problem TauOpt searches over the models Talaria builds and validates. The coupling that lets it ask Talaria for a new model where the search is uncertain is in development. Optimal design, with both.
How to get it
- Hosted, closed beta today: accounts, persisted experiments, parallel workers, the web app, and the MCP server, by request.
- Open source: the engine is Apache 2.0; the public repository opens December 5, with the Python client and the local driver.
- Enterprise, coming soon: the hosted service in your cloud, bundled with Talaria.
Read:tauopt.comThe scientific flywheel that can lead to abundance
Get access, or get in touch
Talaria is in private beta with a small group of researchers, and TauOpt is in closed beta. For product access, use the request forms. For enterprise, partnerships, or press, use the contact page.
TauOpt: documentationTalaria: the architectureTalaria: the blog