👋Welcome


Hypster is a lightweight configuration framework for managing and optimizing AI & ML workflows
Hypster is in preview and is not ready for production use.
We're working hard to make Hypster stable and feature-complete, but until then, expect to encounter bugs, missing features, and occasional breaking changes.
Key Features
🐍 Pythonic API: Intuitive & minimal syntax that feels natural to Python developers
🪆 Hierarchical, Conditional Configurations: Support for nested and swappable configurations
📐 Type Safety: Built-in type hints and validation
🧪 Hyperparameter Optimization Built-In: Native, first-class optuna support
Show your support by giving us a star! ⭐
How Does it work?
Install Hypster
uv add hypster
Or using pip:
pip install hypster
Define a configuration space
from hypster import HP
def llm_config(hp: HP):
model_name = hp.select(["gpt-5", "claude-sonnet-4-0", "gemini-2.5-flash"], name="model_name")
temperature = hp.float(0.0, name="temperature", min=0.0, max=1.0)
return {"model_name": model_name, "temperature": temperature}
Instantiate your configuration
from hypster import instantiate
cfg = instantiate(llm_config, values={"model_name": "gpt-5", "temperature": 0.7})
Define an execution function
def generate(prompt: str, model_name: str, temperature: float) -> str:
model = llm.get_model(model_name)
response = model.prompt(prompt, temperature=temperature)
return response
Execute!
generate(prompt="What is Hypster?", **cfg)
Discover Hypster
Why Use Hypster?
In modern AI/ML development, we often need to handle multiple configurations across different scenarios. This is essential because:
We don't know in advance which hyperparameters will best optimize our performance metrics and satisfy our constraints.
We need to support multiple "modes" for different scenarios. For example:
Local vs. Remote Environments, Development vs. Production Settings
Different App Configurations for specific use-cases and populations
Hypster takes care of these challenges by providing a simple way to define configuration spaces and instantiate them into concrete workflows. This enables you to easily manage and optimize multiple configurations in your codebase.
Additional Reading
Introducing Hypster - A comprehensive introduction to Hypster's core concepts and design philosophy.
Implementing Modular RAG With Haystack & Hypster - A practical guide to building modular, LEGO-like reconfigurable RAG systems.
5 Pillars for Hyper-Optimized AI Workflows - Key principles for designing optimized AI systems. The process behind this article gave rise to hypster's design.
Last updated
Was this helpful?