Amazon Nova 2 Sonic est le modèle de fondation speech-to-speech d'Amazon pour créer des applications de conversation vocale naturelles et en temps réel, et le guide utilisateur Nova le destine aux assistants vocaux interactifs, à l'automatisation du service client et aux applications conversationnelles.
- Entrée
- audio texte $0.06/M
- Sortie
- audio texte $0.24/M
- Entrée audio
- $3/M
- Sortie audio
- $12/M
Prix catalogue du fournisseur : sans majoration de plateforme, paiement à l'usage. Ce sont les prix catalogue officiels. Les clients connectés peuvent voir les prix effectifs incluant les remises de l’espace de travail sur /console/pricing.
Prix · position parmi 6 modèles comparables
La barre montre où se situe le prix de ce modèle parmi tous les modèles du même type sur Synthorai. Le moins cher et le plus cher sont nommés à chaque extrémité. Ce sont des tarifs de base ; les remises lot, région et écriture en cache figurent sur la page des tarifs.
Spécifications et limites
Tokens
| Fenêtre de contexte (spécification du fournisseur) | 1 000 000 |
|---|---|
| Sortie max (spéc. fournisseur) | 64 000 |
Audio
| Langues | Anglais (US, Royaume-Uni, Inde, Australie), français, italien, allemand, espagnol, portugais et hindi, avec détection et changement de langue automatiques en cours de session |
|---|---|
| Limites audio |
|
| Transcription en streaming | Oui |
Temps réel
| Voix | Voix à sonorité féminine et masculine par locale (tiffany/matthew en-US, amy en-GB, olivia en-AU, kiara/arjun en-IN et hi-IN, ambre/florian fr-FR, beatrice/lorenzo it-IT, tina/lennart de-DE, lupe/carlos es-US, carolina/leo pt-BR) ; tiffany et matthew sont des voix polyglottes qui parlent toutes les langues prises en charge. |
|---|---|
| Session |
|
Modèle
| Modalités | audio + texte → audio + texte |
|---|
- Modèle de fondation speech-to-speech d'Amazon pour les applications vocales en temps réel, accessible via une API de streaming bidirectionnel plutôt que requête/réponse. Il adapte sa diction à la prosodie de la parole entrante et change de langue au sein d'une même phrase
- documenté comme robuste au bruit de fond et aux accents dans les langues prises en charge
Utilisez nova-2-sonic en 30 secondes
Compatible OpenAI Realtime : connectez-vous en WebSocket, audio entrant et sortant. WS /v1/realtime
import asyncio, base64, json, websockets
URL = "wss://synthorai.io/v1/realtime?model=nova-2-sonic"
# Send ONLY the Authorization header — the beta protocol is retired.
HEADERS = {"Authorization": "Bearer sk-syn-..."}
async def main():
async with websockets.connect(URL, additional_headers=HEADERS) as ws:
# 1) configure the speech-to-speech session
await ws.send(json.dumps({
"type": "session.update",
"session": {
"type": "realtime",
"output_modalities": ["audio"],
"audio": {"output": {"voice": "alloy"}},
},
}))
# 2) send input audio (base64 PCM16), then request a spoken reply
await ws.send(json.dumps({"type": "input_audio_buffer.append", "audio": pcm16_b64}))
await ws.send(json.dumps({"type": "input_audio_buffer.commit"}))
await ws.send(json.dumps({"type": "response.create"}))
# 3) stream the model's audio (and text) back
async for raw in ws:
ev = json.loads(raw)
if ev["type"] == "response.audio.delta":
play(base64.b64decode(ev["delta"])) # audio out
elif ev["type"] == "response.done":
break
asyncio.run(main())import WebSocket from "ws";
const ws = new WebSocket("wss://synthorai.io/v1/realtime?model=nova-2-sonic", {
// Send ONLY the Authorization header — the beta protocol is retired.
headers: { Authorization: "Bearer sk-syn-..." },
});
ws.on("open", () => {
// configure the speech-to-speech session
ws.send(JSON.stringify({ type: "session.update", session: {
type: "realtime", output_modalities: ["audio"], audio: { output: { voice: "alloy" } },
} }));
// send input audio (base64 PCM16), then request a spoken reply
ws.send(JSON.stringify({ type: "input_audio_buffer.append", audio: pcm16Base64 }));
ws.send(JSON.stringify({ type: "input_audio_buffer.commit" }));
ws.send(JSON.stringify({ type: "response.create" }));
});
ws.on("message", (raw) => {
const ev = JSON.parse(raw.toString());
if (ev.type === "response.audio.delta") playAudio(Buffer.from(ev.delta, "base64")); // audio out
else if (ev.type === "response.done") ws.close();
});# Realtime is a WebSocket protocol — use a WS client such as websocat.
# Each line below is one OpenAI Realtime event (JSON) sent to the session.
websocat -H 'Authorization: Bearer sk-syn-...' \
'wss://synthorai.io/v1/realtime?model=nova-2-sonic' <<'EOF'
{"type":"session.update","session":{"type":"realtime","output_modalities":["audio"],"audio":{"output":{"voice":"alloy"}}}}
{"type":"input_audio_buffer.append","audio":"<base64-pcm16>"}
{"type":"input_audio_buffer.commit"}
{"type":"response.create"}
EOF
# Responses stream back as response.audio.delta (base64 audio out) … response.donepackage main
import (
"net/http"
"github.com/gorilla/websocket"
)
func main() {
h := http.Header{}
h.Set("Authorization", "Bearer sk-syn-...")
// Send ONLY the Authorization header — the beta protocol is retired.
c, _, err := websocket.DefaultDialer.Dial("wss://synthorai.io/v1/realtime?model=nova-2-sonic", h)
if err != nil {
panic(err)
}
defer c.Close()
// configure the speech-to-speech session, send audio, request a spoken reply
c.WriteJSON(map[string]any{"type": "session.update", "session": map[string]any{
"type": "realtime", "output_modalities": []string{"audio"},
"audio": map[string]any{"output": map[string]any{"voice": "alloy"}}}})
c.WriteJSON(map[string]any{"type": "input_audio_buffer.append", "audio": pcm16B64})
c.WriteJSON(map[string]any{"type": "input_audio_buffer.commit"})
c.WriteJSON(map[string]any{"type": "response.create"})
for {
var ev struct {
Type string `json:"type"`
Delta string `json:"delta"`
}
if err := c.ReadJSON(&ev); err != nil {
return
}
if ev.Type == "response.audio.delta" {
playAudio(ev.Delta) // base64 audio out
} else if ev.Type == "response.done" {
return
}
}
}import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.WebSocket;
import java.util.concurrent.CompletionStage;
// JDK built-in WebSocket — no extra dependency needed.
WebSocket ws = HttpClient.newHttpClient().newWebSocketBuilder()
.header("Authorization", "Bearer sk-syn-...")
// Send ONLY the Authorization header — the beta protocol is retired.
.buildAsync(URI.create("wss://synthorai.io/v1/realtime?model=nova-2-sonic"), new WebSocket.Listener() {
public CompletionStage<?> onText(WebSocket w, CharSequence data, boolean last) {
// handle response.audio.delta (base64 audio out) / response.done here
w.request(1);
return null;
}
}).join();
// configure the session, send input audio, then request a spoken reply
ws.sendText("{\"type\":\"session.update\",\"session\":{\"type\":\"realtime\",\"output_modalities\":[\"audio\"],\"audio\":{\"output\":{\"voice\":\"alloy\"}}}}", true);
ws.sendText("{\"type\":\"input_audio_buffer.append\",\"audio\":\"<base64-pcm16>\"}", true);
ws.sendText("{\"type\":\"input_audio_buffer.commit\"}", true);
ws.sendText("{\"type\":\"response.create\"}", true);À propos de nova-2-sonic
- On l'atteint via une API de streaming bidirectionnel plutôt que par requête-réponse, ce qui est précisément ce qui rend possible une conversation multi-tours à faible latence.
- La documentation officielle indique une fenêtre de contexte de 1M de tokens et 64K tokens de sortie maximum, l'audio et le texte étant acceptés dans la même conversation et renvoyés tous les deux.
- La couverture vocale s'étend à l'anglais dans ses variantes américaine, britannique, indienne et australienne, plus le français, l'italien, l'allemand, l'espagnol, le portugais et le hindi, proposés en voix à sonorité masculine comme féminine, avec détection et changement de langue automatiques ; les voix polyglottes parlent toute langue prise en charge, de sorte que la persona reste constante quand un appelant change de langue en cours de session.
- Le comportement conversationnel est l'argument central : la diction s'adapte à la prosodie de la parole entrante, une gestion intelligente des tours de parole détecte quand un locuteur a fini, les interruptions sont traitées avec fluidité sans perdre le contexte, et la documentation revendique une robustesse au bruit de fond et aux accents dans les langues prises en charge.
- L'appel de fonctions et les workflows agentiques sont pris en charge, tout comme l'ancrage des connaissances sur des données d'entreprise par génération augmentée de récupération, et la gestion asynchrone des outils permet à l'assistant de continuer à parler pendant qu'un outil s'exécute en arrière-plan.
- Une limite à intégrer dès la conception : les connexions sont plafonnées à huit minutes, avec un motif documenté de renouvellement et de continuation de session dans le code d'exemple pour les conversations plus longues.
- La disponibilité se limite à un petit ensemble de régions.
- Synthorai le sert via l'endpoint WebSocket /v1/realtime compatible OpenAI, de sorte que les clients SDK Realtime officiels se connectent sans modification.
FAQ
Peut-on essayer l'API nova-2-sonic gratuitement ?
nova-2-sonic est actuellement en bêta sur invitation : l'accès se fait sur candidature plutôt que par inscription ouverte. Faites la demande depuis la console Synthorai ; une fois approuvée, la tarification standard au paiement à l'usage s'applique, sans abonnement.
Quels sont les points forts de nova-2-sonic ?
Modèle speech-to-speech pour la conversation vocale en temps réel ; les voix polyglottes gardent une seule persona à travers les changements de langue ; connexions plafonnées à huit minutes avec un motif de renouvellement documenté. Voir la section À propos pour le tableau complet, tiré des notes de version officielles du fournisseur.
Combien coûte nova-2-sonic ?
Sur Synthorai, nova-2-sonic coûte $0.06 par million de tokens en entrée et $0.24 par million de tokens en sortie, soit le prix catalogue du fournisseur, sans majoration de plateforme.
Comment appeler l'API nova-2-sonic ?
nova-2-sonic est un modèle speech-to-speech : connectez-vous en WebSocket à wss://synthorai.io/v1/realtime?model=nova-2-sonic avec le SDK OpenAI Realtime (ou un WebSocket brut) pour envoyer et recevoir de l'audio. Ce n'est pas un envoi de fichier POST /v1/audio/transcriptions. Authentifiez-vous avec votre clé sk-syn et n'envoyez que l'en-tête Authorization (le protocole beta est retiré).
Comment obtenir l'accès à nova-2-sonic ?
nova-2-sonic est en bêta sur invitation : demandez l'accès depuis la console Synthorai. Une fois la demande approuvée, il fonctionne comme tous les autres modèles : pointez votre SDK OpenAI vers base_url="https://synthorai.io/v1" et définissez model="nova-2-sonic".
Modèles associés
Comparer
Chaque valeur de cette page est transcrite de la documentation du fournisseur, liée ci-dessus, et porte la date de sa vérification. Les prix sont comparés à l'échelle du catalogue ; les valeurs de spécification que les fournisseurs définissent différemment sont présentées avec la différence indiquée plutôt que mises en graphique. Rien ici n'est mesuré par nous, et rien n'est noté.