Platform
ScaiWave ScaiGrid ScaiCore ScaiBot ScaiDrive ScaiKey Modellen Tools & Services
Oplossingen
Organisaties Ontwikkelaars Internet Service Providers Managed Service Providers AI-in-a-Box
Kenniscentrum
Ondersteuning Documentation Blog Downloads
Bedrijf
Over ons Onderzoek Vacatures Investeren Contact
Inloggen

Changelog

User-visible changes only. Internal refactors and infrastructure work omitted.

v1.1 — Avatars (ScaiVatars)#

  • Every ScaiBot can opt into being a 3D avatar via a new "Avatar" tab in the admin UI.
  • Public WebSocket gateway at wss://scaigrid.scailabs.ai/v1/public/scaibot/avatar/ws-interactive. Same embed token the chat and voice widgets already use — one credential, three surfaces.
  • Wire protocol compatible with the standalone ScaiVatars service: identical JSON envelopes, identical action set (start_session, resume_session, text_to_speech, send_text, send_voice, get_history, stop_command), identical blendshape format.
  • send_text is fully wired: user text → bot persona + avatar-mode rules + LLM → TTS → lipsync, all in one chunk with the assistant message persisted to history. Uses the bot's configured model, max_context_messages, temperature, top_p, and max_tokens_per_response.
  • send_voice is fully wired: base64 audio (PCM or WAV) → ScaiInfer STT (scaiinfer/stt-voxtral) → delegates to send_text. Transcript surfaces on the response chunk as data.transcription when the client requests include_transcription.
  • Per-bot cross-origin allow-list. Customer origins (https://customer.example.com or https://*.customer.example.com) are explicitly whitelisted per bot; the WebSocket rejects browser connections from anywhere else.
  • Live lipsync. ScaiInfer node generates ARKit-compatible blendshape coefficients in time with the synthesized voice; client receives both in the same response chunk so audio + face animation are sample-accurately in sync.
  • Tenant-scoped session admin. Active and recent avatar sessions surface in the same admin panel as the bot's other surfaces.
  • Avatar mode system-prompt rules. Every LLM call (send_text, including the LLM stage of send_voice) carries an appended block teaching the model it's a 3D avatar — no Markdown, no visual references that don't translate to speech, no claims to see the user. Operators override the persona with a per-bot avatar_system_prompt; the rules block is appended automatically.
  • avatar_update event on session open. Right after start_session or resume_session succeeds, the server pushes the bot's current 3D config (model_url, blendshape_profile, idle_animation) via the protocol's existing avatar_update event_type. Clients load the right model and idle animation without a separate HTTP fetch. The event is part of the standalone protocol's event_type enum — zero compatibility risk; clients that ignore avatar_update drop it silently per spec.
  • Per-bot lipsync engine routing. avatar_blendshape_profile is now passed through to the ScaiInfer node as the engine_kind selector. Future expressive lipsync variants ship as a new engine_kind without a controller code change; operators flip the per-bot profile to opt in.

v1.0 — Launch#

First generally-available release.

  • Embeddable chat widget with floating-bubble and inline-mount modes.
  • Managed and linked knowledge modes; PDF / DOCX / Markdown / HTML / plain-text ingestion with OCR fallback.
  • Tone configuration via structured fields; no system-prompt-writing required.
  • Five escalation trigger types (keyword, intent, sentiment, confidence, explicit) × four action types (email, webhook, Slack, ScaiQueue).
  • Conversation persistence with full transcript, citations, and escalation history.
  • Server-side embed-token issuance with optional visitor identity.
  • Analytics dashboard in the admin UI: conversations, escalations, tokens, top topics.
  • Audit-log integration via the standard ScaiGrid audit pipeline.
Updated 2026-06-23 15:25:31 View source (.md) rev 20