in bot/gemini_model.py [0:0]
def from_bot_chat_message(cls, message: hikari.Message) -> list["ChatPart"]:
"""
Create a model ChatPart object from hikari.Message.
Stores the text content of the message and assigns the `role` as "model".
This method also calculates and saves the token count.
"""
part = Part.from_text(text=message.content)
tokens = cls._count_tokens(part)
parts = [(part, tokens)]
for a in message.attachments:
data = discord_cache.get_from_cache(a.url)
part = Part.from_bytes(data=data, mime_type=a.media_type)
parts.append((part, cls._count_tokens(part)))
return [cls(part, "model", tokens) for part, tokens in parts]