Cookbook / Interprète de poche
Un interprète
dans votre poche

Capture d'écran. Le modèle lancé en local.
- Modèles
- ink-2, sonic-3.6
- Langues
- Deux langues parmi l'anglais, l'espagnol, le français, le hindi et le japonais
- Licence
- Apache-2.0
- Stack technique
- Next.js 16React 19AI SDKWeb Audioshadcn/ui
- Produits Cartesia
- Ink 2Sonic 3.6
Ce qu'il fait
L'écran se divise pour que chacun lise la conversation dans sa langue, et une moitié peut se retourner quand le téléphone est posé à plat entre vous. Sous chaque tour traduit, une petite ligne indique le délai jusqu'au premier mot traduit et jusqu'au premier audio.
Lancez-le vous-même
Installez
Lancez les commandes ci-dessous avec Node 22.22 ou plus récent. pnpm fonctionne aussi. Remplissez
.env.localà l'aide du tableau ci-dessous. S'il manque une clé, la page indique laquelle.Variables d'environnement - CARTESIA_API_KEY
play.cartesia.ai/keys- LLM_MODEL
fournisseur/modèle, par exempleopenai/gpt-5.4-mini- OPENAI_API_KEY
- Si
LLM_MODELcommence par openai/ - ANTHROPIC_API_KEY
- Si
LLM_MODELcommence par anthropic/ - AI_GATEWAY_API_KEY
- Pour tout autre fournisseur
- APP_PASSWORD
- Facultatif en local. Obligatoire sur Vercel, ou none pour rendre l'app publique
- TRUST_PROXY
- Facultatif. 1 derrière votre propre reverse proxy
Commencez à parler
Ouvrez l'URL affichée par
npm run dev. Choisissez les deux langues et appuyez sur Start talking. Parlez ensuite chacun votre tour, sans rien toucher entre deux tours. Un téléphone a besoin de HTTPS pour le micro, donc déployez l'app ou utilisez un tunnel comme cloudflared pour l'essayer sur un téléphone.
Créez-le avec votre agent de code
Un prompt qui indique à votre agent de code par où commencer et quoi lire en premier.
Prompt
Build a two-person voice translation app with Cartesia. Start from https:/ and follow its AGENTS.md for the commands, files and rules. The server mints a 60 second access token with only the stt and tts grants. The browser streams the microphone to ink-2 on /stt/turns/websocket with @cartesia/cartesia-js, sends each turn to an AI SDK route that replies with the language code and the translation, and speaks it with sonic-3.6 over the TTS WebSocket. Keep the mute gate that sends silence to Ink 2 while Sonic plays. If I don't have a Cartesia API key yet, follow https:/ to get one.
Comment ça marche
Pourquoi ça fonctionne ainsi
La traduction démarre avant la fin du tour
Quand vous faites une pause, Ink 2 envoie une première supposition que vous avez peut-être fini, et la page commence tout de suite à traduire. Si vous aviez fini, elle utilise cette traduction. Si vous continuez, elle l'annule et attend la phrase entière.
Le LLM indique qui a parlé
Ink 2 n'indique pas quelle langue il a entendue. La réponse de traduction commence donc par un code de langue sur sa propre ligne. La page utilise ce code pour choisir la voix et le côté de l'écran.
L'app coupe son micro quand elle parle
Pendant la lecture d'une traduction, le micro envoie du silence à Ink 2. Sinon l'app entendrait sa propre voix et la retraduirait, sans fin.
Personnalisez-le
Utilisez une autre voix
La voix de chaque langue est définie dans lib/languages.ts. Choisissez-en d'autres dans la bibliothèque de voix Cartesia, ou utilisez votre propre clone, créé uniquement avec l'accord de la personne.
Changez la façon de traduire
Modifiez lib/prompt.ts pour des traductions formelles ou familières. Gardez le code de langue sur la première ligne de la réponse, car l'app le lit pour choisir la voix.
Réglez la détection de tour
Ink 2 décide quand un tour se termine. Pour qu'il attende plus longtemps ou coupe plus tôt, réglez turn_end_timeout_ms quand l'app ouvre la connexion vocale. Cet appel est dans lib/audio/listener.ts.
Rejoignez les équipes qui passent à Cartesia
Questions
Ma clé API Cartesia est-elle en sécurité ?
Oui. La clé reste sur le serveur. Le navigateur reçoit un token valable 60 secondes, qui sert seulement à transcrire la voix et à synthétiser du texte.
Où va la conversation ?
La parole des deux personnes part chez Cartesia, et le texte de chaque tour chez votre fournisseur de LLM pour la traduction. Prévenez l'autre personne avant de commencer.
Les deux personnes peuvent-elles parler en même temps ?
Non. Il y a un seul micro et un tour à la fois, donc attendez qu'une traduction ait fini de jouer. Vous n'appuyez sur rien entre les tours, car Ink 2 distingue une pause de la fin d'une phrase.
Quelles langues sont prises en charge ?
Deux langues au choix parmi l'anglais, l'espagnol, le français, le hindi et le japonais. Ce sont les langues qu'Ink 2 comprend. Ajouter une autre langue demande un autre modèle de transcription.
Est-ce que ça marche sur un téléphone ?
La mise en page est d'abord pensée pour le téléphone. Elle a été testée dans Chrome sur ordinateur avec une voix enregistrée comme micro, pas sur un vrai téléphone.
Faut-il un casque ?
Non. L'app coupe son propre micro pendant qu'elle parle et un tiers de seconde après. Dans une pièce bruyante, des voix en fond peuvent quand même lancer un tour par erreur.
Existe-t-il un guide pas à pas pour ce modèle ?
Oui. La recette explique le code, le README couvre l'installation, les variables d'environnement et le déploiement, et la doc sur les événements de tour d'Ink 2 détaille le côté Cartesia.
Plus d'exemples du cookbook
Commencer aujourd'hui
Parlez à un expert.
Échangez avec notre équipe et découvrez comment Cartesia peut vous aider à créer des expériences vocales de premier plan.
Commencez à développer.
Accédez à nos modèles via l'API et mettez un agent vocal en production en quelques minutes.

