text: agents and beyond.The original implementation: https://github.com/lightaime/camelProject website: https://www.camel-ai.org/Arxiv paper: https://arxiv.org/abs/2303.17760Import LangChain related modulesâ€‹from typing import Listfrom langchain.chat_models import ChatOpenAIfrom langchain.prompts.chat import (    SystemMessagePromptTemplate,    HumanMessagePromptTemplate,)from langchain.schema import (    AIMessage,    HumanMessage,    SystemMessage,    BaseMessage,)Define a CAMEL agent helper classâ€‹class CAMELAgent:    def __init__(        self,        system_message: SystemMessage,        model: ChatOpenAI,    ) -> None:        self.system_message = system_message        self.model = model        self.init_messages()    def reset(self) -> None:        self.init_messages()        return self.stored_messages    def init_messages(self) -> None:        self.stored_messages = [self.system_message]    def update_messages(self, message: BaseMessage) -> List[BaseMessage]:        self.stored_messages.append(message)        return self.stored_messages    def step(        self,        input_message: HumanMessage,    ) -> AIMessage:        messages = self.update_messages(input_message)        output_message = self.model(messages)