From 923115487133ae45f334d9de7e5faf9d2f6f21f0 Mon Sep 17 00:00:00 2001 From: "Paul Gauthier (aider)" Date: Mon, 26 Aug 2024 15:13:37 -0700 Subject: [PATCH] feat: add cacheable_messages() method to ChatChunks class --- aider/coders/chat_chunks.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/aider/coders/chat_chunks.py b/aider/coders/chat_chunks.py index 9d1360604..3c3673ee6 100644 --- a/aider/coders/chat_chunks.py +++ b/aider/coders/chat_chunks.py @@ -51,3 +51,10 @@ class ChatChunks: content["cache_control"] = {"type": "ephemeral"} messages[-1]["content"] = [content] + + def cacheable_messages(self): + chunks = self.system + self.examples + self.readonly_files + self.repo + self.done + self.chat_files + for i, message in enumerate(reversed(chunks)): + if isinstance(message.get('content'), list) and message['content'][0].get('cache_control'): + return chunks[:len(chunks)-i] + return chunks