What's new

Product announcements, new models, and feature releases on IndoxHub.
FeatureMay 2, 2026

SSE async pipeline live in production — 9 providers, in-band cost events

Phase 7B canary now serves real production traffic for all 9 supported providers (OpenAI, Anthropic, Google, AWS Bedrock, DeepSeek, xAI, Mistral, Qwen, HuggingFace). Every stream emits usage_start + usage_final events with input/output tokens, cost_usd, and latency_ms baked into the wire format — no second API call needed for billing. Bedrock added as the 9th provider; nginx tuned for SSE; Locust load scenario shipped; Python client `indoxhub` v0.2.2 published to PyPI.

What's new since 2026-04-27

AreaChange
ProvidersBedrock added — 9 / 9 covered. Live-validated on us.amazon.nova-micro-v1:0.
RoutePhase 7B canary wires all 9 providers through dispatch_stream(provider_id, …) behind SSE_ASYNC_STREAMING_ENABLED. Default-off in prod; flip the GitHub Variable + re-run PROD_setup → PROD_build_docker to activate.
nginxDedicated SSE location = blocks with proxy_buffering off, 600 s timeouts, HTTP/1.1 keep-alive.
Load testtests/load/locustfile_sse.py — 50-stream scenario records TTFC, total stream duration, max inter-chunk gap.
DocsStreaming page rewritten + new SSE Events reference page. 17 / 17 usage pages now icon-bearing.
Python clientpip install indoxhub==0.2.2 — gold-standard release with R2 mirror surface + full Resemble AI namespace.

Live verification (today)

A single test stream against the canary on production:

event: usage_start
data: {"type":"usage_start","request_id":"…","provider":"openai","model":"gpt-4o-mini","input_tokens":15}

data: {"type":"content","data":"pong","provider":"openai","choices":[…]}

event: usage_final
data: {"type":"usage_final","input_tokens":15,"output_tokens":1,"cost_usd":2.85e-06,"latency_ms":4693}

data: [DONE]

Total live validation spend across all 9 provider wrappers: under $0.001.

Wire-format reference

The full per-event schema and a complete Python parser are documented on the new SSE Events page. The Streaming page now also carries the updated wire-format walkthrough.

Operational rollback

The canary is gated by a single repository-level GitHub Variable. Flip SSE_ASYNC_STREAMING_ENABLED=true, then re-run PROD_setup → PROD_build_docker. Rollback is the same toggle in reverse — no code change, no source redeploy.

#sse#streaming#async#canary#production#openai#anthropic#google#bedrock#deepseek#xai#mistral#qwen#huggingface#pypi#indoxhub-client
FeatureApril 27, 2026

All Resemble media now mirrored to Cloudflare R2

TTS clips, uploads, and async-job audio are stored on Cloudflare R2 with per-asset retention. Voice-clone source recordings are kept permanently; generated audio expires automatically.

What's new

IndoxHub now mirrors every media asset Resemble produces — TTS audio, audio enhance/edit results, watermark output, and user uploads — to Cloudflare R2. Responses include an audio_url (a presigned R2 URL) plus an expires_at timestamp so clients know exactly when an asset will be deleted.

Per-asset retention

Asset typeRetention
TTS generated audio7 days
Audio enhance / edit / watermark output7 days
Voice design candidates14 days
STT input / generic uploads30 days
Voice-clone source recordingsPERMANENT
Built voice modelsPERMANENT

Identity assets (voice clones, trained voices) are kept forever. Disposable derivatives expire on a short clock to control storage cost.

Marking voice-clone uploads as permanent

When uploading audio meant for cloning a voice, pass purpose=voice_clone in the multipart form to land the file under voice-recordings/ (no expiry):

curl https://api.indoxhub.com/api/v1/resemble/uploads \
  -H "Authorization: Bearer $INDOXHUB_API_KEY" \
  -F "[email protected]" \
  -F "purpose=voice_clone"

Other purposes: stt_input, watermark_input, audio_job_input. Default (no purpose) lands under uploads/ with 30-day retention.

Why R2

  • Zero egress fees — large audio playback hits the bucket from end-user browsers; egress dominates the bill at scale.
  • Per-user isolation — keys follow {prefix}{user_id}/{YYYY}/{MM}/{DD}/{HHMMSS}-{request_id}.{ext} so per-user GDPR delete is one command.
  • Rollback safe — AWS S3 path stays in place; flip STORAGE_BACKEND=s3 to instantly revert.

What you should do

  • Use the new audio_url field — it's a clean R2 presigned URL valid for 1 hour. The original Resemble URL is still in resemble_url as a fallback.
  • Read expires_at — show users when their generated audio will disappear.
  • Tag voice-clone uploads — pass purpose=voice_clone so we keep the source recording forever.
#resemble#storage#r2#voice-clone#tts#uploads
FeatureApril 24, 2026

Introducing the Model Arena

Send one prompt to up to four AI models in parallel and compare their outputs side-by-side.

What's new

The Model Arena lets you run a single prompt against up to four models at once and compare their responses in real time.

Key features

  • Side-by-side streaming — every selected model responds simultaneously
  • Per-pane controls — swap models, tune temperature/top-p, set system prompts independently per pane
  • Sync scroll — lock all panes to scroll proportionally for line-by-line comparison
  • Latency stats — see how fast each model responded, color-coded by provider
  • Stop / regenerate per pane — cancel a slow response without affecting the others
  • Deep links — share a configured comparison: /playgrounds/arena?models=anthropic/claude-opus-4.5,openai/gpt-4o&prompt=explain+quicksort

How to use it

  1. Open the Playgrounds menu and pick Arena
  2. Choose 2, 3, or 4 panes from the welcome card
  3. Pick a model in each pane, type your prompt, hit send

Open the Arena →

Arena is desktop-only — the side-by-side layout requires a screen 1024px or wider.

#arena#playground#compare#models
FeatureApril 24, 2026

Image Playground — redesigned with multi-image carousel

Cleaner header, dedicated prompt area, and a Swiper-based preview that handles multi-image generations natively.

What's new

The Image Playground has been redesigned end-to-end for faster generation and easier review of results.

Key updates

  • New header — collapsible History and API Reference panels open in side sheets, freeing up canvas space
  • Multi-image carousel — when a model returns multiple images, browse them with thumbnails, swipe gestures, and keyboard navigation
  • Aspect ratio badges — pick portrait, landscape, or square at a glance instead of typing dimensions
  • Cleaner prompt input — dedicated left-side composer with a clear separation between prompt, negative prompt, and settings
  • Fullscreen preview — click any generated image for a distraction-free zoomed view with download
  • Revised prompt panel — when models rewrite your prompt, see the actual prompt that was used
  • Video models added to the model picker for providers that support video generation

Open the Image Playground →

#image#playground#redesign
FeatureApril 24, 2026

Audio Playground — TTS and STT redesigned

New voice picker, inline settings, sample text chips, and a built-in audio player with download controls.

What's new

Both Text-to-Speech and Speech-to-Text have been rebuilt from the ground up — faster, simpler, more capable.

Text-to-Speech

  • Voice strip — horizontal scrollable picker showing every available voice for the selected provider
  • Selected voice bar — see which voice is active, hear a sample, switch instantly
  • Sample text chips — one-click buttons to load common test phrases
  • Built-in audio player — controls, scrubbing, download, format selection (MP3 / WAV / Opus)
  • Inline settings — model, speed, format all in one bar instead of a hidden panel
  • History panel — every generation kept for the session, replay or download anytime
  • Spoken text panel — see the exact text that produced the audio output

Speech-to-Text

  • New header with API reference and history side panels
  • Inline settings — model and language selection right next to the file uploader
  • Cleaner upload flow — drag-drop or click, with progress indicator and clear error states

Try Text-to-Speech →

#audio#tts#stt#playground#redesign
New modelApril 18, 2026

Claude Opus 4.7 is now available on IndoxHub

Anthropic's newest flagship Opus model — frontier coding, reasoning, and agentic performance with adaptive thinking and a 1M-token context window, priced at the standard Opus tier.

What's new

Claude Opus 4.7 is live on IndoxHub — Anthropic's newest flagship Opus model, available under the model id claude-opus-4-7.

Highlights

  • 1M token context window at standard Opus pricing
  • 128K output tokens with adaptive thinking
  • Improved long-horizon task reliability over Opus 4.6
  • Strong coding, reasoning, and agentic workflows
  • Full tool use, vision, and document inputs supported

Pricing

Per 1M tokens
Input$5.00
Output$25.00
Cache read$0.50
Cache write$3.75

When to use it

Reach for Opus 4.7 on complex multi-step reasoning, long-context document analysis, and agentic pipelines where reliability over many steps matters. For high-volume workloads where latency or cost dominate, Sonnet 4.6 or Haiku 4.5 remain strong choices.

Getting started

Swap your model id to claude-opus-4-7 — no other changes needed. BYOK is supported.

#anthropic#claude#opus#new-model