diff --git a/src/libs/FishAudio/Generated/FishAudio.FishAudioClient.g.cs b/src/libs/FishAudio/Generated/FishAudio.FishAudioClient.g.cs
index be62902..69889a2 100644
--- a/src/libs/FishAudio/Generated/FishAudio.FishAudioClient.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.FishAudioClient.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Canonical REST API schema for Fish Audio text-to-speech, speech-to-text, wallet, and voice model operations.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
@@ -40,7 +41,7 @@ public sealed partial class FishAudioClient : global::FishAudio.IFishAudioClient
///
- ///
+ /// Endpoints for listing, creating, updating, and deleting voice models.
///
public ModelClient Model => new ModelClient(HttpClient, authorizations: Authorizations, options: Options)
{
@@ -49,7 +50,7 @@ public sealed partial class FishAudioClient : global::FishAudio.IFishAudioClient
};
///
- ///
+ /// Core Fish Audio REST endpoints for text-to-speech and speech-to-text.
///
public OpenAPIV1Client OpenAPIV1 => new OpenAPIV1Client(HttpClient, authorizations: Authorizations, options: Options)
{
@@ -58,7 +59,7 @@ public sealed partial class FishAudioClient : global::FishAudio.IFishAudioClient
};
///
- ///
+ /// Endpoints for API credit and package information.
///
public WalletClient Wallet => new WalletClient(HttpClient, authorizations: Authorizations, options: Options)
{
diff --git a/src/libs/FishAudio/Generated/FishAudio.IFishAudioClient.g.cs b/src/libs/FishAudio/Generated/FishAudio.IFishAudioClient.g.cs
index 4747cad..8687dc3 100644
--- a/src/libs/FishAudio/Generated/FishAudio.IFishAudioClient.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.IFishAudioClient.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Canonical REST API schema for Fish Audio text-to-speech, speech-to-text, wallet, and voice model operations.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
@@ -45,17 +46,17 @@ public partial interface IFishAudioClient : global::System.IDisposable
///
- ///
+ /// Endpoints for listing, creating, updating, and deleting voice models.
///
public ModelClient Model { get; }
///
- ///
+ /// Core Fish Audio REST endpoints for text-to-speech and speech-to-text.
///
public OpenAPIV1Client OpenAPIV1 { get; }
///
- ///
+ /// Endpoints for API credit and package information.
///
public WalletClient Wallet { get; }
diff --git a/src/libs/FishAudio/Generated/FishAudio.IModelClient.g.cs b/src/libs/FishAudio/Generated/FishAudio.IModelClient.g.cs
index f6c9ac5..c8e0dd2 100644
--- a/src/libs/FishAudio/Generated/FishAudio.IModelClient.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.IModelClient.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Endpoints for listing, creating, updating, and deleting voice models.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
diff --git a/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.CreateTts.g.cs b/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.CreateTts.g.cs
index 0c148d3..1d9148c 100644
--- a/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.CreateTts.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.CreateTts.g.cs
@@ -123,7 +123,7 @@ public partial interface IOpenAPIV1Client
///
///
/// Early stopping threshold for batch processing.
- /// Default Value: 1
+ /// Default Value: 1F
///
/// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
/// The token to cancel the operation with
diff --git a/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.g.cs b/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.g.cs
index 6a39cc0..59d261f 100644
--- a/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.IOpenAPIV1Client.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Core Fish Audio REST endpoints for text-to-speech and speech-to-text.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
diff --git a/src/libs/FishAudio/Generated/FishAudio.IWalletClient.g.cs b/src/libs/FishAudio/Generated/FishAudio.IWalletClient.g.cs
index b1d8e70..650cea9 100644
--- a/src/libs/FishAudio/Generated/FishAudio.IWalletClient.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.IWalletClient.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Endpoints for API credit and package information.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
diff --git a/src/libs/FishAudio/Generated/FishAudio.ModelClient.g.cs b/src/libs/FishAudio/Generated/FishAudio.ModelClient.g.cs
index 676cc1a..681871d 100644
--- a/src/libs/FishAudio/Generated/FishAudio.ModelClient.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.ModelClient.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Endpoints for listing, creating, updating, and deleting voice models.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
diff --git a/src/libs/FishAudio/Generated/FishAudio.Models.TTSRequest.g.cs b/src/libs/FishAudio/Generated/FishAudio.Models.TTSRequest.g.cs
index 5b4168b..b0f1193 100644
--- a/src/libs/FishAudio/Generated/FishAudio.Models.TTSRequest.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.Models.TTSRequest.g.cs
@@ -148,7 +148,7 @@ public sealed partial class TTSRequest
///
/// Early stopping threshold for batch processing.
- /// Default Value: 1
+ /// Default Value: 1F
///
[global::System.Text.Json.Serialization.JsonPropertyName("early_stop_threshold")]
public double? EarlyStopThreshold { get; set; }
@@ -230,7 +230,7 @@ public sealed partial class TTSRequest
///
///
/// Early stopping threshold for batch processing.
- /// Default Value: 1
+ /// Default Value: 1F
///
#if NET7_0_OR_GREATER
[global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers]
diff --git a/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.CreateTts.g.cs b/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.CreateTts.g.cs
index 51094c7..f861f73 100644
--- a/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.CreateTts.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.CreateTts.g.cs
@@ -593,7 +593,7 @@ partial void ProcessCreateTtsResponse(
///
///
/// Early stopping threshold for batch processing.
- /// Default Value: 1
+ /// Default Value: 1F
///
/// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
/// The token to cancel the operation with
diff --git a/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.g.cs b/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.g.cs
index 671eb84..fea1ccb 100644
--- a/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.OpenAPIV1Client.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Core Fish Audio REST endpoints for text-to-speech and speech-to-text.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
diff --git a/src/libs/FishAudio/Generated/FishAudio.WalletClient.g.cs b/src/libs/FishAudio/Generated/FishAudio.WalletClient.g.cs
index b3ea2fe..4e6b27f 100644
--- a/src/libs/FishAudio/Generated/FishAudio.WalletClient.g.cs
+++ b/src/libs/FishAudio/Generated/FishAudio.WalletClient.g.cs
@@ -4,6 +4,7 @@
namespace FishAudio
{
///
+ /// Endpoints for API credit and package information.
/// If no httpClient is provided, a new one will be created.
/// If no baseUri is provided, the default baseUri from OpenAPI spec will be used.
///
diff --git a/src/libs/FishAudio/openapi.json b/src/libs/FishAudio/openapi.json
index 82971aa..436482f 100644
--- a/src/libs/FishAudio/openapi.json
+++ b/src/libs/FishAudio/openapi.json
@@ -2,7 +2,17 @@
"openapi": "3.1.0",
"info": {
"title": "FishAudio OpenAPI",
- "version": "1"
+ "version": "1",
+ "description": "Canonical REST API schema for Fish Audio text-to-speech, speech-to-text, wallet, and voice model operations.",
+ "contact": {
+ "name": "Fish Audio Support",
+ "url": "https://docs.fish.audio",
+ "email": "support@fish.audio"
+ }
+ },
+ "externalDocs": {
+ "description": "Fish Audio documentation",
+ "url": "https://docs.fish.audio"
},
"servers": [
{
@@ -40,10 +50,7 @@
"schema": {
"type": "string",
"default": "s2-pro",
- "enum": [
- "s1",
- "s2-pro"
- ]
+ "enum": ["s1", "s2-pro"]
}
}
],
@@ -90,10 +97,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -115,10 +119,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -160,29 +161,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "OpenAPI v1"
- ]
+ "tags": ["OpenAPI v1"]
}
},
"/v1/asr": {
@@ -226,9 +215,7 @@
"type": "boolean"
}
},
- "required": [
- "audio"
- ],
+ "required": ["audio"],
"type": "object"
}
},
@@ -261,9 +248,7 @@
"type": "boolean"
}
},
- "required": [
- "audio"
- ],
+ "required": ["audio"],
"type": "object"
}
}
@@ -294,11 +279,7 @@
"type": "array"
}
},
- "required": [
- "text",
- "duration",
- "segments"
- ],
+ "required": ["text", "duration", "segments"],
"type": "object"
}
}
@@ -320,10 +301,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -345,10 +323,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -390,29 +365,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "OpenAPI v1"
- ]
+ "tags": ["OpenAPI v1"]
}
},
"/wallet/{user_id}/package": {
@@ -504,10 +467,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -549,29 +509,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Wallet"
- ]
+ "tags": ["Wallet"]
}
},
"/wallet/{user_id}/api-credit": {
@@ -684,10 +632,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -729,29 +674,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Wallet"
- ]
+ "tags": ["Wallet"]
}
},
"/model": {
@@ -919,11 +852,7 @@
"required": false,
"schema": {
"default": "score",
- "enum": [
- "score",
- "task_count",
- "created_at"
- ],
+ "enum": ["score", "task_count", "created_at"],
"title": "Sort By",
"type": "string"
},
@@ -950,10 +879,7 @@
"type": "array"
}
},
- "required": [
- "total",
- "items"
- ],
+ "required": ["total", "items"],
"type": "object"
}
}
@@ -995,29 +921,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Model"
- ]
+ "tags": ["Model"]
},
"post": {
"summary": "Create Model",
@@ -1036,20 +950,14 @@
"visibility": {
"default": "public",
"description": "Model visibility, public will be shown in the discovery page, unlist allows anyone with the link to access, private only be visible to the creator",
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"title": "Visibility",
"type": "string"
},
"type": {
"const": "tts",
"description": "Model type, tts is for text to speech",
- "enum": [
- "tts"
- ],
+ "enum": ["tts"],
"title": "Type",
"type": "string"
},
@@ -1088,9 +996,7 @@
"train_mode": {
"const": "fast",
"description": "Model train mode, for TTS model, fast means model instantly available after creation",
- "enum": [
- "fast"
- ],
+ "enum": ["fast"],
"title": "Train Mode",
"type": "string"
},
@@ -1155,12 +1061,7 @@
"type": "boolean"
}
},
- "required": [
- "type",
- "title",
- "train_mode",
- "voices"
- ],
+ "required": ["type", "title", "train_mode", "voices"],
"type": "object"
}
},
@@ -1170,20 +1071,14 @@
"visibility": {
"default": "public",
"description": "Model visibility, public will be shown in the discovery page, unlist allows anyone with the link to access, private only be visible to the creator",
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"title": "Visibility",
"type": "string"
},
"type": {
"const": "tts",
"description": "Model type, tts is for text to speech",
- "enum": [
- "tts"
- ],
+ "enum": ["tts"],
"title": "Type",
"type": "string"
},
@@ -1222,9 +1117,7 @@
"train_mode": {
"const": "fast",
"description": "Model train mode, for TTS model, fast means model instantly available after creation",
- "enum": [
- "fast"
- ],
+ "enum": ["fast"],
"title": "Train Mode",
"type": "string"
},
@@ -1289,12 +1182,7 @@
"type": "boolean"
}
},
- "required": [
- "type",
- "title",
- "train_mode",
- "voices"
- ],
+ "required": ["type", "title", "train_mode", "voices"],
"type": "object"
}
}
@@ -1313,10 +1201,7 @@
"type": "string"
},
"type": {
- "enum": [
- "svc",
- "tts"
- ],
+ "enum": ["svc", "tts"],
"title": "Type",
"type": "string"
},
@@ -1334,20 +1219,12 @@
},
"train_mode": {
"default": "full",
- "enum": [
- "fast",
- "full"
- ],
+ "enum": ["fast", "full"],
"title": "Train Mode",
"type": "string"
},
"state": {
- "enum": [
- "created",
- "training",
- "trained",
- "failed"
- ],
+ "enum": ["created", "training", "trained", "failed"],
"title": "State",
"type": "string"
},
@@ -1385,11 +1262,7 @@
"type": "array"
},
"visibility": {
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"title": "Visibility",
"type": "string"
},
@@ -1471,10 +1344,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -1516,29 +1386,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Model"
- ]
+ "tags": ["Model"]
}
},
"/model/{id}": {
@@ -1575,10 +1433,7 @@
"type": "string"
},
"type": {
- "enum": [
- "svc",
- "tts"
- ],
+ "enum": ["svc", "tts"],
"title": "Type",
"type": "string"
},
@@ -1596,20 +1451,12 @@
},
"train_mode": {
"default": "full",
- "enum": [
- "fast",
- "full"
- ],
+ "enum": ["fast", "full"],
"title": "Train Mode",
"type": "string"
},
"state": {
- "enum": [
- "created",
- "training",
- "trained",
- "failed"
- ],
+ "enum": ["created", "training", "trained", "failed"],
"title": "State",
"type": "string"
},
@@ -1647,11 +1494,7 @@
"type": "array"
},
"visibility": {
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"title": "Visibility",
"type": "string"
},
@@ -1733,10 +1576,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -1778,29 +1618,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Model"
- ]
+ "tags": ["Model"]
},
"patch": {
"summary": "Update Model",
@@ -1868,11 +1696,7 @@
"visibility": {
"anyOf": [
{
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"type": "string"
},
{
@@ -1943,11 +1767,7 @@
"visibility": {
"anyOf": [
{
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"type": "string"
},
{
@@ -2018,11 +1838,7 @@
"visibility": {
"anyOf": [
{
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"type": "string"
},
{
@@ -2093,11 +1909,7 @@
"visibility": {
"anyOf": [
{
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"type": "string"
},
{
@@ -2148,10 +1960,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -2193,29 +2002,17 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Model"
- ]
+ "tags": ["Model"]
},
"delete": {
"summary": "Delete Model",
@@ -2258,10 +2055,7 @@
"type": "string"
}
},
- "required": [
- "status",
- "message"
- ],
+ "required": ["status", "message"],
"type": "object"
}
}
@@ -2303,33 +2097,34 @@
"in": {
"title": "In",
"type": "string",
- "enum": [
- "path",
- "query",
- "header",
- "cookie",
- "body"
- ]
+ "enum": ["path", "query", "header", "cookie", "body"]
}
},
- "required": [
- "loc",
- "type",
- "msg"
- ]
+ "required": ["loc", "type", "msg"]
}
}
}
}
}
},
- "tags": [
- "Model"
- ]
+ "tags": ["Model"]
}
}
},
- "tags": [],
+ "tags": [
+ {
+ "name": "OpenAPI v1",
+ "description": "Core Fish Audio REST endpoints for text-to-speech and speech-to-text."
+ },
+ {
+ "name": "Wallet",
+ "description": "Endpoints for API credit and package information."
+ },
+ {
+ "name": "Model",
+ "description": "Endpoints for listing, creating, updating, and deleting voice models."
+ }
+ ],
"components": {
"securitySchemes": {
"BearerAuth": {
@@ -2378,19 +2173,14 @@
"type": "string"
}
},
- "required": [
- "audio",
- "text"
- ],
+ "required": ["audio", "text"],
"title": "ReferenceAudio",
"type": "object"
},
"TTSRequest": {
"description": "Request body for text-to-speech synthesis. Supports single-speaker synthesis on all compatible TTS models. Multi-speaker dialogue synthesis is only available with the S2-Pro model.\n\n## Single Speaker\nProvide either `reference_id` (string) pointing to a voice model, or `references` (array of ReferenceAudio) for zero-shot cloning.\n\n## Multiple Speakers (Dialogue, S2-Pro only)\nFor multi-speaker synthesis, provide:\n- `reference_id`: array of voice model IDs, e.g., [\"speaker-0-id\", \"speaker-1-id\"]\n- `text`: use speaker tags `<|speaker:0|>`, `<|speaker:1|>`, etc. to indicate speaker changes, e.g., \"<|speaker:0|>Hello!<|speaker:1|>Hi there!\"\n\nAlternatively, for zero-shot multi-speaker:\n- `references`: 2D array where each inner array contains references for one speaker\n- `reference_id`: array of identifiers (can be arbitrary strings for zero-shot)\n\n## Example (Multi-Speaker with Model IDs)\n```json\n{\n \"text\": \"<|speaker:0|>Good morning!<|speaker:1|>Good morning! How are you?<|speaker:0|>I'm great, thanks!\",\n \"reference_id\": [\"model-id-alice\", \"model-id-bob\"]\n}\n```",
"type": "object",
- "required": [
- "text"
- ],
+ "required": ["text"],
"properties": {
"text": {
"description": "Text to convert to speech.",
@@ -2402,16 +2192,16 @@
"title": "Temperature",
"type": "number",
"default": 0.7,
- "minimum": 0,
- "maximum": 1
+ "minimum": 0.0,
+ "maximum": 1.0
},
"top_p": {
"description": "Controls diversity via nucleus sampling.",
"title": "Top P",
"type": "number",
"default": 0.7,
- "minimum": 0,
- "maximum": 1
+ "minimum": 0.0,
+ "maximum": 1.0
},
"references": {
"anyOf": [
@@ -2489,24 +2279,12 @@
"format": {
"default": "mp3",
"description": "Output audio format.",
- "enum": [
- "wav",
- "pcm",
- "mp3",
- "opus"
- ],
+ "enum": ["wav", "pcm", "mp3", "opus"],
"title": "Format",
"type": "string"
},
"sample_rate": {
- "anyOf": [
- {
- "type": "integer"
- },
- {
- "type": "null"
- }
- ],
+ "anyOf": [{ "type": "integer" }, { "type": "null" }],
"default": null,
"description": "Audio sample rate in Hz. When null, uses the format's default (44100 Hz for most formats, 48000 Hz for opus).",
"title": "Sample Rate"
@@ -2514,35 +2292,21 @@
"mp3_bitrate": {
"default": 128,
"description": "MP3 bitrate in kbps. Only applies when format is mp3.",
- "enum": [
- 64,
- 128,
- 192
- ],
+ "enum": [64, 128, 192],
"title": "Mp3 Bitrate",
"type": "integer"
},
"opus_bitrate": {
"default": -1000,
"description": "Opus bitrate in bps. -1000 for automatic. Only applies when format is opus.",
- "enum": [
- -1000,
- 24,
- 32,
- 48,
- 64
- ],
+ "enum": [-1000, 24, 32, 48, 64],
"title": "Opus Bitrate",
"type": "integer"
},
"latency": {
"default": "normal",
"description": "Latency-quality trade-off. normal: best quality, balanced: reduced latency, low: lowest latency.",
- "enum": [
- "low",
- "normal",
- "balanced"
- ],
+ "enum": ["low", "normal", "balanced"],
"title": "Latency",
"type": "string"
},
@@ -2573,12 +2337,12 @@
"type": "boolean"
},
"early_stop_threshold": {
- "default": 1,
+ "default": 1.0,
"description": "Early stopping threshold for batch processing.",
"title": "Early Stop Threshold",
"type": "number",
- "minimum": 0,
- "maximum": 1
+ "minimum": 0.0,
+ "maximum": 1.0
}
},
"title": "TTSRequest"
@@ -2598,11 +2362,7 @@
"type": "number"
}
},
- "required": [
- "text",
- "start",
- "end"
- ],
+ "required": ["text", "start", "end"],
"title": "ASRSegment",
"type": "object"
},
@@ -2621,11 +2381,7 @@
"type": "string"
}
},
- "required": [
- "_id",
- "nickname",
- "avatar"
- ],
+ "required": ["_id", "nickname", "avatar"],
"title": "AuthorEntity",
"type": "object"
},
@@ -2636,10 +2392,7 @@
"type": "string"
},
"type": {
- "enum": [
- "svc",
- "tts"
- ],
+ "enum": ["svc", "tts"],
"title": "Type",
"type": "string"
},
@@ -2657,20 +2410,12 @@
},
"train_mode": {
"default": "full",
- "enum": [
- "fast",
- "full"
- ],
+ "enum": ["fast", "full"],
"title": "Train Mode",
"type": "string"
},
"state": {
- "enum": [
- "created",
- "training",
- "trained",
- "failed"
- ],
+ "enum": ["created", "training", "trained", "failed"],
"title": "State",
"type": "string"
},
@@ -2708,11 +2453,7 @@
"type": "array"
},
"visibility": {
- "enum": [
- "public",
- "unlist",
- "private"
- ],
+ "enum": ["public", "unlist", "private"],
"title": "Visibility",
"type": "string"
},
@@ -2795,15 +2536,10 @@
"type": "string"
}
},
- "required": [
- "title",
- "text",
- "task_id",
- "audio"
- ],
+ "required": ["title", "text", "task_id", "audio"],
"title": "SampleEntity",
"type": "object"
}
}
}
-}
\ No newline at end of file
+}