What's Changed
Breaking changes
- Building messages by rendering JSON from data (e.g.
{% for m in history %}{{ m | tojson }}{% endfor %}) no longer produces messages — the JSON is returned as literal text. Use{% chat %}blocks instead. - The
image,audio,video,document,cache_controlandtoolfilters now take the Jinja render context as their first argument. Templates are unaffected; only direct Python calls need updating. banks.types.CONTENT_BLOCK_REGEXis removed, replaced bycontent_block_start(sentinel)andCONTENT_BLOCK_END.chat_message_from_text()gained asentinelkeyword argument; without it, content blocks are no longer parsed.
Prompt.text() output and the chat_messages() API are unchanged.
Full Changelog: v2.4.5...v2.5.0