Fish Audio S2 Pro / Drama 3

Trang Soniqo này ghi lại Fish Audio S2 Pro theo triển khai hiện có trong speech-swift / speech-core. Liên kết Hugging Face nằm bên dưới phần ghi chú tích hợp.

Ưu tiên trang nội bộ

Thẻ trên trang chính và menu tài liệu trỏ vào đây trước; liên kết model nguồn và bundle vẫn có trong trang này.

Tổng quan

ModelFish Audio S2 Pro
Vai tròExperimental multilingual TTS with raw-reference cloning and style markers
BackendMLX fp16
Đầu ra44.1 kHz mono PCM
Ngôn ngữMultilingual
Giấy phépResearch / non-commercial bundle; obtain Fish Audio license for commercial exposure
Trạng tháiProgrammatic runtime; CLI integration is still pending
NguồnFish Audio S2 Pro
Sản phẩm SwiftFishAudioTTS
CLI / runtimeProgrammatic runtime today; planned speech speak --engine fish-audio

Cách dùng

Đoạn dưới đây khớp với API hoặc lệnh hiện tại do speech-swift cung cấp.

import FishAudioTTS

let model = try await FishAudioTTSModel.fromPretrained()
let pcm = try await model.generate(
    text: "आज मैं बहुत खुश हूँ। [excited]",
    referenceAudioURL: URL(fileURLWithPath: "reference.wav"),
    referenceText: "नमस्ते, यह संदर्भ आवाज है।"
)

Liên kết model

Ghi chú triển khai

Fish Audio Drama 3

Hỗ trợ MLX gốc ở mức thử nghiệm cho Drama 3 có qua FishAudioDrama3Model. MoE 35 tỷ tham số với cơ chế chú ý lai, bộ giải mã âm thanh theo thời gian và codec Fish DAC tạo âm thanh mono 44,1 kHz. Bản 4 bit đã vượt qua kiểm tra dạng sóng và ASR độc lập cho tạo giọng từ văn bản, nhân bản giọng tham chiếu và đầu ra CLI trên Apple M5 Pro. Các bản 8 bit và BF16 vẫn chưa được kiểm chứng.

Chế độ mặc định balanced giải phóng vùng đệm MLX nhàn rỗi trên 512 MiB tại ranh giới các giai đoạn. Giới hạn bộ nhớ đệm chung cũng áp dụng trong suốt vòng đời mô hình, giữ nguyên ngân sách thấp hơn của bên gọi; cả hai đều không giới hạn tổng bộ nhớ tiến trình. --fish-drama3-memory-mode unrestricted hoặc memoryOptions: .unrestricted tải trước trọng số và bỏ qua dọn dẹp giữa các giai đoạn, nhưng vẫn giữ giới hạn vòng đời.

Tạo tiếng nói chỉ từ văn bản trì hoãn nạp 794.4 MiB trọng số bộ mã hóa tham chiếu. Lần mã hóa tham chiếu đầu tiên nạp và giữ chúng; hãy giữ codec.safetensors khả dụng đến lúc đó. Mã tham chiếu tính sẵn không cần bộ mã hóa.

Cung cấp toàn bộ văn bản đầu vào. Nhân bản giọng cần bản ghi tham chiếu và bản chép lời chính xác. Hỗ trợ thẻ người nói 0–15 và cảm xúc trong văn bản. Có thể truyền PCM qua generateStreaming, generateStream và --stream. Mỗi khối mặc định gồm 3 khung codec, khoảng 139 ms âm thanh. Chưa hỗ trợ tự chia văn bản dài hoặc đầu vào văn bản dạng luồng. Khi đạt giới hạn khung, chương trình báo lỗi.

speech speak "Hello from Drama 3." --engine fish-drama3 --fish-drama3-bundle-dir /path/to/bundle -o hello.wav
speech speak "Hello from Drama 3." --engine fish-drama3 --stream --fish-drama3-chunk-frames 3 -o streamed.wav
speech speak "Hello in the reference voice." --engine fish-drama3 --voice-sample reference.wav --fish-drama3-reference-text "The exact reference transcript." --seed 42 -o cloned.wav
import FishAudioTTS
let model = try await FishAudioDrama3Model.fromBundle(bundleURL, memoryOptions: .balanced)
let pcm = try await model.generate(text: "Hello from Drama 3.", options: .init(seed: 42))
try await model.generateStreaming(text: "Hello from Drama 3.", options: .init(seed: 42, streamingChunkFrames: 3)) { chunk in
    print(chunk.frameIndex, chunk.samples.count, chunk.isFinal)
}
Tùy chọnMặc định
--fish-drama3-model-idmlx-community/fish-audio-drama-3-4bit
--fish-drama3-bundle-dir—
--fish-drama3-reference-text—
--fish-drama3-max-frames2048
--fish-drama3-temperature1
--fish-drama3-top-k30
--fish-drama3-top-p0.9
--voice-sample—
--seed0
--streamfalse
--fish-drama3-chunk-frames3
--fish-drama3-memory-modebalanced

Được xây dựng với Fish Audio. Các gói giữ lại Community License và NOTICE.

Đo hiệu năng bản 4 bit

Chế độPCM đầu tiên, msTổng hợp sau làm nóng, giâyÂm thanh, giâyRTFRSS đỉnh, GiBBộ nhớ vật lý đỉnh, GiB
Chỉ văn bản / Toàn bộ—2.3063.4830.66214.45724.220
Nhân bản giọng tham chiếu / Toàn bộ—2.6813.2040.83715.06424.789
Chỉ văn bản / Truyền luồng275.32.5293.4830.72615.57122.321
Nhân bản giọng tham chiếu / Truyền luồng730.22.8603.2040.89314.67623.885

Apple M5 Pro, 48 GiB, bản dựng release, 2026-10-17. Trung vị của ba lượt sau làm nóng, đo đến khi tạo xong toàn bộ dạng sóng. Không gồm tải mô hình và đọc/ghi WAV; nhân bản gồm mã hóa tham chiếu ở mỗi lượt. RTF = thời gian tổng hợp / thời lượng âm thanh. ASR độc lập: 16/16 đoạn đạt, không có lỗi từ. Dùng bộ nhớ vật lý để ước tính dung lượng bộ nhớ hợp nhất. PCM đầu tiên là callback luồng đầu tiên có dữ liệu; chế độ toàn bộ không có callback từng khối. Khối mặc định chứa 139.3 ms âm thanh. Chưa đo thời điểm bắt đầu phát nghe được.