workflow run block description generation (#1482)
This commit is contained in:
@@ -208,6 +208,49 @@ class Block(BaseModel, abc.ABC):
|
||||
block_type=self.block_type,
|
||||
continue_on_failure=self.continue_on_failure,
|
||||
)
|
||||
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)
|
||||
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,
|
||||
)
|
||||
|
||||
# create a screenshot
|
||||
browser_state = app.BROWSER_MANAGER.get_for_workflow_run(workflow_run_id)
|
||||
if not browser_state:
|
||||
@@ -220,7 +263,6 @@ class Block(BaseModel, abc.ABC):
|
||||
artifact_type=ArtifactType.SCREENSHOT_LLM,
|
||||
data=screenshot,
|
||||
)
|
||||
workflow_run_block_id = workflow_run_block.workflow_run_block_id
|
||||
return await self.execute(workflow_run_id, workflow_run_block_id, organization_id=organization_id, **kwargs)
|
||||
except Exception as e:
|
||||
LOG.exception(
|
||||
|
||||
Reference in New Issue
Block a user