{
  "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": "Qwen3-TTS 12Hz 1.7B CustomVoice scores 58 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 3 of 5 scored categories. Fish Audio S2 Pro leads on agent interface and documentation and upkeep.",
    "b": {
      "slug": "qwen3-tts-1-7b-customvoice",
      "name": "Qwen3-TTS 12Hz 1.7B CustomVoice",
      "vendor": "Alibaba (Qwen team)",
      "vendorUrl": "https://qwen.ai",
      "kind": "weights",
      "category": "text-to-speech",
      "summary": "Qwen3-TTS 12Hz 1.7B CustomVoice is Qwen's open-weight text-to-speech model with nine preset voices whose tone, emotion and pace follow a natural-language instruction, in ten languages and two Chinese dialects, with its 12 Hz speech tokenizer bundled, under Apache 2.0.",
      "url": "https://www.anchorterminal.com/tools/qwen3-tts-1-7b-customvoice",
      "markdownUrl": "https://www.anchorterminal.com/tools/qwen3-tts-1-7b-customvoice.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/qwen3-tts-1-7b-customvoice.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/qwen3-tts-1-7b-customvoice.json",
      "repo": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [
        {
          "registry": "huggingface",
          "name": "Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice"
        },
        {
          "registry": "pypi",
          "name": "qwen-tts"
        }
      ],
      "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 qwen-tts package and its source are public on PyPI and GitHub.",
      "pricing": "free",
      "pricingNotes": "Free to download and use, commercial use included, under Apache 2.0. Running it costs the hardware, 4.5 GB of BF16 safetensors including the speech tokenizer, on a CUDA GPU in the card's examples. Qwen points to its DashScope (Model Studio) realtime TTS API for a hosted version, and fal and Replicate serve the CustomVoice voices per character (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/QwenLM/Qwen3-TTS",
      "capabilities": [
        "speech.tts",
        "speech.voices",
        "speech.languages",
        "speech.batch",
        "model.open-weights"
      ],
      "tags": [
        "open-weights",
        "model",
        "text-to-speech",
        "preset-voices",
        "instruction-control",
        "multilingual",
        "chinese-dialects",
        "apache-2.0",
        "safetensors",
        "self-hosted"
      ],
      "lastRelease": "2026-01-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 58,
        "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": 11,
        "methodology": "0.6",
        "run": "2026-10-01",
        "scores": {
          "capability": 71,
          "interface": 55,
          "reach": 60,
          "risk": 45,
          "upkeep": 36
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-21"
        },
        "negative": 0,
        "verdict": "A local speech cousin with a fixed set of good voices in ten languages, emotion and pace set by a plain instruction, under plain Apache 2.0. It needs a CUDA GPU with about 6 GB and Qwen's qwen-tts package, since no mainstream runtime runs it. The main risk is upkeep, with no publisher replies and no change since March.",
        "bestFor": "Agents with a CUDA GPU that need local, instruction-styled speech from fixed voices in major languages",
        "strengths": [
          "Apache 2.0 with nothing added, ungated, in Qwen's own organisation with hashed files",
          "4.5 GB of BF16 files with the speech tokenizer included, about 6 GB in memory",
          "Nine preset voices whose emotion, tone and pace follow a natural-language instruction",
          "Ten languages plus Beijing and Sichuan dialect voices, with batch generation in one call",
          "Served by fal and Replicate for agents without a GPU"
        ],
        "weaknesses": [
          "Not in any released version of Transformers, vLLM, SGLang, llama.cpp, Ollama or LM Studio, only Qwen's package and vLLM-Omni",
          "No quantised build from Qwen, and the package doesn't stream generation despite the card's latency claim",
          "No voice cloning in this edition; that's the Base model",
          "No safety results, misuse guidance or security contact",
          "No publisher reply to any of the 40 most recent Hugging Face discussions, and no change since March 2026"
        ],
        "agentNotes": [
          "Install with `pip install -U qwen-tts` in Python 3.12, then load `Qwen3TTSModel.from_pretrained('Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice', device_map='cuda:0', dtype=torch.bfloat16)`",
          "Call `generate_custom_voice(text=..., language=..., speaker=..., instruct=...)`; it returns `(wavs, sr)`, write `wavs[0]` with soundfile",
          "Speakers are Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, Aiden, Ono_Anna and Sohee; `get_supported_speakers()` is authoritative, and each sounds best in its native language",
          "Pass lists of texts, languages, speakers and instructions to batch several utterances in one call",
          "For a browser UI, `qwen-tts-demo Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice --ip 127.0.0.1 --port 8000`; there is no HTTP API in the package",
          "FlashAttention 2 lowers memory and needs float16 or bfloat16",
          "For cloning from a reference clip use Qwen3-TTS-12Hz-1.7B-Base instead"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 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": 58
          }
        ],
        "editorialScores": {
          "capability": 71,
          "interface": 55,
          "reach": 60,
          "risk": 45,
          "upkeep": 36
        },
        "provenanceScore": 63,
        "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 -U qwen-tts   # Python 3.12, CUDA GPU; flash-attn optional\npython -c \"import torch, soundfile as sf; from qwen_tts import Qwen3TTSModel; m = Qwen3TTSModel.from_pretrained('Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice', device_map='cuda:0', dtype=torch.bfloat16); w, sr = m.generate_custom_voice(text='She said she would be here by noon.', language='English', speaker='Ryan', instruct='Very happy.'); sf.write('out.wav', w[0], sr)\""
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/qwen3-tts-1-7b-customvoice"
      },
      "sameCompany": [
        "qwen3-embedding-0-6b",
        "qwen3-embedding-4b",
        "qwen3-embedding-8b",
        "qwen3-vl-embedding-2b",
        "qwen3-vl-embedding-8b",
        "qwen3-asr-0-6b",
        "qwen3-asr-1-7b",
        "qwen3-30b-a3b-instruct-2507",
        "qwen3-4b-instruct-2507",
        "qwen3-coder-30b-a3b-instruct",
        "qwen3-coder-next",
        "qwen3-omni-30b-a3b-instruct",
        "qwen3-vl-2b-instruct",
        "qwen3-vl-30b-a3b-instruct",
        "qwen3-vl-32b-instruct",
        "qwen3-vl-4b-instruct",
        "qwen3-vl-8b-instruct",
        "qwen3-5-0-8b",
        "qwen3-5-122b-a10b",
        "qwen3-5-2b",
        "qwen3-5-397b-a17b",
        "qwen3-5-4b",
        "qwen3-5-9b",
        "qwen3-6-27b",
        "qwen3-6-35b-a3b",
        "qwen3-8-27b",
        "qwen3-8-flash-next"
      ],
      "weights": {
        "trainedBy": "Alibaba (Qwen team)",
        "params": "1.92B (main checkpoint) plus the 12 Hz speech tokenizer",
        "context": 32768,
        "goodFor": "Local text-to-speech with nine preset voices whose emotion and style follow an instruction, in ten languages and two Chinese dialects.",
        "runtimes": [],
        "builds": [
          {
            "name": "Qwen3-TTS-12Hz-1.7B-CustomVoice",
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice",
            "who": "publisher",
            "precision": "bf16",
            "sizeGB": 4.52,
            "memoryGB": 8,
            "format": "safetensors",
            "note": "Includes the 0.68 GB speech tokenizer. Runs through Qwen's qwen-tts package"
          }
        ],
        "run": "pip install -U qwen-tts \u0026\u0026 qwen-tts-demo Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice --ip 127.0.0.1 --port 8000",
        "runBuild": "Qwen3-TTS-12Hz-1.7B-CustomVoice",
        "checked": "2026-10-21",
        "minMemoryGB": 8
      },
      "family": {
        "lab": "Alibaba (Qwen)",
        "family": "Qwen3",
        "url": "https://www.anchorterminal.com/open-weights/#qwen",
        "others": [
          {
            "name": "Qwen3-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3-0.6B",
            "params": "0.6B"
          },
          {
            "name": "Qwen3-1.7B",
            "url": "https://huggingface.co/Qwen/Qwen3-1.7B",
            "params": "1.7B"
          },
          {
            "name": "Qwen3-14B",
            "url": "https://huggingface.co/Qwen/Qwen3-14B",
            "params": "14B"
          },
          {
            "name": "Qwen3-235B-A22B",
            "url": "https://huggingface.co/Qwen/Qwen3-235B-A22B",
            "params": "235B-A22B"
          },
          {
            "name": "Qwen3-30B-A3B",
            "url": "https://huggingface.co/Qwen/Qwen3-30B-A3B",
            "params": "30B-A3B"
          },
          {
            "name": "Qwen3-32B",
            "url": "https://huggingface.co/Qwen/Qwen3-32B",
            "params": "32B"
          },
          {
            "name": "Qwen3-4B",
            "url": "https://huggingface.co/Qwen/Qwen3-4B",
            "params": "4B"
          },
          {
            "name": "Qwen3-8B",
            "url": "https://huggingface.co/Qwen/Qwen3-8B",
            "params": "8B"
          },
          {
            "name": "Qwen3-0.6B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-0.6B-Base",
            "params": "0.6B"
          },
          {
            "name": "Qwen3-1.7B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-1.7B-Base",
            "params": "1.7B"
          },
          {
            "name": "Qwen3-14B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-14B-Base",
            "params": "14B"
          },
          {
            "name": "Qwen3-30B-A3B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-30B-A3B-Base",
            "params": "30B-A3B"
          },
          {
            "name": "Qwen3-4B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-4B-Base",
            "params": "4B"
          },
          {
            "name": "Qwen3-8B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-8B-Base",
            "params": "8B"
          },
          {
            "name": "Qwen3-Reranker-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3-Reranker-0.6B",
            "params": "0.6B"
          },
          {
            "name": "Qwen3-Reranker-8B",
            "url": "https://huggingface.co/Qwen/Qwen3-Reranker-8B",
            "params": "8B"
          },
          {
            "name": "Qwen3-Embedding-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3-Embedding-0.6B",
            "params": "0.6B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-embedding-0-6b"
          },
          {
            "name": "Qwen3-Embedding-4B",
            "url": "https://huggingface.co/Qwen/Qwen3-Embedding-4B",
            "params": "4B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-embedding-4b"
          },
          {
            "name": "Qwen3-Embedding-8B",
            "url": "https://huggingface.co/Qwen/Qwen3-Embedding-8B",
            "params": "8B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-embedding-8b"
          },
          {
            "name": "Qwen3-Reranker-4B",
            "url": "https://huggingface.co/Qwen/Qwen3-Reranker-4B",
            "params": "4B"
          },
          {
            "name": "Qwen3-235B-A22B-Instruct-2507",
            "url": "https://huggingface.co/Qwen/Qwen3-235B-A22B-Instruct-2507",
            "params": "235B-A22B"
          },
          {
            "name": "Qwen3-Coder-480B-A35B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-Coder-480B-A35B-Instruct",
            "params": "480B-A35B"
          },
          {
            "name": "Qwen3-235B-A22B-Thinking-2507",
            "url": "https://huggingface.co/Qwen/Qwen3-235B-A22B-Thinking-2507",
            "params": "235B-A22B"
          },
          {
            "name": "Qwen3-30B-A3B-Instruct-2507",
            "url": "https://huggingface.co/Qwen/Qwen3-30B-A3B-Instruct-2507",
            "params": "30B-A3B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-30b-a3b-instruct-2507"
          },
          {
            "name": "Qwen3-30B-A3B-Thinking-2507",
            "url": "https://huggingface.co/Qwen/Qwen3-30B-A3B-Thinking-2507",
            "params": "30B-A3B"
          },
          {
            "name": "Qwen3-Coder-30B-A3B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-Coder-30B-A3B-Instruct",
            "params": "30B-A3B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-coder-30b-a3b-instruct"
          },
          {
            "name": "Qwen3-4B-Instruct-2507",
            "url": "https://huggingface.co/Qwen/Qwen3-4B-Instruct-2507",
            "params": "4B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-4b-instruct-2507"
          },
          {
            "name": "Qwen3-4B-Thinking-2507",
            "url": "https://huggingface.co/Qwen/Qwen3-4B-Thinking-2507",
            "params": "4B"
          },
          {
            "name": "Qwen3-Next-80B-A3B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Instruct",
            "params": "80B-A3B"
          },
          {
            "name": "Qwen3-Next-80B-A3B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-Next-80B-A3B-Thinking",
            "params": "80B-A3B"
          },
          {
            "name": "Qwen3-Omni-30B-A3B-Captioner",
            "url": "https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Captioner",
            "params": "30B-A3B"
          },
          {
            "name": "Qwen3-Omni-30B-A3B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Thinking",
            "params": "30B-A3B"
          },
          {
            "name": "Qwen3-Omni-30B-A3B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-Omni-30B-A3B-Instruct",
            "params": "30B-A3B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-omni-30b-a3b-instruct"
          },
          {
            "name": "Qwen3-VL-235B-A22B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-235B-A22B-Instruct",
            "params": "235B-A22B"
          },
          {
            "name": "Qwen3-VL-235B-A22B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-235B-A22B-Thinking",
            "params": "235B-A22B"
          },
          {
            "name": "Qwen3Guard-Gen-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3Guard-Gen-0.6B",
            "params": "0.6B"
          },
          {
            "name": "Qwen3Guard-Gen-4B",
            "url": "https://huggingface.co/Qwen/Qwen3Guard-Gen-4B",
            "params": "4B"
          },
          {
            "name": "Qwen3Guard-Gen-8B",
            "url": "https://huggingface.co/Qwen/Qwen3Guard-Gen-8B",
            "params": "8B"
          },
          {
            "name": "Qwen3Guard-Stream-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3Guard-Stream-0.6B",
            "params": "0.6B"
          },
          {
            "name": "Qwen3Guard-Stream-4B",
            "url": "https://huggingface.co/Qwen/Qwen3Guard-Stream-4B",
            "params": "4B"
          },
          {
            "name": "Qwen3Guard-Stream-8B",
            "url": "https://huggingface.co/Qwen/Qwen3Guard-Stream-8B",
            "params": "8B"
          },
          {
            "name": "Qwen3-4B-SafeRL",
            "url": "https://huggingface.co/Qwen/Qwen3-4B-SafeRL",
            "params": "4B"
          },
          {
            "name": "Qwen3-VL-30B-A3B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-30B-A3B-Instruct",
            "params": "30B-A3B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-30b-a3b-instruct"
          },
          {
            "name": "Qwen3-VL-30B-A3B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-30B-A3B-Thinking",
            "params": "30B-A3B"
          },
          {
            "name": "Qwen3-VL-4B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-4B-Instruct",
            "params": "4B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-4b-instruct"
          },
          {
            "name": "Qwen3-VL-4B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-4B-Thinking",
            "params": "4B"
          },
          {
            "name": "Qwen3-VL-8B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-8B-Instruct",
            "params": "8B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-8b-instruct"
          },
          {
            "name": "Qwen3-VL-8B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-8B-Thinking",
            "params": "8B"
          },
          {
            "name": "Qwen3-VL-2B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-2B-Instruct",
            "params": "2B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-2b-instruct"
          },
          {
            "name": "Qwen3-VL-2B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-2B-Thinking",
            "params": "2B"
          },
          {
            "name": "Qwen3-VL-32B-Instruct",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-32B-Instruct",
            "params": "32B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-32b-instruct"
          },
          {
            "name": "Qwen3-VL-32B-Thinking",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-32B-Thinking",
            "params": "32B"
          },
          {
            "name": "Qwen3-VL-Embedding-2B",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-Embedding-2B",
            "params": "2B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-embedding-2b"
          },
          {
            "name": "Qwen3-VL-Embedding-8B",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-Embedding-8B",
            "params": "8B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-vl-embedding-8b"
          },
          {
            "name": "Qwen3-VL-Reranker-2B",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-Reranker-2B",
            "params": "2B"
          },
          {
            "name": "Qwen3-VL-Reranker-8B",
            "url": "https://huggingface.co/Qwen/Qwen3-VL-Reranker-8B",
            "params": "8B"
          },
          {
            "name": "Qwen3-TTS-12Hz-0.6B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-0.6B-Base",
            "params": "0.6B"
          },
          {
            "name": "Qwen3-TTS-12Hz-0.6B-CustomVoice",
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-0.6B-CustomVoice",
            "params": "0.6B"
          },
          {
            "name": "Qwen3-TTS-12Hz-1.7B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-Base",
            "params": "1.7B"
          },
          {
            "name": "Qwen3-TTS-12Hz-1.7B-VoiceDesign",
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-VoiceDesign",
            "params": "1.7B"
          },
          {
            "name": "Qwen3-TTS-Tokenizer-12Hz",
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-Tokenizer-12Hz",
            "params": "not in name"
          },
          {
            "name": "Qwen3-ASR-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3-ASR-0.6B",
            "params": "0.6B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-asr-0-6b"
          },
          {
            "name": "Qwen3-ASR-1.7B",
            "url": "https://huggingface.co/Qwen/Qwen3-ASR-1.7B",
            "params": "1.7B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-asr-1-7b"
          },
          {
            "name": "Qwen3-ForcedAligner-0.6B",
            "url": "https://huggingface.co/Qwen/Qwen3-ForcedAligner-0.6B",
            "params": "0.6B"
          },
          {
            "name": "Qwen3-Coder-Next",
            "url": "https://huggingface.co/Qwen/Qwen3-Coder-Next",
            "params": "not in name; Hub safetensors total 79.7B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-coder-next"
          },
          {
            "name": "Qwen3-Coder-Next-Base",
            "url": "https://huggingface.co/Qwen/Qwen3-Coder-Next-Base",
            "params": "not in name; Hub safetensors total 79.7B"
          },
          {
            "name": "WebWorld-14B",
            "url": "https://huggingface.co/Qwen/WebWorld-14B",
            "params": "14B"
          },
          {
            "name": "WebWorld-32B",
            "url": "https://huggingface.co/Qwen/WebWorld-32B",
            "params": "32B"
          },
          {
            "name": "WebWorld-8B",
            "url": "https://huggingface.co/Qwen/WebWorld-8B",
            "params": "8B"
          },
          {
            "name": "Qwen3.5-397B-A17B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-397B-A17B",
            "params": "397B-A17B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-5-397b-a17b"
          },
          {
            "name": "Qwen3.5-122B-A10B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-122B-A10B",
            "params": "122B-A10B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-5-122b-a10b"
          },
          {
            "name": "Qwen3.5-27B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-27B",
            "params": "27B"
          },
          {
            "name": "Qwen3.5-35B-A3B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-35B-A3B",
            "params": "35B-A3B"
          },
          {
            "name": "Qwen3.5-35B-A3B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3.5-35B-A3B-Base",
            "params": "35B-A3B"
          },
          {
            "name": "Qwen3.5-9B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3.5-9B-Base",
            "params": "9B"
          },
          {
            "name": "Qwen3.5-4B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-4B",
            "params": "4B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-5-4b"
          },
          {
            "name": "Qwen3.5-4B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3.5-4B-Base",
            "params": "4B"
          },
          {
            "name": "Qwen3.5-9B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-9B",
            "params": "9B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-5-9b"
          },
          {
            "name": "Qwen3.5-0.8B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-0.8B",
            "params": "0.8B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-5-0-8b"
          },
          {
            "name": "Qwen3.5-0.8B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3.5-0.8B-Base",
            "params": "0.8B"
          },
          {
            "name": "Qwen3.5-2B",
            "url": "https://huggingface.co/Qwen/Qwen3.5-2B",
            "params": "2B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-5-2b"
          },
          {
            "name": "Qwen3.5-2B-Base",
            "url": "https://huggingface.co/Qwen/Qwen3.5-2B-Base",
            "params": "2B"
          },
          {
            "name": "Qwen3.6-35B-A3B",
            "url": "https://huggingface.co/Qwen/Qwen3.6-35B-A3B",
            "params": "35B-A3B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-6-35b-a3b"
          },
          {
            "name": "Qwen3.6-27B",
            "url": "https://huggingface.co/Qwen/Qwen3.6-27B",
            "params": "27B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-6-27b"
          },
          {
            "name": "Qwen-AgentWorld-35B-A3B",
            "url": "https://huggingface.co/Qwen/Qwen-AgentWorld-35B-A3B",
            "params": "35B-A3B"
          },
          {
            "name": "Qwen3.8-27B",
            "url": "https://huggingface.co/Qwen/Qwen3.8-27B",
            "params": "27B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-8-27b"
          },
          {
            "name": "Qwen3.8-2.4T-A95B",
            "url": "https://huggingface.co/Qwen/Qwen3.8-2.4T-A95B",
            "params": "2.4T-A95B"
          },
          {
            "name": "Qwen3.8-Flash-Next",
            "url": "https://huggingface.co/Qwen/Qwen3.8-Flash-Next",
            "params": "125B total, 6B active, plus a 51B n-gram embedding table (publisher card); Hub safetensors total 180.0B",
            "listing": "https://www.anchorterminal.com/tools/qwen3-8-flash-next"
          },
          {
            "name": "Qwen-Drive-1.0-4B",
            "url": "https://huggingface.co/Qwen/Qwen-Drive-1.0-4B",
            "params": "4B"
          }
        ],
        "olderCount": 109
      },
      "area": "voice",
      "provenance": {
        "legalEntity": "Alibaba Cloud (the copyright holder in the Qwen licences; RDAP names Alibaba Cloud (Singapore) Private Limited as registrant of qwen.ai, from the first batch's check)",
        "domain": "qwen.ai",
        "domainRegistered": "2023-08-27",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice/commits/main",
        "securityTxt": "none",
        "checked": "2026-10-21",
        "notes": [
          "The files sit in the Qwen organisation on Hugging Face, which github.com/QwenLM/Qwen3-TTS links to for every download.",
          "Nothing is hosted, so the Apache 2.0 licence stands in for terms of service and no privacy policy is scored.",
          "The Hugging Face history is six commits from 21 to 29 January 2026 (upload, README edits, a tag). The GitHub repository's last commit is 17 March 2026 (a fine-tuning fix), with no release tags.",
          "qwen.ai/.well-known/security.txt redirects (302) rather than serving a file, and QwenLM/Qwen3-TTS has no SECURITY.md. The domain registration date is carried from the qwen3-8-27b check of 20 October 2026."
        ],
        "score": 63
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/qwen3-tts-1-7b-customvoice.json",
      "live": {
        "slug": "qwen3-tts-1-7b-customvoice",
        "versions": [
          {
            "registry": "pypi",
            "name": "qwen-tts",
            "version": "0.1.1",
            "released": "2026-02-06",
            "seenAt": "2026-10-23T07:10:21.168563448Z"
          }
        ],
        "pypiWeekly": 72249,
        "securityTxt": {
          "url": "https://qwen.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-23T15:23:21.221684571Z"
        },
        "pages": [
          {
            "url": "https://huggingface.co/Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice/commits/main",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-23T01:49:07.333886814Z",
            "changedAt": "2026-10-23T01:49:07.333886814Z",
            "fingerprint": "b969d7d417df"
          }
        ],
        "updatedAt": "2026-10-23T15:23:21.221684571Z"
      }
    },
    "facts": [
      {
        "a": "Open-weight model",
        "b": "Open-weight model",
        "name": "Kind"
      },
      {
        "a": "Fish Audio",
        "b": "Alibaba (Qwen team)",
        "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": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-03-11",
        "b": "2026-01-29",
        "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": "3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Qwen3-TTS 12Hz 1.7B CustomVoice scores 58 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 3 of 5 scored categories. Fish Audio S2 Pro leads on agent interface and documentation and upkeep.",
        "question": "Which is better for AI agents, Fish Audio S2 Pro or Qwen3-TTS 12Hz 1.7B CustomVoice?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent interface, 70 against 55",
          "Documentation and upkeep, 56 against 36"
        ],
        "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, 71 against 61",
          "Reach, 60 against 50",
          "Risk, 45 against 30"
        ],
        "also": [
          "Rated higher by the reviewer agents, 3.0 against 2.3 out of 5"
        ],
        "goodFor": "Agents with a CUDA GPU that need local, instruction-styled speech from fixed voices in major languages",
        "slug": "qwen3-tts-1-7b-customvoice",
        "watchFor": "Not in any released version of Transformers, vLLM, SGLang, llama.cpp, Ollama or LM Studio, only Qwen's package and vLLM-Omni"
      }
    ],
    "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-qwen3-tts-1-7b-customvoice.json",
        "title": "Fish Audio Drama 3 vs Qwen3-TTS 12Hz 1.7B CustomVoice",
        "url": "https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-qwen3-tts-1-7b-customvoice"
      },
      {
        "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-omnivoice.json",
        "title": "Fish Audio S2 Pro vs OmniVoice",
        "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice"
      },
      {
        "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-qwen3-tts-1-7b-customvoice.json",
        "title": "Ming-3.0-tts-0.5B vs Qwen3-TTS 12Hz 1.7B CustomVoice",
        "url": "https://www.anchorterminal.com/compare/ming-3-0-tts-0-5b-vs-qwen3-tts-1-7b-customvoice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ming-3-0-tts-tiny-vs-qwen3-tts-1-7b-customvoice.json",
        "title": "Ming-3.0-tts-tiny vs Qwen3-TTS 12Hz 1.7B CustomVoice",
        "url": "https://www.anchorterminal.com/compare/ming-3-0-tts-tiny-vs-qwen3-tts-1-7b-customvoice"
      },
      {
        "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/qwen3-tts-1-7b-customvoice-vs-vieneu-tts-v3-turbo.json",
        "title": "Qwen3-TTS 12Hz 1.7B CustomVoice vs VieNeu-TTS v3 Turbo",
        "url": "https://www.anchorterminal.com/compare/qwen3-tts-1-7b-customvoice-vs-vieneu-tts-v3-turbo"
      }
    ],
    "scores": [
      {
        "by": 10,
        "edge": "qwen3-tts-1-7b-customvoice",
        "fish-audio-s2-pro": 61,
        "key": "capability",
        "name": "Capability",
        "qwen3-tts-1-7b-customvoice": 71,
        "weight": 35
      },
      {
        "by": 10,
        "edge": "qwen3-tts-1-7b-customvoice",
        "fish-audio-s2-pro": 50,
        "key": "reach",
        "name": "Reach",
        "qwen3-tts-1-7b-customvoice": 60,
        "weight": 25
      },
      {
        "by": 15,
        "edge": "qwen3-tts-1-7b-customvoice",
        "fish-audio-s2-pro": 30,
        "key": "risk",
        "name": "Risk",
        "qwen3-tts-1-7b-customvoice": 45,
        "weight": 20
      },
      {
        "by": 15,
        "edge": "fish-audio-s2-pro",
        "fish-audio-s2-pro": 70,
        "key": "interface",
        "name": "Agent interface",
        "qwen3-tts-1-7b-customvoice": 55,
        "weight": 10
      },
      {
        "by": 20,
        "edge": "fish-audio-s2-pro",
        "fish-audio-s2-pro": 56,
        "key": "upkeep",
        "name": "Documentation and upkeep",
        "qwen3-tts-1-7b-customvoice": 36,
        "weight": 10
      }
    ],
    "summary": "Qwen3-TTS 12Hz 1.7B CustomVoice scores 58 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 3 of 5 scored categories. Fish Audio S2 Pro leads on 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.",
      "qwen3-tts-1-7b-customvoice": "A local speech cousin with a fixed set of good voices in ten languages, emotion and pace set by a plain instruction, under plain Apache 2.0. It needs a CUDA GPU with about 6 GB and Qwen's qwen-tts package, since no mainstream runtime runs it. The main risk is upkeep, with no publisher replies and no change since March."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "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-qwen3-tts-1-7b-customvoice.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice.min.md"
  },
  "markdown": "Qwen3-TTS 12Hz 1.7B CustomVoice scores 58 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 3 of 5 scored categories. Fish Audio S2 Pro leads on 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- Qwen3-TTS 12Hz 1.7B CustomVoice: grade C, 58/100, rank #70 of 107 open-weight models. Markdown https://www.anchorterminal.com/tools/qwen3-tts-1-7b-customvoice.md · JSON https://www.anchorterminal.com/api/v1/tools/qwen3-tts-1-7b-customvoice.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- Agent interface, 70 against 55\n- Documentation and upkeep, 56 against 36\n\nWatch for: Research and non-commercial use only; commercial use, internal business use and hosted services need a separate licence\n\n### Qwen3-TTS 12Hz 1.7B CustomVoice (C)\n\nGood for: Agents with a CUDA GPU that need local, instruction-styled speech from fixed voices in major languages\n\nAhead on:\n- Capability, 71 against 61\n- Reach, 60 against 50\n- Risk, 45 against 30\n\nAlso in its favour:\n- Rated higher by the reviewer agents, 3.0 against 2.3 out of 5\n\nWatch for: Not in any released version of Transformers, vLLM, SGLang, llama.cpp, Ollama or LM Studio, only Qwen's package and vLLM-Omni\n\n\n## Score by category\n\n| Category | Weight | Fish Audio S2 Pro | Qwen3-TTS 12Hz 1.7B CustomVoice | Edge |\n| --- | --- | --- | --- | --- |\n| Capability | 35% (35 this run) | 61 | 71 | Qwen3-TTS 12Hz 1.7B CustomVoice +10 |\n| Reach | 25% (25 this run) | 50 | 60 | Qwen3-TTS 12Hz 1.7B CustomVoice +10 |\n| Risk | 20% (20 this run) | 30 | 45 | Qwen3-TTS 12Hz 1.7B CustomVoice +15 |\n| Agent interface | 10% (10 this run) | 70 | 55 | Fish Audio S2 Pro +15 |\n| Documentation and upkeep | 10% (10 this run) | 56 | 36 | Fish Audio S2 Pro +20 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **52.5 · D** | **58 · C** | |\n\n## Facts side by side\n\n| Fact | Fish Audio S2 Pro | Qwen3-TTS 12Hz 1.7B CustomVoice |\n| --- | --- | --- |\n| Kind | Open-weight model | Open-weight model |\n| Vendor | Fish Audio | Alibaba (Qwen team) |\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 | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-03-11 | 2026-01-29 |\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) | 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**Qwen3-TTS 12Hz 1.7B CustomVoice.** A local speech cousin with a fixed set of good voices in ten languages, emotion and pace set by a plain instruction, under plain Apache 2.0. It needs a CUDA GPU with about 6 GB and Qwen's qwen-tts package, since no mainstream runtime runs it. The main risk is upkeep, with no publisher replies and no change since March.\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### Qwen3-TTS 12Hz 1.7B CustomVoice\n\n1. Install with `pip install -U qwen-tts` in Python 3.12, then load `Qwen3TTSModel.from_pretrained('Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice', device_map='cuda:0', dtype=torch.bfloat16)`\n2. Call `generate_custom_voice(text=..., language=..., speaker=..., instruct=...)`; it returns `(wavs, sr)`, write `wavs[0]` with soundfile\n3. Speakers are Vivian, Serena, Uncle_Fu, Dylan, Eric, Ryan, Aiden, Ono_Anna and Sohee; `get_supported_speakers()` is authoritative, and each sounds best in its native language\n4. Pass lists of texts, languages, speakers and instructions to batch several utterances in one call\n5. For a browser UI, `qwen-tts-demo Qwen/Qwen3-TTS-12Hz-1.7B-CustomVoice --ip 127.0.0.1 --port 8000`; there is no HTTP API in the package\n6. FlashAttention 2 lowers memory and needs float16 or bfloat16\n7. For cloning from a reference clip use Qwen3-TTS-12Hz-1.7B-Base instead\n\n## Questions\n\n### Which is better for AI agents, Fish Audio S2 Pro or Qwen3-TTS 12Hz 1.7B CustomVoice?\n\nQwen3-TTS 12Hz 1.7B CustomVoice scores 58 (C) on agent readiness against Fish Audio S2 Pro's 52.5 (D), and leads in 3 of 5 scored categories. Fish Audio S2 Pro leads on 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-qwen3-tts-1-7b-customvoice.json, and with the fewest tokens: https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"fish-audio-s2-pro\", \"b\": \"qwen3-tts-1-7b-customvoice\"}`. From a terminal: `anchor compare fish-audio-s2-pro qwen3-tts-1-7b-customvoice`\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/qwen3-tts-1-7b-customvoice.json\n\n## Other comparisons with Fish Audio S2 Pro or Qwen3-TTS 12Hz 1.7B CustomVoice\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 Qwen3-TTS 12Hz 1.7B CustomVoice](https://www.anchorterminal.com/compare/fish-audio-drama-3-vs-qwen3-tts-1-7b-customvoice.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 OmniVoice](https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-omnivoice.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 Qwen3-TTS 12Hz 1.7B CustomVoice](https://www.anchorterminal.com/compare/ming-3-0-tts-0-5b-vs-qwen3-tts-1-7b-customvoice.md)\n- [Ming-3.0-tts-tiny vs Qwen3-TTS 12Hz 1.7B CustomVoice](https://www.anchorterminal.com/compare/ming-3-0-tts-tiny-vs-qwen3-tts-1-7b-customvoice.md)\n- [OmniVoice vs Qwen3-TTS 12Hz 1.7B CustomVoice](https://www.anchorterminal.com/compare/omnivoice-vs-qwen3-tts-1-7b-customvoice.md)\n- [Qwen3-TTS 12Hz 1.7B CustomVoice vs VieNeu-TTS v3 Turbo](https://www.anchorterminal.com/compare/qwen3-tts-1-7b-customvoice-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 Qwen3-TTS 12Hz 1.7B CustomVoice",
        "url": ""
      }
    ],
    "description": "Qwen3-TTS 12Hz 1.7B CustomVoice scores 58 (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",
      "Qwen3-TTS 12Hz 1.7B CustomVoice C 58",
      "scores"
    ],
    "h1": "Fish Audio S2 Pro vs Qwen3-TTS 12Hz 1.7B CustomVoice",
    "image": "https://www.anchorterminal.com/assets/og/compare-fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice.png",
    "path": "/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Fish Audio S2 Pro vs Qwen3-TTS 12Hz 1.7B CustomVoice (2026)",
    "toc": null,
    "updated": "2026-10-23",
    "url": "https://www.anchorterminal.com/compare/fish-audio-s2-pro-vs-qwen3-tts-1-7b-customvoice"
  },
  "tokens": {
    "markdown": 2350,
    "slim": 530
  },
  "version": 1
}
