diff --git a/arch/arch_config_schema.yaml b/arch/arch_config_schema.yaml index b76efc15..1432c0b9 100644 --- a/arch/arch_config_schema.yaml +++ b/arch/arch_config_schema.yaml @@ -5,8 +5,9 @@ properties: type: string listeners: type: object + additionalProperties: false properties: - prompt_gateway: + ingress_traffic: type: object properties: address: @@ -20,7 +21,7 @@ properties: timeout: type: string additionalProperties: false - llm_gateway: + egress_traffic: type: object properties: address: @@ -31,7 +32,6 @@ properties: type: string enum: - openai - - huggingface timeout: type: string additionalProperties: false @@ -247,5 +247,4 @@ properties: additionalProperties: false required: - version - - listeners - llm_providers diff --git a/arch/tools/cli/config_generator.py b/arch/tools/cli/config_generator.py index 33ea3c3b..7392849e 100644 --- a/arch/tools/cli/config_generator.py +++ b/arch/tools/cli/config_generator.py @@ -104,7 +104,9 @@ def validate_and_render_schema(): arch_config_string = yaml.dump(config_yaml) arch_llm_config_string = yaml.dump(config_yaml) - prompt_gateway_listener = config_yaml.get("listeners", {}).get("prompt_gateway", {}) + prompt_gateway_listener = config_yaml.get("listeners", {}).get( + "ingress_traffic", {} + ) if prompt_gateway_listener.get("port") == None: prompt_gateway_listener["port"] = 10000 # default port for prompt gateway if prompt_gateway_listener.get("address") == None: @@ -112,7 +114,7 @@ def validate_and_render_schema(): if prompt_gateway_listener.get("timeout") == None: prompt_gateway_listener["timeout"] = "10s" - llm_gateway_listener = config_yaml.get("listeners", {}).get("llm_gateway", {}) + llm_gateway_listener = config_yaml.get("listeners", {}).get("egress_traffic", {}) if llm_gateway_listener.get("port") == None: llm_gateway_listener["port"] = 12000 # default port for llm gateway if llm_gateway_listener.get("address") == None: diff --git a/arch/tools/cli/core.py b/arch/tools/cli/core.py index 4ffbd873..2d8ce265 100644 --- a/arch/tools/cli/core.py +++ b/arch/tools/cli/core.py @@ -143,12 +143,12 @@ def start_arch(arch_config_file, env, log_timeout=120, foreground=False): prompt_gateway_port = ( arch_config_dict.get("listeners", {}) - .get("prompt_gateway", {}) + .get("ingress_traffic", {}) .get("port", 10000) ) llm_gateway_port = ( arch_config_dict.get("listeners", {}) - .get("llm_gateway", {}) + .get("egress_traffic", {}) .get("port", 12000) ) diff --git a/demos/samples_java/weather_forcecast_service/arch_config.yaml b/demos/samples_java/weather_forcecast_service/arch_config.yaml index 8727a606..0e3007e2 100644 --- a/demos/samples_java/weather_forcecast_service/arch_config.yaml +++ b/demos/samples_java/weather_forcecast_service/arch_config.yaml @@ -1,6 +1,6 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/samples_python/currency_exchange/arch_config.yaml b/demos/samples_python/currency_exchange/arch_config.yaml index 6a682926..1475abca 100644 --- a/demos/samples_python/currency_exchange/arch_config.yaml +++ b/demos/samples_python/currency_exchange/arch_config.yaml @@ -1,7 +1,7 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/samples_python/human_resources_agent/arch_config.yaml b/demos/samples_python/human_resources_agent/arch_config.yaml index 29978db5..5b1a9aa2 100644 --- a/demos/samples_python/human_resources_agent/arch_config.yaml +++ b/demos/samples_python/human_resources_agent/arch_config.yaml @@ -1,6 +1,6 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/samples_python/multi_turn_rag_agent/arch_config.yaml b/demos/samples_python/multi_turn_rag_agent/arch_config.yaml index 4c940a6c..8e8feb4f 100644 --- a/demos/samples_python/multi_turn_rag_agent/arch_config.yaml +++ b/demos/samples_python/multi_turn_rag_agent/arch_config.yaml @@ -1,7 +1,7 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/samples_python/network_switch_operator_agent/arch_config.yaml b/demos/samples_python/network_switch_operator_agent/arch_config.yaml index 9c29fbae..40d529a2 100644 --- a/demos/samples_python/network_switch_operator_agent/arch_config.yaml +++ b/demos/samples_python/network_switch_operator_agent/arch_config.yaml @@ -1,6 +1,6 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/samples_python/stock_quote/arch_config.yaml b/demos/samples_python/stock_quote/arch_config.yaml index 7c38527b..96901620 100644 --- a/demos/samples_python/stock_quote/arch_config.yaml +++ b/demos/samples_python/stock_quote/arch_config.yaml @@ -1,11 +1,12 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai timeout: 30s + llm_providers: - name: gpt-4o access_key: $OPENAI_API_KEY diff --git a/demos/samples_python/weather_forecast/arch_config.yaml b/demos/samples_python/weather_forecast/arch_config.yaml index a99f8002..8b0f4ca0 100644 --- a/demos/samples_python/weather_forecast/arch_config.yaml +++ b/demos/samples_python/weather_forecast/arch_config.yaml @@ -1,7 +1,7 @@ version: "0.1-beta" listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/use_cases/llm_routing/arch_config.yaml b/demos/use_cases/llm_routing/arch_config.yaml index 250ab279..e3238484 100644 --- a/demos/use_cases/llm_routing/arch_config.yaml +++ b/demos/use_cases/llm_routing/arch_config.yaml @@ -1,9 +1,9 @@ version: "0.1-beta" listeners: - prompt_gateway: + egress_traffic: address: 0.0.0.0 - port: 10000 + port: 12000 message_format: openai timeout: 30s diff --git a/demos/use_cases/ollama/arch_config.yaml b/demos/use_cases/ollama/arch_config.yaml index 1111b650..394d3d6c 100644 --- a/demos/use_cases/ollama/arch_config.yaml +++ b/demos/use_cases/ollama/arch_config.yaml @@ -1,7 +1,7 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/demos/use_cases/spotify_bearer_auth/arch_config.yaml b/demos/use_cases/spotify_bearer_auth/arch_config.yaml index 8dd13eb5..1d82a426 100644 --- a/demos/use_cases/spotify_bearer_auth/arch_config.yaml +++ b/demos/use_cases/spotify_bearer_auth/arch_config.yaml @@ -1,6 +1,6 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/docs/source/concepts/includes/arch_config.yaml b/docs/source/concepts/includes/arch_config.yaml index dcf64c94..a7d0a289 100644 --- a/docs/source/concepts/includes/arch_config.yaml +++ b/docs/source/concepts/includes/arch_config.yaml @@ -1,7 +1,7 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/docs/source/get_started/quickstart.rst b/docs/source/get_started/quickstart.rst index 22bd532a..d73ef7ca 100644 --- a/docs/source/get_started/quickstart.rst +++ b/docs/source/get_started/quickstart.rst @@ -43,7 +43,7 @@ Create ``arch_config.yaml`` file with the following content: version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai @@ -146,9 +146,9 @@ Create ``arch_config.yaml`` file with the following content: version: v0.1 listeners: - prompt_gateway: + egress_traffic: address: 0.0.0.0 - port: 10000 + port: 12000 message_format: openai timeout: 30s diff --git a/docs/source/guides/includes/arch_config.yaml b/docs/source/guides/includes/arch_config.yaml index 9899fb26..e86c6072 100644 --- a/docs/source/guides/includes/arch_config.yaml +++ b/docs/source/guides/includes/arch_config.yaml @@ -1,7 +1,7 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai diff --git a/docs/source/resources/includes/arch_config_full_reference.yaml b/docs/source/resources/includes/arch_config_full_reference.yaml index dca180e3..90bbef56 100644 --- a/docs/source/resources/includes/arch_config_full_reference.yaml +++ b/docs/source/resources/includes/arch_config_full_reference.yaml @@ -1,14 +1,16 @@ version: v0.1 listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai timeout: 5s - llm_gateway: + egress_traffic: address: 0.0.0.0 port: 12000 + message_format: openai + timeout: 5s # Arch creates a round-robin load balancing between different endpoints, managed via the cluster subsystem. endpoints: diff --git a/tests/archgw/arch_config.yaml b/tests/archgw/arch_config.yaml index 52fe0c30..d1990330 100644 --- a/tests/archgw/arch_config.yaml +++ b/tests/archgw/arch_config.yaml @@ -1,7 +1,7 @@ version: "0.1-beta" listeners: - prompt_gateway: + ingress_traffic: address: 0.0.0.0 port: 10000 message_format: openai