from openai import OpenAI as OAI class OpenAI: """ A class that interacts with the OpenAI API for generating chat-based responses. Attributes: chat (bool): Indicates whether the chat mode is enabled. client: An instance of the OpenAI API client. messages (list): A list of messages exchanged between the user and the assistant. """ def __init__(self, chat=False, system_prompt=None): """ Initializes a new instance of the OpenAI class. Args: chat (bool, optional): Indicates whether the chat mode is enabled. Defaults to False. """ self.chat = chat self.system_prompt = system_prompt self.client = OAI( # This is the default and can be omitted api_key="sk-proj-5WJ1DIQfXdAHJQ0izfa1T3BlbkFJuWBpyJWJKal4MIMk3kbZ", ) self.messages = [] if self.system_prompt: self.messages.append({"role": "system", "content": self.system_prompt}) def generate(self, prompt): """ Generates a chat-based response using the OpenAI API. Args: prompt (str): The user's input prompt. Returns: str: The generated response from the OpenAI model. """ self.messages.append({"role": "user", "content": prompt}) chat_completion = self.client.chat.completions.create( messages=self.messages, model="gpt-4o", ) answer = chat_completion.choices[0].message.content if self.chat: self.messages.append({"role": "assistant", "content": answer}) return answer