def service_system_prompt(
role: PromptOrStr,
task: PromptOrStrOrNone = None,
guidelines: PromptOrStrOrNone = None,
system_override_prompt: PromptOrStrOrNone = None,
postfix_system_prompt: PromptOrStrOrNone = None,
) -> Prompt:
prompt = Prompt()
prompt.sub_heading('Role')
prompt.prompt(role)
if task:
prompt.line_break()
prompt.sub_heading('Task')
prompt.prompt(task)
if guidelines:
prompt.line_break()
prompt.sub_heading('Guidelines')
prompt.prompt(guidelines)
prompt.line_break()
prompt.sub_heading('Rules')
if system_override_prompt:
prompt.prompt(system_override_prompt)
else:
prompt.line_break()
prompt.list([
'Do not use any markdown styling in your response.',
])
if postfix_system_prompt:
prompt.line_break()
prompt.prompt(postfix_system_prompt)
return prompt