Skip to content

chatlas 0.17.0

Choose a tag to compare

@cpsievert cpsievert released this 11 May 16:15
· 17 commits to main since this release

New features

  • ChatOpenAICompletions() (and providers built on it like ChatDeepSeek, ChatOpenRouter, etc.) now extracts reasoning_content from model responses as ContentThinking objects. A new preserve_thinking parameter controls whether reasoning content is sent back to the API in multi-turn conversations; it defaults to False but is set to True for ChatDeepSeek (required for V4 tool-calling) and ChatOpenRouter (recommended for quality). (#295)

Improvements

  • .stream() and .stream_async() now handle thinking content differently by mode. With content="text", thinking is suppressed entirely. With content="all", thinking fragments are yielded as ContentThinkingDelta objects with a phase property ("start", "body", or "end") that communicates block boundaries to downstream consumers without injecting synthetic strings into the stream. (#299, #297, #294)
  • Updated default models across all providers to current generation. (#292)
  • Updated token pricing data from LiteLLM. (#292)
  • ChatBedrockAnthropic() gains a reasoning parameter for extended thinking, matching the existing parameter on ChatAnthropic(). (#286)

Full changelog: https://github.com/posit-dev/chatlas/blob/main/CHANGELOG.md