feat(config): Implement asymmetric model configuration for Orchestrator and Workers

This commit is contained in:
Yunxiao Xu
2026-02-23 14:37:15 -08:00
parent 9b97140fff
commit 11c14fb8a8
3 changed files with 4 additions and 2 deletions

View File

@@ -52,6 +52,8 @@ class Settings(BaseSettings):
coder_llm: LLMConfig = Field(default_factory=lambda: LLMConfig(model="gpt-5-mini", temperature=0.0))
summarizer_llm: LLMConfig = Field(default_factory=lambda: LLMConfig(model="gpt-5-mini", temperature=0.0))
researcher_llm: LLMConfig = Field(default_factory=lambda: LLMConfig(model="gpt-5-mini", temperature=0.0))
reflector_llm: LLMConfig = Field(default_factory=lambda: LLMConfig(model="gpt-5-mini", temperature=0.0))
synthesizer_llm: LLMConfig = Field(default_factory=lambda: LLMConfig(model="gpt-5-mini", temperature=0.0))
# Allow nested env vars like QUERY_ANALYZER_LLM__MODEL
model_config = SettingsConfigDict(env_nested_delimiter='__', env_prefix='')

View File

@@ -22,7 +22,7 @@ def reflector_node(state: AgentState) -> dict:
logger.info(f"Evaluating worker output for task: {task_desc[:50]}...")
llm = get_llm_model(
settings.planner_llm, # Using planner model for evaluation
settings.reflector_llm,
callbacks=[LangChainLoggingHandler(logger=logger)]
)
structured_llm = llm.with_structured_output(ReflectorResponse)

View File

@@ -19,7 +19,7 @@ def synthesizer_node(state: AgentState) -> dict:
logger.info("Synthesizing final answer from worker results...")
llm = get_llm_model(
settings.summarizer_llm,
settings.synthesizer_llm,
callbacks=[LangChainLoggingHandler(logger=logger)]
)