Skip to main content

Table of Contents

Module spoon_ai.memory.short_term_manager

Short-term memory management for conversation history.

TrimStrategy Objects​

class TrimStrategy(str, Enum)

Strategy for trimming messages.

FROM_START​

Remove oldest messages first

FROM_END​

Remove newest messages first

MessageTokenCounter Objects​

class MessageTokenCounter()

Approximate token counter aligned with LangChain semantics.

ShortTermMemoryManager Objects​

class ShortTermMemoryManager()

Manager for short-term conversation memory with advanced operations.

trim_messages​

async def trim_messages(messages: List[Message],
max_tokens: int,
strategy: TrimStrategy = TrimStrategy.FROM_END,
keep_system: bool = True,
model: Optional[str] = None) -> List[Message]

Trim messages using a LangChain-style heuristic.

summarize_messages​

async def summarize_messages(
messages: List[Message],
max_tokens_before_summary: int,
messages_to_keep: int = 5,
summary_model: Optional[str] = None,
llm_manager=None,
llm_provider: Optional[str] = None,
existing_summary: str = ""
) -> Tuple[List[Message], List[RemoveMessage], Optional[str]]

Summarize earlier messages and emit removal directives.