mirror of
https://github.com/Skyvern-AI/skyvern.git
synced 2025-09-14 17:29:40 +00:00
🔄 synced local 'skyvern/' with remote 'skyvern/' (#2005)
This commit is contained in:
parent
fc32f917f8
commit
70adf8b9c6
1 changed files with 48 additions and 42 deletions
|
@ -211,6 +211,52 @@ class Block(BaseModel, abc.ABC):
|
|||
) -> BlockResult:
|
||||
pass
|
||||
|
||||
async def _generate_workflow_run_block_description(
|
||||
self, workflow_run_block_id: str, organization_id: str | None = None
|
||||
) -> None:
|
||||
description = None
|
||||
try:
|
||||
block_data = self.model_dump(
|
||||
exclude={
|
||||
"workflow_run_block_id",
|
||||
"organization_id",
|
||||
"task_id",
|
||||
"workflow_run_id",
|
||||
"parent_workflow_run_block_id",
|
||||
"label",
|
||||
"status",
|
||||
"output",
|
||||
"continue_on_failure",
|
||||
"failure_reason",
|
||||
"actions",
|
||||
"created_at",
|
||||
"modified_at",
|
||||
},
|
||||
exclude_none=True,
|
||||
)
|
||||
description_generation_prompt = prompt_engine.load_prompt(
|
||||
"generate_workflow_run_block_description",
|
||||
block=block_data,
|
||||
)
|
||||
json_response = await app.SECONDARY_LLM_API_HANDLER(
|
||||
prompt=description_generation_prompt, prompt_name="generate-workflow-run-block-description"
|
||||
)
|
||||
description = json_response.get("summary")
|
||||
LOG.info(
|
||||
"Generated description for the workflow run block",
|
||||
description=description,
|
||||
workflow_run_block_id=workflow_run_block_id,
|
||||
)
|
||||
except Exception as e:
|
||||
LOG.exception("Failed to generate description for the workflow run block", error=e)
|
||||
|
||||
if description:
|
||||
await app.DATABASE.update_workflow_run_block(
|
||||
workflow_run_block_id=workflow_run_block_id,
|
||||
description=description,
|
||||
organization_id=organization_id,
|
||||
)
|
||||
|
||||
async def execute_safe(
|
||||
self,
|
||||
workflow_run_id: str,
|
||||
|
@ -231,48 +277,8 @@ class Block(BaseModel, abc.ABC):
|
|||
)
|
||||
workflow_run_block_id = workflow_run_block.workflow_run_block_id
|
||||
|
||||
description = None
|
||||
try:
|
||||
block_data = self.model_dump(
|
||||
exclude={
|
||||
"workflow_run_block_id",
|
||||
"organization_id",
|
||||
"task_id",
|
||||
"workflow_run_id",
|
||||
"parent_workflow_run_block_id",
|
||||
"label",
|
||||
"status",
|
||||
"output",
|
||||
"continue_on_failure",
|
||||
"failure_reason",
|
||||
"actions",
|
||||
"created_at",
|
||||
"modified_at",
|
||||
},
|
||||
exclude_none=True,
|
||||
)
|
||||
description_generation_prompt = prompt_engine.load_prompt(
|
||||
"generate_workflow_run_block_description",
|
||||
block=block_data,
|
||||
)
|
||||
json_response = await app.SECONDARY_LLM_API_HANDLER(
|
||||
prompt=description_generation_prompt, prompt_name="generate-workflow-run-block-description"
|
||||
)
|
||||
description = json_response.get("summary")
|
||||
LOG.info(
|
||||
"Generated description for the workflow run block",
|
||||
description=description,
|
||||
workflow_run_block_id=workflow_run_block.workflow_run_block_id,
|
||||
)
|
||||
except Exception as e:
|
||||
LOG.exception("Failed to generate description for the workflow run block", error=e)
|
||||
|
||||
if description:
|
||||
workflow_run_block = await app.DATABASE.update_workflow_run_block(
|
||||
workflow_run_block_id=workflow_run_block.workflow_run_block_id,
|
||||
description=description,
|
||||
organization_id=organization_id,
|
||||
)
|
||||
# generate the description for the workflow run block asynchronously
|
||||
asyncio.create_task(self._generate_workflow_run_block_description(workflow_run_block_id, organization_id))
|
||||
|
||||
# create a screenshot
|
||||
browser_state = app.BROWSER_MANAGER.get_for_workflow_run(workflow_run_id)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue