Bases: IOMessageVisitor
Initialize the MesopGUIMessageVisitor object.
PARAMETER | DESCRIPTION |
level | The level of the message. TYPE: int |
conversation_id | The ID of the conversation. TYPE: str |
Source code in fastagency/ui/mesop/message.py
| def __init__(self, level: int, conversation_id: str) -> None:
"""Initialize the MesopGUIMessageVisitor object.
Args:
level (int): The level of the message.
conversation_id (str): The ID of the conversation.
"""
self._level = level
self._conversation_id = conversation_id
|
process_message
Source code in fastagency/ui/mesop/message.py
| def process_message(self, message: IOMessage) -> Optional[str]:
return self.visit(message)
|
visit
Source code in fastagency/base.py
| def visit(self, message: IOMessage) -> Optional[str]:
method_name = f"visit_{message.type}"
method = getattr(self, method_name, self.visit_default)
return method(message)
|
visit_default
Source code in fastagency/ui/mesop/message.py
| def visit_default(self, message: IOMessage) -> None:
base_color = "#aff"
with me.box(
style=me.Style(
background=base_color,
padding=me.Padding.all(16),
border_radius=16,
margin=me.Margin.symmetric(vertical=16),
)
):
self._header(message, base_color)
me.markdown(message.type)
|
visit_function_call_execution
Source code in fastagency/base.py
| def visit_function_call_execution(
self, message: FunctionCallExecution
) -> Optional[str]:
return self.visit_default(message)
|
visit_multiple_choice
Source code in fastagency/ui/mesop/message.py
| def visit_multiple_choice(self, message: MultipleChoice) -> str:
text = message.prompt if message.prompt else "Please enter a value"
if message.choices:
options = ",".join(
f"{i+1}. {choice}" for i, choice in enumerate(message.choices)
)
text += "\n" + options
base_color = "#cff"
with me.box(
style=me.Style(
background=base_color,
padding=me.Padding.all(16),
border_radius=16,
margin=me.Margin.symmetric(vertical=16),
)
):
self._header(message, base_color, title="Input requested")
me.markdown(text)
return ""
|
visit_suggested_function_call
Source code in fastagency/base.py
| def visit_suggested_function_call(
self, message: SuggestedFunctionCall
) -> Optional[str]:
return self.visit_default(message)
|
visit_system_message
Source code in fastagency/ui/mesop/message.py
| def visit_system_message(self, message: SystemMessage) -> None:
base_color = "#bff"
with me.box(
style=me.Style(
background=base_color,
padding=me.Padding.all(16),
border_radius=16,
margin=me.Margin.symmetric(vertical=16),
)
):
self._header(message, base_color, title="System Message")
me.markdown(json.dumps(message.message, indent=2))
|
visit_text_input
Source code in fastagency/ui/mesop/message.py
| def visit_text_input(self, message: TextInput) -> str:
text = message.prompt if message.prompt else "Please enter a value"
if message.suggestions:
suggestions = ",".join(suggestion for suggestion in message.suggestions)
text += "\n" + suggestions
base_color = "#bff"
with me.box(
style=me.Style(
background=base_color,
padding=me.Padding.all(16),
border_radius=16,
margin=me.Margin.symmetric(vertical=16),
)
):
self._header(message, base_color, title="Input requested")
me.markdown(text)
return ""
|
visit_text_message
Source code in fastagency/ui/mesop/message.py
| def visit_text_message(self, message: TextMessage) -> None:
base_color = "#fff"
with me.box(
style=me.Style(
background=base_color,
padding=me.Padding.all(16),
border_radius=16,
margin=me.Margin.symmetric(vertical=16),
)
):
self._header(message, base_color, title="Text message")
me.markdown(message.body)
|
visit_workflow_completed
Source code in fastagency/base.py
| def visit_workflow_completed(self, message: WorkflowCompleted) -> Optional[str]:
return self.visit_default(message)
|