From c186418d416bb8dd43ec6de21a4eebf9c7b24f5c Mon Sep 17 00:00:00 2001 From: Shuchang Zheng Date: Thu, 16 Oct 2025 02:50:16 -0700 Subject: [PATCH] introduce llm key for script gen (#3736) --- skyvern/config.py | 1 + .../core/script_generations/generate_workflow_parameters.py | 2 +- skyvern/forge/app.py | 3 +++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/skyvern/config.py b/skyvern/config.py index 4f4ae8d3..b13720fe 100644 --- a/skyvern/config.py +++ b/skyvern/config.py @@ -139,6 +139,7 @@ class Settings(BaseSettings): EXTRACTION_LLM_KEY: str | None = None CHECK_USER_GOAL_LLM_KEY: str | None = None AUTO_COMPLETION_LLM_KEY: str | None = None + SCRIPT_GENERATION_LLM_KEY: str | None = None # COMMON LLM_CONFIG_TIMEOUT: int = 300 LLM_CONFIG_MAX_TOKENS: int = 4096 diff --git a/skyvern/core/script_generations/generate_workflow_parameters.py b/skyvern/core/script_generations/generate_workflow_parameters.py index 6850c88c..644c6fb7 100644 --- a/skyvern/core/script_generations/generate_workflow_parameters.py +++ b/skyvern/core/script_generations/generate_workflow_parameters.py @@ -112,7 +112,7 @@ async def _generate_field_names_with_llm(custom_field_actions: List[Dict[str, An template="generate-workflow-parameters", custom_field_actions=custom_field_actions ) - response = await app.SECONDARY_LLM_API_HANDLER(prompt=prompt, prompt_name="generate-workflow-parameters") + response = await app.SCRIPT_GENERATION_LLM_API_HANDLER(prompt=prompt, prompt_name="generate-workflow-parameters") return GeneratedFieldMapping.model_validate(response) diff --git a/skyvern/forge/app.py b/skyvern/forge/app.py index e801afc7..16f50a73 100644 --- a/skyvern/forge/app.py +++ b/skyvern/forge/app.py @@ -103,6 +103,9 @@ AUTO_COMPLETION_LLM_API_HANDLER = ( else SECONDARY_LLM_API_HANDLER ) SVG_CSS_CONVERTER_LLM_API_HANDLER = SECONDARY_LLM_API_HANDLER if SETTINGS_MANAGER.SECONDARY_LLM_KEY else None +SCRIPT_GENERATION_LLM_API_HANDLER = LLMAPIHandlerFactory.get_llm_api_handler( + SETTINGS_MANAGER.SCRIPT_GENERATION_LLM_KEY or SETTINGS_MANAGER.SECONDARY_LLM_KEY or SETTINGS_MANAGER.LLM_KEY +) WORKFLOW_CONTEXT_MANAGER = WorkflowContextManager() WORKFLOW_SERVICE = WorkflowService()