Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions bedrock/entity/workflows.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,18 @@ class BedrockParams:

@workflow.defn
class EntityBedrockWorkflow:
def __init__(self) -> None:
# Using @workflow.init means this constructor runs before any signal or
# query handler, so the workflow arguments are applied to the state before a
# message can observe or mutate it.
@workflow.init
def __init__(self, params: BedrockParams) -> None:
# List to store prompt history
self.conversation_history: List[Tuple[str, str]] = []
self.prompt_queue: Deque[str] = deque()
self.conversation_summary: Optional[str] = None
self.continue_as_new_per_turns: int = 6
self.chat_ended: bool = False

@workflow.run
async def run(
self,
params: BedrockParams,
) -> str:
if params and params.conversation_summary:
self.conversation_history.append(
("conversation_summary", params.conversation_summary)
Expand All @@ -41,6 +40,11 @@ async def run(
if params and params.prompt_queue:
self.prompt_queue.extend(params.prompt_queue)

@workflow.run
async def run(
self,
params: BedrockParams,
) -> str:
while True:
workflow.logger.info("Waiting for prompts...")

Expand Down
Loading