2024-06-07 15:59:53 -07:00
|
|
|
from datetime import datetime
|
|
|
|
|
from typing import Any
|
|
|
|
|
|
2024-09-03 07:00:15 +03:00
|
|
|
from pydantic import BaseModel, ConfigDict, Field
|
2024-06-07 15:59:53 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
class TaskGenerationBase(BaseModel):
|
|
|
|
|
model_config = ConfigDict(from_attributes=True)
|
|
|
|
|
|
|
|
|
|
organization_id: str | None = None
|
|
|
|
|
user_prompt: str | None = None
|
2024-09-03 07:00:15 +03:00
|
|
|
user_prompt_hash: str | None = None
|
2024-06-07 15:59:53 -07:00
|
|
|
url: str | None = None
|
|
|
|
|
navigation_goal: str | None = None
|
|
|
|
|
navigation_payload: dict[str, Any] | None = None
|
|
|
|
|
data_extraction_goal: str | None = None
|
|
|
|
|
extracted_information_schema: dict[str, Any] | None = None
|
2024-06-07 16:27:32 -07:00
|
|
|
llm: str | None = None
|
2024-06-07 15:59:53 -07:00
|
|
|
llm_prompt: str | None = None
|
|
|
|
|
llm_response: str | None = None
|
2024-08-23 23:16:41 +03:00
|
|
|
suggested_title: str | None = None
|
2024-06-07 15:59:53 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
class TaskGeneration(TaskGenerationBase):
|
|
|
|
|
task_generation_id: str
|
|
|
|
|
organization_id: str
|
|
|
|
|
user_prompt: str
|
2024-09-03 07:00:15 +03:00
|
|
|
user_prompt_hash: str
|
2024-06-07 15:59:53 -07:00
|
|
|
|
|
|
|
|
created_at: datetime
|
|
|
|
|
modified_at: datetime
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class GenerateTaskRequest(BaseModel):
|
2024-09-03 07:00:15 +03:00
|
|
|
# prompt needs to be at least 1 character long
|
|
|
|
|
prompt: str = Field(..., min_length=1)
|