Releases: openai/chatkit-python
1.6.2
-
Adds handling for sync actions via
ChatKitServer.sync_actionNormally, widget actions are blocked while a thread is streaming a response. This prevents race conditions, but it can be limiting when a widget action is only going to update itself or trigger side effects outside the thread. To get around this limitation, we're adding
ChatKitServer.sync_actionwhere you can run any side effects and update the widget's UI as needed. To route an action to this handler, addstreaming: falseto the action. If a widget action includesstreaming: falseit won't be blocked during streaming.
v1.6.1
v1.6.0
- Support dictation with
input.transcribeop andChatKitServer.transcribe - Save thread id as part of attachment when user message is written to store
- Breaking:
Store.save_attachmentmay now be called with updates to existing attachments (treated as an upsert), not only inserts.
v1.5.3
v1.5.2
v1.5.1
v1.5.0
-
Streaming annotations: Support custom mapping for assistant message annotations in
stream_agent_responseviaResponseStreamConverter. -
Two-phase uploads: Add
PUTsupport and request header forwarding viaupload_descriptorforFileAttachmentandImageAttachment. -
Breaking:
- The
upload_urlfield onFileAttachmentandImageAttachmenthas been removed (useupload_descriptor). ChatKitServernow writes created attachment metadata to the store when handling theattachments.createrequest (remove store-write fromAttachmentStore.create_attachment).
- The
v1.4.2
v1.4.1
-
Support streaming generated images using a new
GeneratedImageItem- Emit partial image updates with
GeneratedImageUpdated - Enable custom image output handling through
ResponseStreamConverterpassed to
stream_agent_response
- Emit partial image updates with
-
Add customization options for how
EntitySourceis rendered in assistant messages- Control inline and hover annotation views with
inline_labelandlabel - Mark entity sources as
interactiveto enable client-side click handling and previews
- Control inline and hover annotation views with
-
Add a
clockicon for use in workflows and entity annotations
v1.4.0
- Introduce
WidgetTemplatefor building widgets from .widget files instead of hand-crafting widget models. - Add
ClientEffectEventfor triggering client-side behavior in ChatKit.js. - Add overridable
ChatKitServer.handle_stream_cancelledandget_stream_optionsmethods to support configurable response cancellation behavior. - Add
SDKHiddenContextItemwith defaultThreadItemConverterhandling to store ChatKit-added hidden context in threads.
Breaking:
- Widget and action classes remain usable but are marked deprecated in favor of using
WidgetTemplate jinja2is a required dependency for widget template rendering.- A stop button shows by default during streaming so users can cancel mid-response; integrations can override
ChatKitServer.get_stream_optionsto change this.