docs: correct TTS model header guidance across agent-facing and authored docs - #111
docs: correct TTS model header guidance across agent-facing and authored docs#111M2Night wants to merge 1 commit into
Conversation
|
Warning Review limit reached
Next review available in: 15 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe documentation now covers S2.1-Pro models across TTS APIs, WebSocket usage, SDKs, examples, multi-speaker synthesis, prosody controls, and emotion cues. Model headers are optional and fall back to ChangesTTS model guidance
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
features/text-to-speech.mdx (1)
112-115: 🎯 Functional Correctness | 🔵 Trivial | ⚡ Quick winDocument the Python path to the recommended model.
Line 110 recommends
s2.1-profor production, but Line 115 tells Python users to passmodel="s2-pro". The nearby Python examples omitmodel, so they use the older SDK default.Add the runtime and type-checker workaround for
model="s2.1-pro", or state that these examples intentionally uses2-pro.As per coding guidelines, prioritize accuracy and usability of documentation content.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@features/text-to-speech.mdx` around lines 112 - 115, Update the Python guidance and nearby examples in the model-selection section so they consistently document the recommended s2.1-pro model. Include the necessary runtime and type-checker workaround for passing model="s2.1-pro"; alternatively, explicitly state that the examples intentionally use the older s2-pro default.Source: Coding guidelines
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.mintlify/skills/fish-audio-api/SKILL.md:
- Around line 87-94: Add the missing shell continuation character to the model
header in both curl examples, including the single-speaker and the example
around the second model header, so each following --data line remains part of
the same curl command.
In `@api-reference/asyncapi.yml`:
- Around line 60-73: Align the model binding with its documented fallback by
changing the enum-based schema to a string schema that permits omitted or
unrecognized values to fall back to s2.1-pro, while preserving the supported
model names in the description or examples. Update both the binding definition
and the Connection Headers documentation consistently.
In `@developer-guide/resources/agent-quickstart.mdx`:
- Line 110: Update the TTS model-selection documentation and the corresponding
POST /v1/tts OpenAPI definition so they agree on whether the model header is
required; preserve the documented default only if the header remains optional,
otherwise state that callers must provide it.
---
Nitpick comments:
In `@features/text-to-speech.mdx`:
- Around line 112-115: Update the Python guidance and nearby examples in the
model-selection section so they consistently document the recommended s2.1-pro
model. Include the necessary runtime and type-checker workaround for passing
model="s2.1-pro"; alternatively, explicitly state that the examples
intentionally use the older s2-pro default.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: b33ba9ba-05b8-4f52-b8e7-f6ea6cd3aeb6
📒 Files selected for processing (8)
.mintlify/skills/fish-audio-api/SKILL.md.mintlify/skills/fish-audio-sdk/SKILL.md.mintlify/skills/fish-audio-sdk/references/text-to-speech.mdapi-reference/asyncapi.ymlapi-reference/sdk/javascript/api-reference.mdxdeveloper-guide/core-features/emotions.mdxdeveloper-guide/resources/agent-quickstart.mdxfeatures/text-to-speech.mdx
c76c74a to
3f8b4fa
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (1)
.mintlify/skills/fish-audio-api/SKILL.md (1)
93-94: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick winRestore the shell continuation after each
modelheader.The current examples omit
\at Line 93 and Line 110. Bash ends thecurlcommand there, so each following--dataline runs as a separate command. Add the continuation to both headers.Proposed fix
- --header "model: s2.1-pro" + --header "model: s2.1-pro" \Apply the same change to both curl examples.
Also applies to: 110-111
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.mintlify/skills/fish-audio-api/SKILL.md around lines 93 - 94, Restore the shell continuation character after the model header in both curl examples, including the examples anchored by the `--header "model: s2.1-pro"` lines and the corresponding header near the second example, so each following `--data` option remains part of the same curl command.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Duplicate comments:
In @.mintlify/skills/fish-audio-api/SKILL.md:
- Around line 93-94: Restore the shell continuation character after the model
header in both curl examples, including the examples anchored by the `--header
"model: s2.1-pro"` lines and the corresponding header near the second example,
so each following `--data` option remains part of the same curl command.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 6bdd5be3-e9f1-4f93-9eca-086e929aa693
📒 Files selected for processing (8)
.mintlify/skills/fish-audio-api/SKILL.md.mintlify/skills/fish-audio-sdk/SKILL.md.mintlify/skills/fish-audio-sdk/references/text-to-speech.mdapi-reference/asyncapi.ymlapi-reference/sdk/javascript/api-reference.mdxdeveloper-guide/core-features/emotions.mdxdeveloper-guide/resources/agent-quickstart.mdxfeatures/text-to-speech.mdx
🚧 Files skipped from review as they are similar to previous changes (6)
- developer-guide/resources/agent-quickstart.mdx
- developer-guide/core-features/emotions.mdx
- .mintlify/skills/fish-audio-sdk/references/text-to-speech.md
- api-reference/sdk/javascript/api-reference.mdx
- features/text-to-speech.mdx
- api-reference/asyncapi.yml
…red docs The model header was documented as required with only s1/s2-pro available, predating the S2.1-Pro launch. Live-verified behavior (trace IDs 5e56d2de…, 9027a9d2…, 9a40d052…, aaa50a97…): the header is optional, and omitted or unrecognized values fall back to the paid s2.1-pro registry default in edge-api. - .mintlify/skills/fish-audio-api/SKILL.md: model header optional with all four models and fallback documented; recommend s2.1-pro for production and s2.1-pro-free for the free tier (matching Models Overview); samples moved to s2.1-pro (same list price as s2-pro); multi-speaker and normalize_loudness scoped to s2-pro + S2.1-Pro family; drop the obsolete 422-on-missing-model troubleshooting entry - .mintlify/skills/fish-audio-sdk/: document the SDK typing lag — the API accepts S2.1 models and both SDKs forward them at runtime, but the type definitions still list only s1/s2-pro, so agents are told to use type overrides or the raw-API skill for S2.1 - api-reference/asyncapi.yml: ws model header optional, full enum, fallback documented; multi-speaker and normalize_loudness notes corrected - api-reference/sdk/javascript/api-reference.mdx: note that Backends lags the API and how to pass S2.1 values - features/text-to-speech.mdx: '(default)' on s2-pro qualified as the Python SDK default; raw-API section no longer claims the header is required - developer-guide/core-features/emotions.mdx: bracket emotion syntax attributed to the S2 family per Models Overview - developer-guide/resources/agent-quickstart.mdx: optional header, all four models, recommendation and fallback Capability scoping verified against models-overview.mdx, platform-web tts-models.ts, and the inference engine's model-agnostic handling. AsyncAPI validated with the official parser (0 errors). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
076e84b to
c54fe1a
Compare
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Workflows to automatically generate PRs for you. |
Summary
Hand-authored docs and both agent skills still described the TTS
modelheader as required with onlys1/s2-proavailable — predating the S2.1-Pro launch. Live testing (trace IDs below) shows the header is optional, and omitted or unrecognized values fall back to the paids2.1-proregistry default in edge-api.This PR fixes every hand-authored occurrence. The
openapi.jsonmirror is intentionally untouched — it syncs automatically once the companion backend PR (platform-apifix/tts-model-header-optional-default) is deployed.Changes
.mintlify/skills/fish-audio-api/SKILL.mds2.1-pro(production) /s2.1-pro-free(free tier) per Models Overview; samples moved tos2.1-pro(same list price ass2-pro); multi-speaker +normalize_loudnessscoped tos2-proand the S2.1-Pro family; removed obsolete 422-on-missing-model troubleshooting entry.mintlify/skills/fish-audio-sdk/SKILL.md+references/text-to-speech.mds1/s2-pro— agents are told to use# type: ignore/ascasts, or the raw-API skillapi-reference/asyncapi.ymlmodelheader optional, full enum, fallback documented; three multi-speaker notes and onenormalize_loudnessnote correctedapi-reference/sdk/javascript/api-reference.mdxBackendstype lags the API and how to pass S2.1 valuesfeatures/text-to-speech.mdx(default)ons2-proqualified as the Python SDK default; raw-API section no longer claims the header is requireddeveloper-guide/core-features/emotions.mdx[bracket]emotion syntax attributed to the S2 family, not "the default S2-Pro model"developer-guide/resources/agent-quickstart.mdxEvidence
Behavior verified live with traceparent-tagged requests (per the observability docs):
model5e56d2de69a1a713a62e369c01aa8e92s2pro9027a9d2f50f325d9ccdce983e524f4bs2-pro9a40d052f02ec2cfbf05eb70a1b1b452s2.1-proaaa50a97136c81c78926b47011379de6Capability scoping cross-checked against
models-overview.mdx, platform-webtts-models.ts, and the inference engine's model-agnosticnormalize_loudnesshandling. AsyncAPI validated with the official@asyncapi/parser(0 errors). Reviewed across two external review rounds; all findings addressed.Coordination notes
check-openapiCI job currently fails on every PR because the live schema has drifted from the committed mirror (unrelatedpvc_*/422 changes); it resolves when the nightlyupdate-openapijob's auto-PR lands.openapi.json), but the full fix is complete only after platform-api'sfix/tts-model-header-optional-defaultdeploys and the schema mirror syncs.Modelliteral (fish-audio-pythontypes/shared.py) and the JS SDKBackendstype, then simplify the SDK-skill caveats.🤖 Generated with Claude Code
Summary by CodeRabbit