Skip to content

v0.44.0

Choose a tag to compare

@angel-ip angel-ip released this 13 Oct 09:55
· 146 commits to main since this release
eff15b7

@kanzo-tech/llm (minor)

  • The model runs in the page, from where you serve it. localModel(id, { from: { weights, library } }) loads the model from where you serve it — its MLC weights directory and its compiled .wasm — rather than from WebLLM's prebuilt list on Hugging Face. An id that is in that list keeps the list's settings for it — its overrides (the context window among them), vram_required_MB, low_resource_required, required_features — so a model you serve runs as the prebuilt one would and needs no more memory. loadLocalModel(id, settings) downloads and loads it before the first call, on the same engine, and rejects as a call would. The first load asks the browser to persist the page's storage, so the weights are not evicted under pressure.
  • Breaking: the gateway is gone. createGateway, Gateway and GatewaySettings are removed, and with them the dependency on @ai-sdk/openai-compatible. The model is localModel, from @kanzo-tech/llm/local, in the page; any other LanguageModel still works everywhere one is taken. AiError has one code left, ai/unavailable (data.reason); ai/silent and ai/rate-limited, and the after, retryAfter and status data, were the gateway's and went with it. A host that branched on them drops those branches.

@kanzo-tech/ai (minor)

  • The transcript and the composer are exported, for a conversation whose turns are yours: Conversation, ConversationContent and ConversationScrollButton — the scroll region that follows new content only while the reader is at the end, and the button that takes them back — and PromptInput, PromptInputTextarea, PromptInputToolbar and PromptInputSubmit (PromptInputSubmitProps), the composer where Enter sends, Shift+Enter is a newline and the button is Send, Stop or Retry by the chat's status. A transcript that scrolls itself to the bottom on every turn, or a composer built from InputGroup, can be replaced with them.
  • Doc comments follow the gateway's removal (no API change).

@kanzo-tech/auth (minor)

  • Breaking: the AI gateway is gone from the platform's services. services/compose.yaml and services/compose.dev.yaml include identity only: services/ai (agentgateway, its Postgres, the local-model profile, AI_CHAT, AI_COMPLETE) no longer exists, and the model runs in the page with localModel from @kanzo-tech/llm/local. The realm no longer registers the ai-gateway API, and the realm-wide apis variable and output are gone with it: an application's declaration lists no apis, only its own api. Remove apis: [ai-gateway] from your x-application, and the /api/ai mount from kanzoAuth's apis.

@kanzo-tech/ui (patch)

  • TreeView no longer paints its first row as focused when nothing is: a row's focus background shows for keyboard focus only (:focus-visible), not on the tab stop Ark marks at rest. A className that restyled the focused row through data-focus: should use focus-visible:.