🔎Exploring a Configuration Space
Print the parameter tree
from hypster import HP, explore
def openai(hp: HP):
model = hp.select(["gpt-4o-mini", "gpt-4.1"], name="model", default="gpt-4o-mini")
temperature = hp.float(0.2, name="temperature", min=0.0, max=2.0)
return {"model": model, "temperature": temperature}
def gemini(hp: HP):
model = hp.select(["flash-lite", "pro"], name="model", default="flash-lite")
thinking_level = hp.select(
[None, "minimal", "elevated"],
name="thinking_level",
default=None,
)
return {"model": model, "thinking_level": thinking_level}
def query_llm(hp: HP):
provider = hp.select(["gemini", "openai"], name="provider", default="gemini")
if provider == "gemini":
provider_config = hp.nest(gemini, name="gemini")
else:
provider_config = hp.nest(openai, name="openai")
return {"provider": provider, "config": provider_config}
def query_graph_config(hp: HP):
output_mode = hp.select(["text", "structured"], name="output_mode", default="text")
max_tokens = hp.int(100000, name="max_tokens", min=1000)
query_model = hp.nest(query_llm, name="query_llm")
system_prompt = hp.text("", name="system_prompt")
return {
"output_mode": output_mode,
"max_tokens": max_tokens,
"query_llm": query_model,
"system_prompt": system_prompt,
}
explore(query_graph_config)Explore a different conditional branch
Get structured metadata
When to use explore() vs instantiate()
explore() vs instantiate()Notes
Last updated
Was this helpful?