Added CHANGELOG entry describing new thinking-related functionality

This commit is contained in:
Paul Kompfner
2025-12-05 10:02:21 -05:00
parent 4ea51ff67c
commit 49f1f7d6a2

39
changelog/3175.added.md Normal file
View File

@@ -0,0 +1,39 @@
- Added additional functionality related to "thinking", for Google and Anthropic
LLMs.
1. New typed parameters for Google and Anthropic LLMs that control the
models' thinking behavior (like how much thinking to do, and whether to
output thoughts or thought summaries):
- `AnthropicLLMService.ThinkingConfig`
- `GoogleLLMService.ThinkingConfig`
2. New frames for representing thoughts output by LLMs:
- `LLMThoughtStartFrame`
- `LLMThoughtTextFrame`
- `LLMThoughtEndFrame`
3. A generic mechanism for associating extra LLM-specific data with a function
call in context, used specifically to support Google's function-call-related
"thought signatures", which are necessary to ensure thinking continuity
between function calls in a chain (where the model thinks, makes a function
call, thinks some more, etc.). See:
- `FunctionCallInProgressFrame.llm_specific_extra`
- `LLMAssistantAggregator` handling of the above field
- `GeminiLLMAdapter` handling of`"tool_call_extra"` context messages
4. A generic mechanism for recording LLM thoughts to context, used
specifically to support Anthropic, whose thought signatures are expected to
appear alongside the text of the thoughts within assistant context
messages. See:
- `LLMThoughtEndFrame.signature`
- `LLMAssistantAggregator` handling of the above field
- `AnthropicLLMAdapter` handling of `"thought"` context messages
5. A generic mechanism for recording standalone thought signatures to context,
used specifically to support Gemini 3 Pro, which may return
non-function-call-related thought signatures at the end of
non-function-call assistant responses. See:
- `LLMThoughtSignatureFrame`
- `LLMAssistantAggregator` handling of the above frame
- `GeminiLLMAdapter` handling of `"thought_signature"` context messages
6. An expansion of `TranscriptProcessor` to process LLM thoughts in addition
to user and assistant utterances. See:
- `TranscriptProcessor.thought()`
- `ThoughtTranscriptionMessage`, which may now also be emitted with the
`"on_transcript_update"` event