From c024d85db5ebabafbdf0460479fe2bfec3fb77b2 Mon Sep 17 00:00:00 2001 From: T-BENZIN Date: Sun, 24 Aug 2025 19:59:07 +0500 Subject: [PATCH] Added ClientMessage -> OpenAIMessage object adapter --- reginaldCog/llm_clients/llm_client.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/reginaldCog/llm_clients/llm_client.py b/reginaldCog/llm_clients/llm_client.py index ce66553..3591df5 100644 --- a/reginaldCog/llm_clients/llm_client.py +++ b/reginaldCog/llm_clients/llm_client.py @@ -2,6 +2,7 @@ from itertools import zip_longest from abc import ABC, abstractmethod from enum import Enum from openai import OpenAI +from ..messenger_clients.messenger_client import ClientMessage class ILLMContent(ABC): @@ -154,6 +155,27 @@ class OpenAIResponseAdapter(IMessageAdapter): return message +class MessengerMessageAdapter(IMessageAdapter): + def __init__(self, message: ClientMessage): # Dependency Inversion violation, figure out later + self.message = message + + def to_message(self) -> ILLMMessage: + content = OpenAIContent() + content_builder = OpenAIContentBuilder(content) + message = OpenAIMessage() + message_builder = OpenAIMessageBuilder(message) + + message_builder.set_role("user")\ + .set_content(content) + + if self.message: + content_builder.add_input_text(self.message.content) + for i_image_url in self.message.image_urls: + content_builder.add_input_image(i_image_url) + + return message + + if __name__ == "__main__": dev_message_text = "You are a butler named Reginald. Give your answers in a refined manners of the English butler." user_message_text = "Hi! Tell me about yourself!"