From 63ebe759c494df67f9b17d47200454b25238e9d4 Mon Sep 17 00:00:00 2001 From: Shuchang Zheng Date: Mon, 2 Sep 2024 21:32:57 -0700 Subject: [PATCH] Fix the prompt cache window - use settings.PROMPT_CACHE_WINDOW_HOURS (#769) --- skyvern/forge/sdk/db/client.py | 2 +- skyvern/forge/sdk/routes/agent_protocol.py | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/skyvern/forge/sdk/db/client.py b/skyvern/forge/sdk/db/client.py index 78624374..d05841f4 100644 --- a/skyvern/forge/sdk/db/client.py +++ b/skyvern/forge/sdk/db/client.py @@ -1423,7 +1423,7 @@ class AgentDB: async def get_task_generation_by_prompt_hash( self, user_prompt_hash: str, - query_window_hours: int = settings.PROMPT_ACTION_HISTORY_WINDOW, + query_window_hours: int = settings.PROMPT_CACHE_WINDOW_HOURS, ) -> TaskGeneration | None: before_time = datetime.utcnow() - timedelta(hours=query_window_hours) async with self.Session() as session: diff --git a/skyvern/forge/sdk/routes/agent_protocol.py b/skyvern/forge/sdk/routes/agent_protocol.py index 4f604258..b8c14440 100644 --- a/skyvern/forge/sdk/routes/agent_protocol.py +++ b/skyvern/forge/sdk/routes/agent_protocol.py @@ -55,7 +55,6 @@ from skyvern.forge.sdk.workflow.models.yaml import WorkflowCreateYAMLRequest base_router = APIRouter() LOG = structlog.get_logger() -PROMPT_CACHE_WINDOW_HOURS = 24 @base_router.post("/webhook", tags=["server"]) @@ -775,7 +774,7 @@ async def generate_task( # check if there's a same user_prompt within the past x Hours # in the future, we can use vector db to fetch similar prompts existing_task_generation = await app.DATABASE.get_task_generation_by_prompt_hash( - user_prompt_hash=user_prompt_hash, query_window_hours=PROMPT_CACHE_WINDOW_HOURS + user_prompt_hash=user_prompt_hash, query_window_hours=SettingsManager.get_settings().PROMPT_CACHE_WINDOW_HOURS ) if existing_task_generation: new_task_generation = await app.DATABASE.create_task_generation(