| 
                        123456789101112131415161718192021222324 | 
                        - from langchain.schema import BaseMessage, SystemMessage, AIMessage, HumanMessage
 - 
 - from core.prompt.prompt_template import PromptTemplateParser
 - 
 - 
 - class PromptBuilder:
 -     @classmethod
 -     def parse_prompt(cls, prompt: str, inputs: dict) -> str:
 -         prompt_template = PromptTemplateParser(prompt)
 -         prompt_inputs = {k: inputs[k] for k in prompt_template.variable_keys if k in inputs}
 -         prompt = prompt_template.format(prompt_inputs)
 -         return prompt
 - 
 -     @classmethod
 -     def to_system_message(cls, prompt_content: str, inputs: dict) -> BaseMessage:
 -         return SystemMessage(content=cls.parse_prompt(prompt_content, inputs))
 - 
 -     @classmethod
 -     def to_ai_message(cls, prompt_content: str, inputs: dict) -> BaseMessage:
 -         return AIMessage(content=cls.parse_prompt(prompt_content, inputs))
 - 
 -     @classmethod
 -     def to_human_message(cls, prompt_content: str, inputs: dict) -> BaseMessage:
 -         return HumanMessage(content=cls.parse_prompt(prompt_content, inputs))
 
 
  |