Preguntas frecuentes
¿Funciona speech-swift en iOS?
Kokoro TTS, Qwen3.5-Chat, Silero VAD, Parakeet ASR, DeepFilterNet3 y WeSpeaker se ejecutan en iOS 17+ mediante CoreML en el Neural Engine. Los modelos basados en MLX (Qwen3-ASR, Qwen3-TTS, Qwen3.5-Chat MLX, PersonaPlex) requieren macOS 14+ en Apple Silicon.
¿Necesita conexión a internet?
Solo para la descarga inicial del modelo desde HuggingFace (automática, almacenada en caché en ~/Library/Caches/qwen3-speech/). Después, toda la inferencia se ejecuta completamente sin conexión y sin acceso a la red. Sin APIs en la nube, sin claves de API.
¿Cómo se compara speech-swift con Whisper?
Qwen3-ASR-0.6B alcanza un RTF de 0.06 en M2 Max — un 40% más rápido que Whisper-large-v3 a través de whisper.cpp (RTF 0.10) — con una precisión comparable en 52 idiomas. speech-swift ofrece una API Swift nativa async/await, mientras que whisper.cpp requiere un puente C++.
Consulta las tablas comparativas completas con benchmarks de ASR y TTS frente a whisper.cpp, Apple SFSpeechRecognizer, AVSpeechSynthesizer y APIs en la nube.
¿Qué chips de Apple Silicon son compatibles?
Todos los chips de la serie M: M1, M2, M3, M4 y sus variantes Pro/Max/Ultra. Requiere macOS 14+ (Sonoma) o iOS 17+.
¿Puedo usarlo en una aplicación comercial?
Sí. speech-swift está licenciado bajo Apache 2.0. Los pesos de los modelos subyacentes tienen sus propias licencias — consulta la página de HuggingFace de cada modelo para más detalles.
¿Cuánta memoria necesita?
Desde ~3 MB (Silero VAD) hasta ~6.5 GB (PersonaPlex 7B). Uso típico:
- Kokoro TTS: ~200 MB (1 bucket)
- Qwen3-ASR 0.6B: ~2.2 GB
- Qwen3-TTS 0.6B: ~2 GB
- Qwen3.5-Chat 0.8B: ~700 MB (INT4 MLX) / ~1.2 GB (INT8 CoreML)
- CosyVoice3: ~1.5 GB
- Parakeet TDT: ~400 MB
¿Puedo ejecutar varios modelos simultáneamente?
Sí. Usa modelos CoreML en el Neural Engine junto con modelos MLX en la GPU para evitar contención — por ejemplo, Silero VAD (CoreML) + Qwen3-ASR (MLX) + Qwen3-TTS (MLX).
¿Existe una API REST?
Sí. El binario audio-server expone todos los modelos a través de endpoints HTTP REST y WebSocket, incluyendo un WebSocket compatible con OpenAI Realtime API en /v1/realtime. Consulta la Referencia de CLI para los comandos del servidor.
¿Cómo lo instalo?
Homebrew:
brew tap soniqo/speech https://github.com/soniqo/speech-swift && brew install speechSwift Package Manager:
.package(url: "https://github.com/soniqo/speech-swift", branch: "main")Consulta la guía Empezar para las instrucciones completas.
¿Qué modelos de voz están disponibles?
Voz a texto: Qwen3-ASR (52 idiomas, MLX) y Parakeet TDT (25 idiomas, CoreML).
Texto a voz: Qwen3-TTS (streaming, 10 idiomas), CosyVoice3 (clonación de voz, 9 idiomas) y Kokoro-82M (listo para iOS, 50 voces, 10 idiomas).
Voz a voz: PersonaPlex 7B (diálogo full-duplex, 18 presets de voz).
Análisis de audio: VAD Silero + Pyannote, diarización de hablantes (Pyannote + Sortformer), embeddings de hablante WeSpeaker y supresión de ruido DeepFilterNet3.
LLM: Qwen3.5-0.8B Chat (en el dispositivo, INT4 MLX + INT8 CoreML, tokens en streaming).
¿Funciona Soniqo en Android?
Sí. El SDK speech-android proporciona una API Kotlin con aceleración por hardware mediante ONNX Runtime y NNAPI. Soporta arm64-v8a en Android 8+ (API 26). Los modelos se descargan automáticamente desde HuggingFace en el primer uso (~1.2 GB). Consulta Empezar — Android para las instrucciones de configuración.
¿Funciona Soniqo en Linux?
Sí. El proyecto speech-android incluye una API en C para Linux embebido y de automoción (Yocto, dispositivos edge). Usa ONNX Runtime con aceleración QNN opcional para hardware Qualcomm. Soporta ARM64 y x86_64. Consulta Empezar — Linux para las instrucciones de configuración.
¿Puedo compartir modelos entre plataformas?
Los modelos principales (Parakeet, Kokoro, Silero, DeepFilter) usan el formato ONNX tanto en Android como en Linux. Apple usa los formatos CoreML/MLX. Mismos pesos subyacentes, distintos formatos de exportación optimizados para la aceleración por hardware de cada plataforma.