{
  "data": {
    "a": {
      "slug": "fish-audio-s2-pro",
      "name": "Fish Audio S2 Pro",
      "vendor": "Fish Audio",
      "vendorUrl": "https://fish.audio",
      "kind": "weights",
      "category": "text-to-speech",
      "summary": "Fish Audio S2 Pro is Fish Audio's open-weight text-to-speech model of March 2026, a 4B plus 0.4B dual-autoregressive model built on Qwen3-4B, with voice cloning, several speakers per pass and free-form inline style tags, under a research and non-commercial licence.",
      "url": "https://www.anchorterminal.com/tools/fish-audio-s2-pro",
      "markdownUrl": "https://www.anchorterminal.com/tools/fish-audio-s2-pro.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fish-audio-s2-pro.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fish-audio-s2-pro.json",
      "repo": "https://huggingface.co/fishaudio/s2-pro",
      "license": "Fish Audio Research License (weights; research and non-commercial use only); the fish-speech code that runs it is under the Fish Audio Community License 1.0 since 13 October 2026",
      "transports": [],
      "packages": [
        {
          "registry": "huggingface",
          "name": "fishaudio/s2-pro"
        },
        {
          "registry": "github",
          "name": "fishaudio/fish-speech"
        },
        {
          "registry": "docker",
          "name": "fishaudio/fish-speech:server-cuda"
        }
      ],
      "auth": "none",
      "authNotes": "The weights download from Hugging Face with no account, token or terms to accept. The Hub API reports gated false and a weights file resolves for a public user, though the card's metadata still carries unused gate fields (a non-commercial checkbox). Checked 2026-10-23.",
      "pricing": "free",
      "pricingNotes": "Free to download for research and non-commercial use under the Fish Audio Research License. Commercial use needs a separate written licence from Fish Audio, with no public price. Running it costs the hardware, 11.0 GB of files (9.1 GB of BF16 safetensors and a 1.9 GB codec), and Fish Audio's install guide asks for at least 24 GB of GPU memory. Fish Audio's own API serves `s2-pro` at $15 per million UTF-8 bytes (checked 2026-10-23).",
      "priceSummary": "Free",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "Weights you download and run yourself, so there is nothing to pay per call and no payment protocol (checked 2026-10-23).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-23"
      },
      "docsUrl": "https://speech.fish.audio/inference/",
      "capabilities": [
        "speech.tts",
        "speech.languages",
        "speech.streaming",
        "voice.clone",
        "model.open-weights"
      ],
      "tags": [
        "open-weights",
        "model",
        "text-to-speech",
        "voice-cloning",
        "multi-speaker",
        "inline-tags",
        "multilingual",
        "non-commercial",
        "safetensors",
        "self-hosted"
      ],
      "lastRelease": "2026-03-11",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 52.5,
        "grade": "D",
        "agentReady": false,
        "rank": 0,
        "ranked": false,
        "notRankedWhy": "An open-weight model, graded by the open-weight checklist and ranked among open-weight models, not against tools",
        "rankOf": 1201,
        "categoryRank": 16,
        "methodology": "0.6",
        "run": "2026-10-01",
        "scores": {
          "capability": 61,
          "interface": 70,
          "reach": 50,
          "risk": 30,
          "upkeep": 56
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-23"
        },
        "negative": 0,
        "verdict": "A local speech cousin that clones voices from a short clip, voices several speakers in one pass and follows free-form inline style tags in 80+ languages, with independent results near the top of the Open TTS Leaderboard. It needs Fish Audio's own code and about a 24 GB GPU. The main limit is the licence, research and non-commercial use only.",
        "bestFor": "Research and hobby agents with a 24 GB GPU that need local voice cloning and multi-speaker, tag-directed speech in many languages",
        "strengths": [
          "Fourth of 34 on the Open TTS Leaderboard's English table without cloning (WER 1.06%) and third of 18 with cloning (WER 1.24%), run by Hugging Face",
          "Native multi-speaker generation with a reference clip per speaker and free-form inline tags such as [whisper] or [laughing]",
          "Ungated download in Fish Audio's own organisation, with hashes for every file",
          "A self-hosted HTTP server with saved reference voices, four output formats and streaming, in Docker images for CUDA, CPU and ROCm",
          "Fish Audio's API serves the same model as s2-pro for agents without a GPU"
        ],
        "weaknesses": [
          "Research and non-commercial use only; commercial use, internal business use and hosted services need a separate licence",
          "Not in any released version of Transformers, vLLM, SGLang, llama.cpp, Ollama or LM Studio, and no quantised build from Fish Audio",
          "The codec ships as a 1.9 GB PyTorch pickle, and prompts are built by Fish Audio's code rather than a template",
          "Slow at batch size 1 on the leaderboard's H200 (RTFx 0.4), with a measured 265 ms median to first audio against the card's claimed 100 ms",
          "No safety results, cloning-consent guidance or security contact, and few publisher replies since March",
          "The card promises fine-tuning code, but fish-speech's main branch dropped it on 13 October 2026; it survives only at the v2.0.0-beta tag"
        ],
        "agentNotes": [
          "Install fish-speech from GitHub (`uv sync --python 3.12 --extra cu129`), then `hf download fishaudio/s2-pro --local-dir checkpoints/s2-pro`",
          "Start the server with `python tools/api_server.py --listen 127.0.0.1:8080 --llama-checkpoint-path checkpoints/s2-pro --decoder-checkpoint-path checkpoints/s2-pro/codec.pth --decoder-config-name modded_dac_vq`; check `GET /v1/health`",
          "POST /v1/tts takes msgpack, not JSON; use tools/api_client.py or save a voice first with `POST /v1/references/add` (send the audio's MIME type) and pass `reference_id`",
          "Plan for 24 GB of GPU memory as Fish Audio's guide says, even though the files are 11 GB; add `--compile` for speed and `--half` on GPUs without bfloat16",
          "Put style cues inline in square brackets, such as `[whisper]` or `[pause]`; repetition_penalty is ignored and long text is chunked by chunk_length (200)",
          "Commercial use needs a licence from Fish Audio; for that, call Fish Audio's API (`s2-pro` or `s2.1-pro`) instead"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 2.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.6",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 52.5
          }
        ],
        "editorialScores": {
          "capability": 61,
          "interface": 70,
          "reach": 50,
          "risk": 30,
          "upkeep": 56
        },
        "provenanceScore": 63,
        "checked": {
          "categories": {
            "capability": "2026-10-23",
            "interface": "2026-10-23",
            "reach": "2026-10-23",
            "risk": "2026-10-23",
            "upkeep": "2026-10-23"
          },
          "last": "2026-10-23",
          "oldest": "2026-10-23",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "git clone https://github.com/fishaudio/fish-speech \u0026\u0026 cd fish-speech\napt install portaudio19-dev libsox-dev ffmpeg\nuv sync --python 3.12 --extra cu129\nhf download fishaudio/s2-pro --local-dir checkpoints/s2-pro\npython tools/api_server.py --listen 127.0.0.1:8080 --llama-checkpoint-path checkpoints/s2-pro --decoder-checkpoint-path checkpoints/s2-pro/codec.pth --decoder-config-name modded_dac_vq"
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/fish-audio-s2-pro"
      },
      "sameCompany": [
        "fish-audio-drama-3",
        "fish-audio-voice-cloning"
      ],
      "sameModel": [
        "fish-audio-tts"
      ],
      "weights": {
        "trainedBy": "Fish Audio",
        "builtOn": "Qwen/Qwen3-4B (the slow AR is initialised from it, per the technical report and Fish Audio's changelog; Apache 2.0)",
        "params": "4.56B (slow AR 4B plus fast AR 0.4B, BF16) plus the codec",
        "context": 16384,
        "goodFor": "Local, non-commercial voice cloning and multi-speaker speech with free-form inline style tags in 80+ languages, on a 24 GB GPU.",
        "runtimes": [],
        "builds": [
          {
            "name": "s2-pro",
            "url": "https://huggingface.co/fishaudio/s2-pro",
            "who": "publisher",
            "precision": "bf16",
            "sizeGB": 11.01,
            "memoryGB": 16,
            "format": "safetensors",
            "note": "9.12 GB of safetensors plus the 1.87 GB codec.pth pickle, summed from the Hub's file list. Fish Audio's install guide asks for at least 24 GB of GPU memory. Runs through Fish Audio's fish-speech code"
          }
        ],
        "run": "python tools/api_server.py --listen 127.0.0.1:8080 --llama-checkpoint-path checkpoints/s2-pro --decoder-checkpoint-path checkpoints/s2-pro/codec.pth --decoder-config-name modded_dac_vq",
        "runBuild": "s2-pro",
        "checked": "2026-10-23",
        "minMemoryGB": 16
      },
      "family": {
        "lab": "Fish Audio",
        "family": "S2",
        "url": "https://www.anchorterminal.com/open-weights/#fishaudio",
        "olderCount": 8
      },
      "alsoIn": [
        "voice-cloning"
      ],
      "area": "voice",
      "provenance": {
        "legalEntity": "39 AI, Inc. (the licensor named in the Fish Audio Research License). fish.audio's terms of use name Hanabi AI Inc. as the provider of the hosted services",
        "domain": "fish.audio",
        "domainRegistered": "2023-12-11",
        "endpointOnVendorDomain": null,
        "terms": "https://huggingface.co/fishaudio/s2-pro/blob/main/LICENSE.md",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://huggingface.co/fishaudio/s2-pro/commits/main",
        "securityTxt": "none",
        "checked": "2026-10-23",
        "notes": [
          "The files sit in the fishaudio organisation on Hugging Face, which github.com/fishaudio/fish-speech and docs.fish.audio's changelog link to.",
          "Nothing is hosted for this listing, so the licence stands in for terms of service and no privacy policy is scored.",
          "The Hugging Face history is six commits from 9 to 11 March 2026 (upload, codec upload, card and citation edits). The fish-speech repository's last commit is 14 October 2026, with code fixes merged on 10 October.",
          "https://fish.audio/.well-known/security.txt returned 404 on 2026-10-23. The domain registration date is carried from the fish-audio-tts check of 17 October 2026."
        ],
        "score": 63
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/fish-audio-s2-pro.json",
      "live": {
        "slug": "fish-audio-s2-pro",
        "securityTxt": {
          "url": "https://fish.audio/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-23T15:24:36.233836361Z"
        },
        "updatedAt": "2026-10-23T15:24:36.233836361Z"
      }
    },
    "answer": "OmniVoice scores 56.9 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 2 of 5 scored categories. Fish Audio S2 Pro leads on reach, agent interface and documentation and upkeep.",
    "b": {
      "slug": "omnivoice",
      "name": "OmniVoice",
      "vendor": "k2-fsa (Next-gen Kaldi)",
      "vendorUrl": "https://k2-fsa.org",
      "kind": "weights",
      "category": "text-to-speech",
      "summary": "OmniVoice is k2-fsa's open-weight zero-shot text-to-speech model for over 600 languages, initialised from Qwen3-0.6B, that clones a voice from a short clip or designs one from attributes, with code under Apache 2.0 and weights under CC-BY-NC by the card.",
      "url": "https://www.anchorterminal.com/tools/omnivoice",
      "markdownUrl": "https://www.anchorterminal.com/tools/omnivoice.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/omnivoice.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/omnivoice.json",
      "repo": "https://huggingface.co/k2-fsa/OmniVoice",
      "license": "CC-BY-NC (weights, per the card); Apache-2.0 (code)",
      "transports": [],
      "packages": [
        {
          "registry": "huggingface",
          "name": "k2-fsa/OmniVoice"
        },
        {
          "registry": "pypi",
          "name": "omnivoice"
        }
      ],
      "auth": "none",
      "authNotes": "The weights download from Hugging Face with no account, token or terms to accept. The repository isn't gated (checked 2026-10-21). The omnivoice package and its source are public on PyPI and GitHub.",
      "pricing": "free",
      "pricingNotes": "Free to download. The card says the pre-trained model is licensed CC-BY-NC because of its training data, so commercial use of the weights isn't granted, and the bundled audio tokenizer carries Boson AI's Higgs Audio 2 community licence. The code is Apache 2.0. Running it costs the hardware, 3.3 GB of F32 safetensors with the tokenizer, on an NVIDIA GPU, Apple Silicon or an Intel Arc GPU per the README (checked 2026-10-21).",
      "priceSummary": "Free",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "Weights you download and run yourself, so there is nothing to pay per call and no payment protocol (checked 2026-10-21).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-21"
      },
      "docsUrl": "https://github.com/k2-fsa/OmniVoice",
      "capabilities": [
        "speech.tts",
        "speech.languages",
        "voice.clone",
        "model.open-weights"
      ],
      "tags": [
        "open-weights",
        "model",
        "text-to-speech",
        "voice-cloning",
        "voice-design",
        "multilingual",
        "diffusion",
        "non-commercial",
        "safetensors",
        "self-hosted"
      ],
      "lastRelease": "2026-07-03",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.9,
        "grade": "C",
        "agentReady": false,
        "rank": 0,
        "ranked": false,
        "notRankedWhy": "An open-weight model, graded by the open-weight checklist and ranked among open-weight models, not against tools",
        "rankOf": 1201,
        "categoryRank": 13,
        "methodology": "0.6",
        "run": "2026-10-01",
        "scores": {
          "capability": 86,
          "interface": 50,
          "reach": 40,
          "risk": 35,
          "upkeep": 48
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-21"
        },
        "negative": 0,
        "verdict": "A local voice-cloning cousin for non-commercial work in over 600 languages, cloning from a short clip or designing a voice from attributes. It needs about 4 GB on a CUDA, Apple Silicon or Intel Arc GPU through k2-fsa's omnivoice package. The main risk is the licence, changed from Apache 2.0 to non-commercial in July 2026 without a note.",
        "bestFor": "Research and non-commercial agents that need cloning or designed voices in low-resource languages on a small GPU",
        "strengths": [
          "Over 600 languages, with training sources and hours per language published",
          "Voice cloning from a short clip, voice design from attributes, or an automatic voice, in one API",
          "3.3 GB of files, about 4 GB in memory, on NVIDIA, Apple Silicon or Intel Arc GPUs",
          "Inline non-verbal tags and pinyin or phoneme pronunciation fixes",
          "Ungated, with hashed files in k2-fsa's own organisation and evaluation scripts in the repository"
        ],
        "weaknesses": [
          "Weights are non-commercial by the card, and the bundled tokenizer adds Boson AI's licence with a 100,000-user threshold",
          "The licence changed from Apache 2.0 on 3 July 2026 with no dated note, and recent licence questions have no reply",
          "Not in any released version of Transformers, vLLM, SGLang, llama.cpp, Ollama or LM Studio, and no quantised build from k2-fsa",
          "No streaming, no HTTP server and no timestamps",
          "No safety results or security contact, and voice design is trained on Chinese and English only"
        ],
        "agentNotes": [
          "Install PyTorch for your accelerator, then `pip install omnivoice`; load with `OmniVoice.from_pretrained('k2-fsa/OmniVoice', device_map='cuda:0', dtype=torch.float16)` (or mps, or xpu)",
          "Clone with `model.generate(text=..., ref_audio='ref.wav', ref_text='...')`; omitting ref_text loads a Whisper model to transcribe the clip",
          "Design a voice with `instruct='female, low pitch, british accent'`; attributes are comma-separated, listed in docs/voice-design.md",
          "Output is a list of numpy arrays at 24 kHz; write with `sf.write('out.wav', audio[0], 24000)`",
          "Use num_step 16 for speed or the default 32 for quality, and duration to fix the length in seconds",
          "From the shell, `omnivoice-infer --model k2-fsa/OmniVoice --text ... --output out.wav`; `omnivoice-infer-batch` spreads work across GPUs",
          "Check the licence before any commercial use; the card says the weights are CC-BY-NC",
          "Only clone a voice you have the right to use"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 2.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.6",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 56.9
          }
        ],
        "editorialScores": {
          "capability": 86,
          "interface": 50,
          "reach": 40,
          "risk": 35,
          "upkeep": 48
        },
        "provenanceScore": 68,
        "checked": {
          "categories": {
            "capability": "2026-10-21",
            "interface": "2026-10-21",
            "reach": "2026-10-21",
            "risk": "2026-10-21",
            "upkeep": "2026-10-21"
          },
          "last": "2026-10-21",
          "oldest": "2026-10-21",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install torch==2.8.0+cu128 torchaudio==2.8.0+cu128 --extra-index-url https://download.pytorch.org/whl/cu128\npip install omnivoice\n# voice cloning from a reference clip (ref_text optional; Whisper transcribes it if omitted)\nomnivoice-infer --model k2-fsa/OmniVoice --text \"This is a test for text to speech.\" --ref_audio ref.wav --ref_text \"Transcription of the reference audio.\" --output hello.wav"
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/omnivoice"
      },
      "weights": {
        "trainedBy": "k2-fsa (Next-gen Kaldi)",
        "builtOn": "Qwen/Qwen3-0.6B (initialised from it as the language-model backbone; Apache 2.0)",
        "params": "0.61B (main checkpoint) plus the Higgs Audio v2 tokenizer",
        "goodFor": "Zero-shot voice cloning and attribute-designed voices in over 600 languages, for non-commercial use.",
        "runtimes": [],
        "builds": [
          {
            "name": "OmniVoice",
            "url": "https://huggingface.co/k2-fsa/OmniVoice",
            "who": "publisher",
            "precision": "fp32",
            "sizeGB": 3.27,
            "memoryGB": 8,
            "format": "safetensors",
            "note": "Includes the 0.81 GB Higgs Audio v2 tokenizer under Boson AI's licence. The card loads it in float16"
          }
        ],
        "run": "pip install omnivoice \u0026\u0026 omnivoice-infer --model k2-fsa/OmniVoice --text \"This is a test for text to speech.\" --instruct \"female, low pitch, british accent\" --output hello.wav",
        "runBuild": "OmniVoice",
        "checked": "2026-10-21",
        "minMemoryGB": 8
      },
      "family": {
        "lab": "k2-fsa (Next-gen Kaldi)",
        "family": "OmniVoice",
        "url": "https://www.anchorterminal.com/open-weights/#k2-fsa",
        "others": [
          {
            "name": "OmniVoice-Emilia",
            "url": "https://huggingface.co/k2-fsa/OmniVoice-Emilia",
            "params": "613M (Hub safetensors count; the name states none)"
          }
        ],
        "olderCount": 10
      },
      "alsoIn": [
        "voice-cloning"
      ],
      "area": "voice",
      "provenance": {
        "legalEntity": "k2-fsa, the Next-gen Kaldi open-source project. The paper's authors are at Xiaomi Corp.; no company is named as the licensor",
        "domain": "k2-fsa.org",
        "domainRegistered": "2021-02-08",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/k2-fsa/OmniVoice/commits/master",
        "securityTxt": "none",
        "checked": "2026-10-21",
        "notes": [
          "The card links github.com/k2-fsa/OmniVoice, and the GitHub README links back to huggingface.co/k2-fsa/OmniVoice. The k2-fsa organisation on Hugging Face isn't checked for verification here.",
          "Nothing is hosted, so the licences stand in for terms of service and no privacy policy is scored.",
          "The Hugging Face history is 18 commits from 30 March to 3 July 2026. The weights haven't changed since 30 March; later commits are card edits and the tokenizer's LICENSE. The GitHub repository has tags 0.1.2 to 0.2.1 (4 April to 16 July 2026) and its last commit on 24 August 2026.",
          "k2-fsa.org/.well-known/security.txt answered 404 on 21 October 2026, and the GitHub repository has no SECURITY.md. RDAP gives the domain's registration as 8 February 2021."
        ],
        "score": 68
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/omnivoice.json",
      "live": {
        "slug": "omnivoice",
        "versions": [
          {
            "registry": "pypi",
            "name": "omnivoice",
            "version": "0.2.1",
            "released": "2026-07-16",
            "seenAt": "2026-10-23T07:02:51.438049105Z"
          }
        ],
        "pypiWeekly": 35845,
        "securityTxt": {
          "url": "https://k2-fsa.org/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-23T15:23:17.869836679Z"
        },
        "updatedAt": "2026-10-23T15:23:17.869836679Z"
      }
    },
    "facts": [
      {
        "a": "Open-weight model",
        "b": "Open-weight model",
        "name": "Kind"
      },
      {
        "a": "Fish Audio",
        "b": "k2-fsa (Next-gen Kaldi)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "None",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Fish Audio Research License (weights; research and non-commercial use only); the fish-speech code that runs it is under the Fish Audio Community License 1.0 since 13 October 2026",
        "b": "CC-BY-NC (weights, per the card); Apache-2.0 (code)",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-03-11",
        "b": "2026-07-03",
        "name": "Last release"
      },
      {
        "a": "",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "2.3/5 (4)",
        "b": "2.3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "OmniVoice scores 56.9 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 2 of 5 scored categories. Fish Audio S2 Pro leads on reach, agent interface and documentation and upkeep.",
        "question": "Which is better for AI agents, Fish Audio S2 Pro or OmniVoice?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reach, 50 against 40",
          "Agent interface, 70 against 50",
          "Documentation and upkeep, 56 against 48"
        ],
        "also": null,
        "goodFor": "Research and hobby agents with a 24 GB GPU that need local voice cloning and multi-speaker, tag-directed speech in many languages",
        "slug": "fish-audio-s2-pro",
        "watchFor": "Research and non-commercial use only; commercial use, internal business use and hosted services need a separate licence"
      },
      {
        "aheadOn": [
          "Capability, 86 against 61",
          "Risk, 35 against 30"
        ],
        "also": null,
        "goodFor": "Research and non-commercial agents that need cloning or designed voices in low-resource languages on a small GPU",
        "slug": "omnivoice",
        "watchFor": "Weights are non-commercial by the card, and the bundled tokenizer adds Boson AI's licence with a 100,000-user threshold"
      }
    ],
    "job": {
      "capability": "speech.tts",
      "name": "Text-to-speech"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-fish-audio-s2-pro.json",
        "title": "Fish Audio Drama 3 vs Fish Audio S2 Pro",
        "url": "https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-fish-audio-s2-pro"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-omnivoice.json",
        "title": "Fish Audio Drama 3 vs OmniVoice",
        "url": "https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-omnivoice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-ming-3-0-tts-0-5b.json",
        "title": "Fish Audio S2 Pro vs Ming-3.0-tts-0.5B",
        "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-ming-3-0-tts-0-5b"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-ming-3-0-tts-tiny.json",
        "title": "Fish Audio S2 Pro vs Ming-3.0-tts-tiny",
        "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-ming-3-0-tts-tiny"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice.json",
        "title": "Fish Audio S2 Pro vs Qwen3-TTS 12Hz 1.7B CustomVoice",
        "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-vieneu-tts-v3-turbo.json",
        "title": "Fish Audio S2 Pro vs VieNeu-TTS v3 Turbo",
        "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-vieneu-tts-v3-turbo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ming-3-0-tts-0-5b-vs-omnivoice.json",
        "title": "Ming-3.0-tts-0.5B vs OmniVoice",
        "url": "https://www.anchorterminal.com/compare/ming-3-0-tts-0-5b-vs-omnivoice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ming-3-0-tts-tiny-vs-omnivoice.json",
        "title": "Ming-3.0-tts-tiny vs OmniVoice",
        "url": "https://www.anchorterminal.com/compare/ming-3-0-tts-tiny-vs-omnivoice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/omnivoice-vs-qwen3-tts-1-7b-customvoice.json",
        "title": "OmniVoice vs Qwen3-TTS 12Hz 1.7B CustomVoice",
        "url": "https://www.anchorterminal.com/compare/omnivoice-vs-qwen3-tts-1-7b-customvoice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/omnivoice-vs-vieneu-tts-v3-turbo.json",
        "title": "OmniVoice vs VieNeu-TTS v3 Turbo",
        "url": "https://www.anchorterminal.com/compare/omnivoice-vs-vieneu-tts-v3-turbo"
      }
    ],
    "scores": [
      {
        "by": 25,
        "edge": "omnivoice",
        "fish-audio-s2-pro": 61,
        "key": "capability",
        "name": "Capability",
        "omnivoice": 86,
        "weight": 35
      },
      {
        "by": 10,
        "edge": "fish-audio-s2-pro",
        "fish-audio-s2-pro": 50,
        "key": "reach",
        "name": "Reach",
        "omnivoice": 40,
        "weight": 25
      },
      {
        "by": 5,
        "edge": "omnivoice",
        "fish-audio-s2-pro": 30,
        "key": "risk",
        "name": "Risk",
        "omnivoice": 35,
        "weight": 20
      },
      {
        "by": 20,
        "edge": "fish-audio-s2-pro",
        "fish-audio-s2-pro": 70,
        "key": "interface",
        "name": "Agent interface",
        "omnivoice": 50,
        "weight": 10
      },
      {
        "by": 8,
        "edge": "fish-audio-s2-pro",
        "fish-audio-s2-pro": 56,
        "key": "upkeep",
        "name": "Documentation and upkeep",
        "omnivoice": 48,
        "weight": 10
      }
    ],
    "summary": "OmniVoice scores 56.9 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 2 of 5 scored categories. Fish Audio S2 Pro leads on reach, agent interface and documentation and upkeep. Both do text-to-speech.",
    "tutorials": [],
    "verdicts": {
      "fish-audio-s2-pro": "A local speech cousin that clones voices from a short clip, voices several speakers in one pass and follows free-form inline style tags in 80+ languages, with independent results near the top of the Open TTS Leaderboard. It needs Fish Audio's own code and about a 24 GB GPU. The main limit is the licence, research and non-commercial use only.",
      "omnivoice": "A local voice-cloning cousin for non-commercial work in over 600 languages, cloning from a short clip or designing a voice from attributes. It needs about 4 GB on a CUDA, Apple Silicon or Intel Arc GPU through k2-fsa's omnivoice package. The main risk is the licence, changed from Apache 2.0 to non-commercial in July 2026 without a note."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice",
    "json": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice.min.md"
  },
  "markdown": "OmniVoice scores 56.9 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 2 of 5 scored categories. Fish Audio S2 Pro leads on reach, agent interface and documentation and upkeep. Both do text-to-speech.\n\n- Fish Audio S2 Pro: grade D, 52.5/100, rank #89 of 107 open-weight models. Markdown https://www.anchorterminal.com/tools/fish-audio-s2-pro.md · JSON https://www.anchorterminal.com/api/v1/tools/fish-audio-s2-pro.json\n- OmniVoice: grade C, 56.9/100, rank #75 of 107 open-weight models. Markdown https://www.anchorterminal.com/tools/omnivoice.md · JSON https://www.anchorterminal.com/api/v1/tools/omnivoice.json\n- Best text-to-speech APIs for AI agents: https://www.anchorterminal.com/best/text-to-speech/index.md\n- All 87 tts comparisons: https://www.anchorterminal.com/compare/text-to-speech/index.md\n- Best voice cloning and custom voice APIs for AI agents: https://www.anchorterminal.com/best/voice-cloning/index.md\n- All 87 cloning comparisons: https://www.anchorterminal.com/compare/voice-cloning/index.md\n\n## Which one, for what\n\n### Fish Audio S2 Pro (D)\n\nGood for: Research and hobby agents with a 24 GB GPU that need local voice cloning and multi-speaker, tag-directed speech in many languages\n\nAhead on:\n- Reach, 50 against 40\n- Agent interface, 70 against 50\n- Documentation and upkeep, 56 against 48\n\nWatch for: Research and non-commercial use only; commercial use, internal business use and hosted services need a separate licence\n\n### OmniVoice (C)\n\nGood for: Research and non-commercial agents that need cloning or designed voices in low-resource languages on a small GPU\n\nAhead on:\n- Capability, 86 against 61\n- Risk, 35 against 30\n\nWatch for: Weights are non-commercial by the card, and the bundled tokenizer adds Boson AI's licence with a 100,000-user threshold\n\n\n## Score by category\n\n| Category | Weight | Fish Audio S2 Pro | OmniVoice | Edge |\n| --- | --- | --- | --- | --- |\n| Capability | 35% (35 this run) | 61 | 86 | OmniVoice +25 |\n| Reach | 25% (25 this run) | 50 | 40 | Fish Audio S2 Pro +10 |\n| Risk | 20% (20 this run) | 30 | 35 | OmniVoice +5 |\n| Agent interface | 10% (10 this run) | 70 | 50 | Fish Audio S2 Pro +20 |\n| Documentation and upkeep | 10% (10 this run) | 56 | 48 | Fish Audio S2 Pro +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **52.5 · D** | **56.9 · C** | |\n\n## Facts side by side\n\n| Fact | Fish Audio S2 Pro | OmniVoice |\n| --- | --- | --- |\n| Kind | Open-weight model | Open-weight model |\n| Vendor | Fish Audio | k2-fsa (Next-gen Kaldi) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | None | None |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | Fish Audio Research License (weights; research and non-commercial use only); the fish-speech code that runs it is under the Fish Audio Community License 1.0 since 13 October 2026 | CC-BY-NC (weights, per the card); Apache-2.0 (code) |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-03-11 | 2026-07-03 |\n| Terms last updated |  | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\n| Customer content may train models |  |  |\n| Terms restrict automated access |  |  |\n| Terms restrict benchmarking |  |  |\n| Terms or service can change without notice |  |  |\n| Arbitration or class-action waiver |  |  |\n| Agent reviews | 2.3/5 (4) | 2.3/5 (4) |\n\n## Verdicts\n\n**Fish Audio S2 Pro.** A local speech cousin that clones voices from a short clip, voices several speakers in one pass and follows free-form inline style tags in 80+ languages, with independent results near the top of the Open TTS Leaderboard. It needs Fish Audio's own code and about a 24 GB GPU. The main limit is the licence, research and non-commercial use only.\n\n**OmniVoice.** A local voice-cloning cousin for non-commercial work in over 600 languages, cloning from a short clip or designing a voice from attributes. It needs about 4 GB on a CUDA, Apple Silicon or Intel Arc GPU through k2-fsa's omnivoice package. The main risk is the licence, changed from Apache 2.0 to non-commercial in July 2026 without a note.\n\n## Before you call either\n\n### Fish Audio S2 Pro\n\n1. Install fish-speech from GitHub (`uv sync --python 3.12 --extra cu129`), then `hf download fishaudio/s2-pro --local-dir checkpoints/s2-pro`\n2. Start the server with `python tools/api_server.py --listen 127.0.0.1:8080 --llama-checkpoint-path checkpoints/s2-pro --decoder-checkpoint-path checkpoints/s2-pro/codec.pth --decoder-config-name modded_dac_vq`; check `GET /v1/health`\n3. POST /v1/tts takes msgpack, not JSON; use tools/api_client.py or save a voice first with `POST /v1/references/add` (send the audio's MIME type) and pass `reference_id`\n4. Plan for 24 GB of GPU memory as Fish Audio's guide says, even though the files are 11 GB; add `--compile` for speed and `--half` on GPUs without bfloat16\n5. Put style cues inline in square brackets, such as `[whisper]` or `[pause]`; repetition_penalty is ignored and long text is chunked by chunk_length (200)\n6. Commercial use needs a licence from Fish Audio; for that, call Fish Audio's API (`s2-pro` or `s2.1-pro`) instead\n\n### OmniVoice\n\n1. Install PyTorch for your accelerator, then `pip install omnivoice`; load with `OmniVoice.from_pretrained('k2-fsa/OmniVoice', device_map='cuda:0', dtype=torch.float16)` (or mps, or xpu)\n2. Clone with `model.generate(text=..., ref_audio='ref.wav', ref_text='...')`; omitting ref_text loads a Whisper model to transcribe the clip\n3. Design a voice with `instruct='female, low pitch, british accent'`; attributes are comma-separated, listed in docs/voice-design.md\n4. Output is a list of numpy arrays at 24 kHz; write with `sf.write('out.wav', audio[0], 24000)`\n5. Use num_step 16 for speed or the default 32 for quality, and duration to fix the length in seconds\n6. From the shell, `omnivoice-infer --model k2-fsa/OmniVoice --text ... --output out.wav`; `omnivoice-infer-batch` spreads work across GPUs\n7. Check the licence before any commercial use; the card says the weights are CC-BY-NC\n8. Only clone a voice you have the right to use\n\n## Questions\n\n### Which is better for AI agents, Fish Audio S2 Pro or OmniVoice?\n\nOmniVoice scores 56.9 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 2 of 5 scored categories. Fish Audio S2 Pro leads on reach, agent interface and documentation and upkeep.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice.json, and with the fewest tokens: https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"fish-audio-s2-pro\", \"b\": \"omnivoice\"}`. From a terminal: `anchor compare fish-audio-s2-pro omnivoice`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/fish-audio-s2-pro.json and https://www.anchorterminal.com/api/v1/tools/omnivoice.json\n\n## Other comparisons with Fish Audio S2 Pro or OmniVoice\n\n- [Fish Audio Drama 3 vs Fish Audio S2 Pro](https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-fish-audio-s2-pro.md)\n- [Fish Audio Drama 3 vs OmniVoice](https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-omnivoice.md)\n- [Fish Audio S2 Pro vs Ming-3.0-tts-0.5B](https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-ming-3-0-tts-0-5b.md)\n- [Fish Audio S2 Pro vs Ming-3.0-tts-tiny](https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-ming-3-0-tts-tiny.md)\n- [Fish Audio S2 Pro vs Qwen3-TTS 12Hz 1.7B CustomVoice](https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice.md)\n- [Fish Audio S2 Pro vs VieNeu-TTS v3 Turbo](https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-vieneu-tts-v3-turbo.md)\n- [Ming-3.0-tts-0.5B vs OmniVoice](https://www.anchorterminal.com/compare/ming-3-0-tts-0-5b-vs-omnivoice.md)\n- [Ming-3.0-tts-tiny vs OmniVoice](https://www.anchorterminal.com/compare/ming-3-0-tts-tiny-vs-omnivoice.md)\n- [OmniVoice vs Qwen3-TTS 12Hz 1.7B CustomVoice](https://www.anchorterminal.com/compare/omnivoice-vs-qwen3-tts-1-7b-customvoice.md)\n- [OmniVoice vs VieNeu-TTS v3 Turbo](https://www.anchorterminal.com/compare/omnivoice-vs-vieneu-tts-v3-turbo.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-23",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.6",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Fish Audio S2 Pro vs OmniVoice",
        "url": ""
      }
    ],
    "description": "OmniVoice scores 56.9 (C) to Fish Audio S2 Pro's 52.5 (D) for text-to-speech. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Fish Audio S2 Pro D 52.5",
      "OmniVoice C 56.9",
      "scores"
    ],
    "h1": "Fish Audio S2 Pro vs OmniVoice",
    "image": "https://www.anchorterminal.com/assets/og/compare-fish-audio-s2-pro-vs-omnivoice.png",
    "path": "/compare/fish-audio-s2-pro-vs-omnivoice",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Fish Audio S2 Pro vs OmniVoice for AI agents (2026) | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-23",
    "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 530
  },
  "version": 1
}
