From 378c9f321da35bbfe6b92c0b887afe697f886f04 Mon Sep 17 00:00:00 2001 From: diegosouzapw Date: Sun, 1 Mar 2026 07:12:51 -0300 Subject: [PATCH] docs: update CHANGELOG v1.7.2 and READMEs with new multi-modal features - CHANGELOG: add new features section (multi-modal providers, media playground, unit tests, WFGY docs) and expand bug fixes - README/README.pt-BR: add Video/Music to tagline, expand Pain Point #13 with all new modalities, update Multi-Modal APIs table with Video/Music Generation --- CHANGELOG.md | 13 +++++++++++-- README.md | 28 ++++++++++++++++------------ README.pt-BR.md | 28 ++++++++++++++++------------ 3 files changed, 43 insertions(+), 26 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 30eea6e8ef..d5da33d7f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,10 +9,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [1.7.2] — 2026-03-01 +### ✨ New Features + +- **Multi-Modal Provider Support** — Added 6 TTS providers (ElevenLabs, Nvidia NIM, HuggingFace, Coqui, Tortoise, Qwen3), 3 STT providers, 2 image providers (SD WebUI, ComfyUI), and two new modalities: `/v1/videos/generations` (Text-to-Video) and `/v1/music/generations` (Text-to-Music). Shared abstractions via `registryUtils.ts` and `comfyuiClient.ts` ([PR #167](https://github.com/diegosouzapw/OmniRoute/pull/167) by @ken2190) +- **Media Playground Page** — New dashboard page at `/dashboard/media` with tabbed interface (Image/Video/Music), model selector, prompt input, and JSON result viewer +- **Unit Tests for Registry Utils** — 24 tests covering `parseModelFromRegistry`, `getAllModelsFromRegistry`, `buildAuthHeaders`, and integration with video/music registries +- **WFGY 16-Problem RAG Failure Map** — Added troubleshooting reference for RAG/LLM failure taxonomy in `docs/TROUBLESHOOTING.md` ([PR #164](https://github.com/diegosouzapw/OmniRoute/pull/164) by @onestardao) + ### 🐛 Fixed -- **Gemini Imported Models Return 404** — Gemini API returns model IDs with `models/` prefix (e.g. `models/gemini-2.5-pro`), but the execution base URL already ends with `/v1beta/models`. This caused doubles paths like `.../v1beta/models/models/gemini-...` → HTTP 404. Fixed by stripping the `models/` prefix during import in `parseResponse` for both `gemini` and `gemini-cli` providers ([#163](https://github.com/diegosouzapw/OmniRoute/issues/163)) -- **Pino File Transport Fails in Next.js Production** — Console Logs dashboard page returned HTTP 500 because `pino.transport()` (worker-thread-based) fails silently inside Next.js production bundles. The catch block now logs the actual error message for diagnostics, and includes a sync `pino.destination()` + `pino.multistream()` fallback that works in bundled environments ([#165](https://github.com/diegosouzapw/OmniRoute/issues/165)) +- **Gemini Imported Models Return 404** — Strip `models/` prefix from Gemini model IDs during import to prevent doubled paths ([#163](https://github.com/diegosouzapw/OmniRoute/issues/163)) +- **Pino File Transport Fails in Next.js Production** — Log actual error + add sync `pino.destination()` fallback ([#165](https://github.com/diegosouzapw/OmniRoute/issues/165)) +- **Windows Electron CI Build** — Added `shell: bash` to Collect installers step for Windows runners ([PR #168](https://github.com/diegosouzapw/OmniRoute/pull/168) by @benzntech) +- **TypeScript Safety** — Replaced `Record` with `Record` in `registryUtils.ts` --- diff --git a/README.md b/README.md index b4076a6bb7..7cde85ba01 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ _Your universal API proxy — one endpoint, 36+ providers, zero downtime._ -**Chat Completions • Embeddings • Image Generation • Audio • Reranking • 100% TypeScript** +**Chat Completions • Embeddings • Image Generation • Video • Music • Audio • Reranking • 100% TypeScript** --- @@ -369,9 +369,11 @@ AI isn't just chat completion. Devs need to generate images, transcribe audio, c **How OmniRoute solves it:** - **Embeddings** — `/v1/embeddings` with 6 providers and 9+ models -- **Image Generation** — `/v1/images/generations` with 4 providers and 9+ models -- **Audio Transcription** — `/v1/audio/transcriptions` — Whisper-compatible -- **Text-to-Speech** — `/v1/audio/speech` — Multi-provider audio synthesis +- **Image Generation** — `/v1/images/generations` with 10 providers and 20+ models (OpenAI, xAI, Together, Fireworks, Nebius, Hyperbolic, NanoBanana, Antigravity, SD WebUI, ComfyUI) +- **Text-to-Video** — `/v1/videos/generations` — ComfyUI (AnimateDiff, SVD) and SD WebUI +- **Text-to-Music** — `/v1/music/generations` — ComfyUI (Stable Audio Open, MusicGen) +- **Audio Transcription** — `/v1/audio/transcriptions` — Whisper + Nvidia NIM, HuggingFace, Qwen3 +- **Text-to-Speech** — `/v1/audio/speech` — ElevenLabs, Nvidia NIM, HuggingFace, Coqui, Tortoise, Qwen3, + existing providers - **Moderations** — `/v1/moderations` — Content safety checks - **Reranking** — `/v1/rerank` — Document relevance reranking - **Responses API** — Full `/v1/responses` support for Codex @@ -610,14 +612,16 @@ When minimized, OmniRoute lives in your system tray with quick actions: ### 🎵 Multi-Modal APIs -| Feature | What It Does | -| -------------------------- | --------------------------------------------------- | -| 🖼️ **Image Generation** | `/v1/images/generations` — 4 providers, 9+ models | -| 📐 **Embeddings** | `/v1/embeddings` — 6 providers, 9+ models | -| 🎤 **Audio Transcription** | `/v1/audio/transcriptions` — Whisper-compatible | -| 🔊 **Text-to-Speech** | `/v1/audio/speech` — Multi-provider audio synthesis | -| 🛡️ **Moderations** | `/v1/moderations` — Content safety checks | -| 🔀 **Reranking** | `/v1/rerank` — Document relevance reranking | +| Feature | What It Does | +| -------------------------- | -------------------------------------------------------------------------------- | +| 🖼️ **Image Generation** | `/v1/images/generations` — 10 providers, 20+ models (cloud + local) | +| 📐 **Embeddings** | `/v1/embeddings` — 6 providers, 9+ models | +| 🎤 **Audio Transcription** | `/v1/audio/transcriptions` — Whisper + Nvidia NIM, HuggingFace, Qwen3 | +| 🔊 **Text-to-Speech** | `/v1/audio/speech` — ElevenLabs, Nvidia NIM, HuggingFace, Coqui, Tortoise, Qwen3 | +| 🎬 **Video Generation** | `/v1/videos/generations` — ComfyUI (AnimateDiff, SVD), SD WebUI | +| 🎵 **Music Generation** | `/v1/music/generations` — ComfyUI (Stable Audio Open, MusicGen) | +| 🛡️ **Moderations** | `/v1/moderations` — Content safety checks | +| 🔀 **Reranking** | `/v1/rerank` — Document relevance reranking | ### 🛡️ Resilience & Security diff --git a/README.pt-BR.md b/README.pt-BR.md index 62c21b6935..f9bb92f581 100644 --- a/README.pt-BR.md +++ b/README.pt-BR.md @@ -7,7 +7,7 @@ _Seu proxy de API universal — um endpoint, 36+ provedores, zero tempo de inatividade._ -**Chat Completions • Embeddings • Geração de Imagem • Áudio • Reranking • 100% TypeScript** +**Chat Completions • Embeddings • Geração de Imagem • Vídeo • Música • Áudio • Reranking • 100% TypeScript** --- @@ -357,9 +357,11 @@ AI isn't just chat completion. Devs need to generate images, transcribe audio, c **How OmniRoute solves it:** - **Embeddings** — `/v1/embeddings` with 6 providers and 9+ models -- **Image Generation** — `/v1/images/generations` with 4 providers and 9+ models -- **Audio Transcription** — `/v1/audio/transcriptions` — Whisper-compatible -- **Text-to-Speech** — `/v1/audio/speech` — Multi-provider audio synthesis +- **Image Generation** — `/v1/images/generations` with 10 providers and 20+ models (OpenAI, xAI, Together, Fireworks, Nebius, Hyperbolic, NanoBanana, Antigravity, SD WebUI, ComfyUI) +- **Text-to-Video** — `/v1/videos/generations` — ComfyUI (AnimateDiff, SVD) and SD WebUI +- **Text-to-Music** — `/v1/music/generations` — ComfyUI (Stable Audio Open, MusicGen) +- **Audio Transcription** — `/v1/audio/transcriptions` — Whisper + Nvidia NIM, HuggingFace, Qwen3 +- **Text-to-Speech** — `/v1/audio/speech` — ElevenLabs, Nvidia NIM, HuggingFace, Coqui, Tortoise, Qwen3 - **Moderations** — `/v1/moderations` — Content safety checks - **Reranking** — `/v1/rerank` — Document relevance reranking - **Responses API** — Full `/v1/responses` support for Codex @@ -588,14 +590,16 @@ Quando minimizado, o OmniRoute fica na bandeja do sistema com ações rápidas: ### 🎵 APIs Multi-Modal -| Funcionalidade | O que Faz | -| --------------------------- | ---------------------------------------------------- | -| 🖼️ **Geração de Imagem** | `/v1/images/generations` — 4 provedores, 9+ modelos | -| 📐 **Embeddings** | `/v1/embeddings` — 6 provedores, 9+ modelos | -| 🎤 **Transcrição de Áudio** | `/v1/audio/transcriptions` — Compatível com Whisper | -| 🔊 **Texto para Fala** | `/v1/audio/speech` — Síntese de áudio multi-provedor | -| 🛡️ **Moderações** | `/v1/moderations` — Verificações de segurança | -| 🔀 **Reranking** | `/v1/rerank` — Reranking de relevância de documentos | +| Funcionalidade | O que Faz | +| --------------------------- | -------------------------------------------------------------------------------- | +| 🖼️ **Geração de Imagem** | `/v1/images/generations` — 10 provedores, 20+ modelos (cloud + local) | +| 📐 **Embeddings** | `/v1/embeddings` — 6 provedores, 9+ modelos | +| 🎤 **Transcrição de Áudio** | `/v1/audio/transcriptions` — Whisper + Nvidia NIM, HuggingFace, Qwen3 | +| 🔊 **Texto para Fala** | `/v1/audio/speech` — ElevenLabs, Nvidia NIM, HuggingFace, Coqui, Tortoise, Qwen3 | +| 🎬 **Geração de Vídeo** | `/v1/videos/generations` — ComfyUI (AnimateDiff, SVD), SD WebUI | +| 🎵 **Geração de Música** | `/v1/music/generations` — ComfyUI (Stable Audio Open, MusicGen) | +| 🛡️ **Moderações** | `/v1/moderations` — Verificações de segurança | +| 🔀 **Reranking** | `/v1/rerank` — Reranking de relevância de documentos | ### 🛡️ Resiliência e Segurança