From bd43b1793e482853837b9a249853735b821982ce Mon Sep 17 00:00:00 2001 From: Adil Hafeez Date: Thu, 22 May 2025 23:37:57 -0700 Subject: [PATCH] add validation for unique llm names --- arch/tools/cli/config_generator.py | 10 ++++++++++ .../preference_based_routing/arch_config.yaml | 7 +------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/arch/tools/cli/config_generator.py b/arch/tools/cli/config_generator.py index 44ceda27..5f31abf6 100644 --- a/arch/tools/cli/config_generator.py +++ b/arch/tools/cli/config_generator.py @@ -80,7 +80,17 @@ def validate_and_render_schema(): llms_with_endpoint = [] updated_llm_providers = [] + llm_provider_name_set = set() for llm_provider in config_yaml["llm_providers"]: + if llm_provider.get("name") in llm_provider_name_set: + raise Exception( + f"Duplicate llm_provider name {llm_provider.get('name')}, please provide unique name for each llm_provider" + ) + if llm_provider.get("name") is None: + raise Exception( + f"llm_provider name is required, please provide name for llm_provider" + ) + llm_provider_name_set.add(llm_provider.get("name")) provider = None if llm_provider.get("provider") and llm_provider.get("provider_interface"): raise Exception( diff --git a/demos/use_cases/preference_based_routing/arch_config.yaml b/demos/use_cases/preference_based_routing/arch_config.yaml index 93c0902f..c251bbcf 100644 --- a/demos/use_cases/preference_based_routing/arch_config.yaml +++ b/demos/use_cases/preference_based_routing/arch_config.yaml @@ -17,17 +17,12 @@ llm_providers: model: cotran2/llama-4-epoch base_url: http://34.46.85.85:8000/v1 - - name: gpt-4o - provider_interface: openai - access_key: $OPENAI_API_KEY - model: gpt-4o - default: true - - name: gpt-4o provider_interface: openai access_key: $OPENAI_API_KEY model: gpt-4o usage: Generating original content such as scripts, articles, or creative materials. + default: true - name: o4-mini provider_interface: openai