feat(loop): add history message count logging in compression
This commit is contained in:
@@ -362,6 +362,7 @@ class AgentLoop:
|
|||||||
if len(chunk) < 2:
|
if len(chunk) < 2:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
before_msg_count = len(session.messages)
|
||||||
logger.info(
|
logger.info(
|
||||||
"Compression chunk {}: msgs {}-{} (count={}, est~{}, need~{})",
|
"Compression chunk {}: msgs {}-{} (count={}, est~{}, need~{})",
|
||||||
session.key,
|
session.key,
|
||||||
@@ -383,12 +384,13 @@ class AgentLoop:
|
|||||||
self._set_compressed_until(session, end_idx)
|
self._set_compressed_until(session, end_idx)
|
||||||
self.sessions.save(session)
|
self.sessions.save(session)
|
||||||
|
|
||||||
|
after_msg_count = len(session.messages)
|
||||||
after_tokens, after_source = self._estimate_session_prompt_tokens(session)
|
after_tokens, after_source = self._estimate_session_prompt_tokens(session)
|
||||||
after_ratio = after_tokens / budget if budget else 0.0
|
after_ratio = after_tokens / budget if budget else 0.0
|
||||||
reduced = max(0, current_tokens - after_tokens)
|
reduced = max(0, current_tokens - after_tokens)
|
||||||
reduced_ratio = (reduced / current_tokens) if current_tokens > 0 else 0.0
|
reduced_ratio = (reduced / current_tokens) if current_tokens > 0 else 0.0
|
||||||
logger.info(
|
logger.info(
|
||||||
"Compression done {}: {}/{} ({:.1%}) via {}, reduced={} ({:.1%})",
|
"Compression done {}: {}/{} ({:.1%}) via {}, reduced={} ({:.1%}), history: {} -> {}",
|
||||||
session.key,
|
session.key,
|
||||||
after_tokens,
|
after_tokens,
|
||||||
budget,
|
budget,
|
||||||
@@ -396,6 +398,8 @@ class AgentLoop:
|
|||||||
after_source,
|
after_source,
|
||||||
reduced,
|
reduced,
|
||||||
reduced_ratio,
|
reduced_ratio,
|
||||||
|
before_msg_count,
|
||||||
|
after_msg_count,
|
||||||
)
|
)
|
||||||
|
|
||||||
def _schedule_background_compression(self, session_key: str) -> None:
|
def _schedule_background_compression(self, session_key: str) -> None:
|
||||||
|
|||||||
Reference in New Issue
Block a user