- Copilot Studio permite agentes multilingües, pero el idioma principal se fija al crear el agente y solo puede cambiarse su región.
- Los idiomas secundarios requieren descargar, traducir y volver a cargar archivos de localización, manteniendo sincronizadas todas las cadenas.
- La voz en Copilot integra reconocimiento, tiempos de espera, interrupción, SSML y transferencia de llamadas, con amplias opciones por idioma.
- Microsoft 365 Copilot admite menos idiomas que la interfaz, por lo que a veces exige reformular las solicitudes en un idioma soportado.
Si has empezado a usar Copilot y te estás preguntando cómo cambiar el idioma de voz de Copilot o hacer que entienda y responda en distintos idiomas, no eres la única persona. Entre Copilot Studio, Microsoft 365 Copilot, las funciones de voz en Dynamics 365 Contact Center y guías sobre usar Hey Copilot y la voz en Windows 11, hay muchas opciones… y también bastantes matices que conviene conocer.
A continuación encontrarás una guía muy completa, en castellano de España y con lenguaje claro, para entender qué se puede y qué no se puede hacer con los idiomas, la voz y la región en Copilot: desde configurar agentes multilingües en Copilot Studio hasta saber qué idiomas admite Microsoft 365 Copilot, cómo funciona la voz interactiva y qué limitaciones te vas a encontrar en el día a día.
Idiomas y región del idioma principal en Copilot Studio

Copilot Studio permite crear agentes en muchos idiomas distintos, de forma que puedas llegar a usuarios de varios países sin tener que duplicar todo el proyecto. Sin embargo, hay una regla clave que debes grabarte a fuego: el idioma principal del agente solo se elige al crear el agente y no se puede cambiar después.
Lo que sí puedes hacer, si el idioma lo permite, es cambiar la región asociada a ese idioma principal. Por ejemplo, si tu agente está en español, podrías pasar de la variante de España a otra región compatible, siempre que esté disponible en la lista de regiones para ese idioma.
El cambio de región se hace desde la configuración del propio agente: entras en Configuración, vas a Idiomas, editas el idioma principal y eliges la región que te interese. Esto te viene bien si necesitas ajustar matices regionales (como ortografía, formato de fecha o expresiones propias) sin rehacer el agente desde cero.
Una vez creado el agente, Copilot Studio ya genera contenido base en el idioma de destino: temas del sistema y temas personalizados predefinidos en la página de Temas, todo adaptado a ese idioma principal.
Copilot Studio como plataforma multilingüe

El gran punto fuerte de Copilot Studio es que permite crear agentes multilingües que detectan automáticamente el idioma del usuario (basándose en la configuración del navegador o del cliente) y responden en ese mismo idioma cuando está admitido.
Al diseñar el agente, tienes que elegir un idioma principal, que es en el que harás toda la edición de temas y contenido. Ese idioma principal actúa como base: todo se diseña ahí y luego se localiza al resto de idiomas.
Después puedes añadir idiomas secundarios. A partir de ese momento, eres tú (o tu equipo de localización) quien se encarga de traducir los mensajes de los temas que crees. En agentes que usan orquestación generativa, Copilot traduce automáticamente los mensajes generados, pero el resto del contenido lo sigues gestionando tú.
Cuando un usuario inicia una sesión con un agente publicado, el sistema intenta ajustar el idioma del agente al idioma del navegador o cliente. Si esa lengua no está soportada, o no se detecta nada, el agente vuelve a su idioma principal como alternativa.
Además, puedes diseñar tu agente para que cambie de idioma en medio de una conversación, ya sea de forma explícita (mediante lógica en un tema) o automáticamente siguiendo el idioma que el usuario vaya usando en cada turno.
Cómo añadir idiomas secundarios a un agente

Agregar nuevos idiomas a un agente de Copilot Studio no tiene mucho misterio a nivel de interfaz, aunque luego la parte de localización sí requiere más cariño. El flujo básico para añadir idiomas secundarios es el siguiente:
Primero entras en la página de Configuración del agente y seleccionas Idiomas. Desde ahí, eliges la opción de añadir un nuevo idioma, revisas la lista y marcas los que quieras incorporar como secundarios al agente.
En el panel de alta de idiomas, seleccionas uno o varios idiomas y pulsas Agregar. Una vez añadidos, vuelves a la lista, compruebas que todo está bien y cierras la página de configuración. A partir de ese momento, esos idiomas ya forman parte del repertorio del agente.
Ten en cuenta que, tras añadirlos, tendrás que gestionar las traducciones (descargar cadenas, traducirlas y volver a subirlas) para que el agente no deje partes sin localizar y no se vean mezclas raras entre el idioma principal y los secundarios.
Gestión de la localización en agentes multilingües
En Copilot Studio, todas las tareas de creación y edición de temas se realizan siempre en el idioma principal del agente. Para traducirlos al resto de idiomas, se utiliza un flujo de localización basado en archivos JSON o ResX.
Cuando descargas por primera vez el archivo de localización para un idioma secundario, todas las cadenas aparecen en el idioma principal. Ese archivo es el que debes pasar por tu proceso de traducción habitual, ya sea con traductores humanos, herramientas de traducción asistida o los sistemas que uses en tu organización.
El proceso estándar para preparar contenido localizado suele ser:
Vas a la página de Configuración del agente, apartado Idiomas, y en la lista de idiomas secundarios eliges la opción de cargar/actualizar. Desde el panel de Actualizar localización eliges el formato (JSON o ResX), descargas el archivo de localización actual y lo abres en tu editor.
Después sustituyes las cadenas en idioma principal por su traducción, manteniendo los identificadores intactos. Cuando termines, vuelves al panel, subes el fichero traducido y cierras la configuración. Así tu agente ya tendrá el contenido preparado para responder en ese idioma secundario.
Actualización de contenido localizado y sincronización de cadenas
Cuando modificas el contenido en el idioma principal (añades nuevos mensajes o cambias textos), los idiomas secundarios no se actualizan solos. Siempre que haya cambios en las cadenas base, deberás repetir el proceso de descarga, traducción y carga de los archivos de localización para mantener todo al día.
En la práctica, cuando descargues de nuevo el archivo de localización de un idioma secundario verás que las cadenas nuevas aparecen todavía en el idioma principal, mientras que las que ya estaban traducidas se mantienen como las dejaste.
El matiz importante es que, si has cambiado el texto original de alguna cadena en el idioma principal, la cadena traducida correspondiente seguirá mostrando la versión antigua, porque los identificadores no cambian. Esto puede producir una desincronización entre lo que se ve en el idioma principal y en los secundarios.
Por eso es buena práctica comparar el nuevo archivo de localización con el que subiste la última vez para detectar qué cadenas del idioma principal han cambiado y así saber qué hay que retraducir. Si no cuidas esto, acabarás con agentes donde el español va por un lado, el francés por otro y la experiencia del usuario se resiente.
Localización de contenido dinámico en Adaptive Cards
Un punto algo más técnico, pero muy relevante si usas interfaces ricas, es que los archivos de localización no incluyen cadenas mixtas de Adaptive Cards cuando estas combinan texto estático y variables.
Para que ese contenido dinámico de las tarjetas se pueda localizar, hay que aplicar una solución alternativa: crear una variable de texto intermedia que contenga la cadena completa (texto fijo + variables) y usar solo esa variable en la tarjeta adaptable.
El procedimiento consiste en colocar antes de la tarjeta un nodo de Establecer valor de variable, que luego ajustas en el editor de código para convertirlo en un nodo de tipo SetTextVariable. En ese nodo defines una nueva variable y rellenas el campo de valor con el texto completo, insertando las variables donde corresponda.
Después actualizas la Adaptive Card para que solo haga referencia a esa variable. Cuando descargues el archivo de localización, el valor de esa variable (con texto estático y referencias a variables) aparecerá como una cadena localizable dentro de una acción setVariable, y ya podrás traducirlo sin perder las partes dinámicas.
Cómo probar un agente multilingüe
Para comprobar que tu agente se comporta bien en varios idiomas, Copilot Studio incluye un panel de pruebas bastante flexible. Puedes seleccionar un idioma concreto y ver cómo entiende y responde el bot.
Desde ese panel, abres el menú de opciones (los tres puntos) y eliges el idioma que quieras. El panel de pruebas se recarga usando esa lengua, mientras que el lienzo de edición sigue fiel al idioma principal y, importante, no te dejará guardar cambios en temas hasta que vuelvas a ese idioma base.
A partir de ahí puedes escribir mensajes de prueba en el idioma seleccionado y ver si los temas se disparan correctamente, cómo se comportan las traducciones y si la orquestación generativa responde como esperas.
Otra opción es cambiar el idioma del navegador a uno de los que soporta el agente y entrar en el sitio web de demostración. El sitio se abre directamente en ese idioma y el agente conversa en la lengua correspondiente. Si además quieres usar comandos de voz, consulta cómo usar Hey Copilot.
Hacer que el agente cambie de idioma en una conversación
Si quieres que tu agente pueda cambiar de idioma a mitad de sesión, puedes apoyarte en la variable de sistema User.Language. La lógica para cambiarla puede vivir en cualquier tema, aunque la recomendación es hacerlo justo después de un nodo de Pregunta, para garantizar que todos los mensajes que vengan a continuación se emitan en el mismo idioma.
El truco está en establecer User.Language con uno de los idiomas secundarios del agente. En cuanto lo haces, el idioma que “habla” el agente cambia de inmediato y las siguientes respuestas se generan ya en ese nuevo idioma.
Esto es útil, por ejemplo, si en un flujo inicial le preguntas al usuario en qué idioma quiere continuar y, según su elección, actualizas la variable User.Language. A partir de ahí, todo el flujo se desarrolla en esa lengua.
Cambio dinámico de idioma según lo que escribe el usuario
Además del cambio explícito, Copilot Studio ofrece la posibilidad de cambiar de idioma dinámicamente a lo largo de la misma conversación, detectando en qué idioma escribe el usuario en cada mensaje.
Para esto se suele usar un tema con desencadenador “Se recibe un mensaje”, que actúa como filtro general sobre todo lo que llega. Dentro de ese tema, se configura una solicitud personalizada que determine el idioma del mensaje. El resultado se guarda en una variable (por ejemplo, DetectedLanguage.structuredOutput.languagepersonalizada).
A continuación se crea una condición basada en esa variable y se ramifica la lógica según el idioma detectado. En cada rama, se añade un nodo de Establecer valor de variable que actualiza User.Language con el idioma correspondiente.
De esta forma, si el usuario empieza escribiendo en neerlandés y luego pasa al inglés, el agente puede cambiar automáticamente de neerlandés a inglés tantas veces como sea necesario durante la sesión, siempre que esos idiomas estén configurados como soportados por el agente.
Prioridad de idioma y restauración del idioma por defecto
Cuando un agente está configurado para el cambio de idioma dinámico y se establece la variable User.Language, esa preferencia actúa como una anulación persistente para ese usuario. Es decir, el sistema aplica un orden de prioridad a la hora de decidir en qué idioma responder:
Primero, la prioridad más alta la tiene la preferencia de idioma que el propio usuario haya establecido y que quede guardada como override en su estado. En segundo lugar, se tiene en cuenta el idioma del mensaje entrante (Activity.Locale) siempre que coincida con uno de los idiomas soportados. Y, en último término, se usa el idioma principal del agente como recurso de respaldo.
Si quieres “limpiar” esa anulación después de haber hecho pruebas con el cambio dinámico de idioma, puedes enviar el comando /debug clearstate al agente. Esto borra el idioma persistente del estado del usuario y el agente vuelve a evaluar el idioma según el navegador o el idioma principal.
Comportamiento de un agente multilingüe ante idiomas no configurados
Si un usuario configura su navegador en un idioma que no tengas activado en el agente, Copilot no intenta hacer malabares: simplemente vuelve a su idioma principal. De ahí la importancia de elegir bien ese idioma base, ya que será el comodín para cualquier situación no cubierta.
Recuerda también que, aunque puedes cambiar la región del idioma principal (cuando hay varias variantes disponibles, como distintos países), no puedes cambiar el idioma en sí mismo una vez creado el agente. Si te equivocaste de idioma principal al arrancar el proyecto, la solución pasa por crear un nuevo agente.
Traducciones que faltan y errores al publicar agentes multilingües
Otro comportamiento importante: si añades nuevos mensajes en el idioma principal y no actualizas las traducciones en los idiomas secundarios, el agente mostrará esos textos sin traducir en el idioma principal incluso cuando el usuario esté usando otro idioma.
Esto no rompe el bot, pero sí afecta a la experiencia: el usuario verá partes en su idioma y partes en la lengua base, con lo que conviene mantener siempre al día los archivos de localización cuando introduzcas cambios en los temas.
Al publicar agentes multilingües también puede aparecer el error de “Error de validación del bot” con código SynonymsNotUnique. Este mensaje indica que en algún archivo de localización hay sinónimos duplicados o un sinónimo que coincide con el DisplayName de un elemento.
Normalmente, esto ocurre en un nodo que contiene un Entity.Definition.’closedListItem’ donde uno de los elementos de Synonyms no es único o coincide con el DisplayName. La regla es clara: todos los sinónimos para la misma entidad deben ser únicos y diferentes del DisplayName. Para arreglarlo, debes revisar el JSON o ResX del idioma secundario, localizar las entradas conflictivas y corregirlas.
Compatibilidad de idiomas en Copilot Studio
Copilot Studio ofrece niveles de compatibilidad por idioma para distintas características. No todos los idiomas están al mismo nivel ni para las mismas funciones. De forma general, Microsoft clasifica el soporte en tres fases: disponibilidad general (la más sólida), versión preliminar y sin soporte.
Para el lienzo de creación (la interfaz que ve el creador del agente), Copilot Studio usa el idioma del navegador. Entre los idiomas soportados para la interfaz se incluyen, entre otros: árabe, chino simplificado y tradicional, checo, danés, neerlandés, inglés (Estados Unidos), finés, francés (Francia), alemán, griego, hebreo, hindi, indonesio, italiano, japonés, coreano, noruego bokmål, polaco, portugués (Brasil), ruso, español (España), sueco, tailandés y turco.
Para los desencadenadores de eventos (que permiten crear agentes autónomos que reaccionan a eventos sin entrada directa del usuario), actualmente se soporta principalmente el inglés (Estados Unidos). Es decir, la parte más “técnica” de automatización externa está orientada de momento a esa variante de inglés.
En las respuestas generativas, orquestación y lenguaje de usuario, la lista de idiomas es más amplia: además de los ya mencionados, incorpora diferentes variantes de inglés (Australia, Reino Unido, Estados Unidos), francés (Francia y Canadá), portugués (Portugal y Brasil), español de España y de Estados Unidos, y otros muchos. Estos son los idiomas en los que los usuarios pueden escribir sus preguntas y recibir respuestas generadas por el agente.
La compatibilidad con voz se alinea en gran medida con esta lista: agentes que admiten respuestas de voz interactivas en árabe, chino (simplificado y tradicional), checo, danés, neerlandés, inglés (Australia, Reino Unido, Estados Unidos), finés, francés (Francia y Canadá), alemán, griego, hindi, indonesio, italiano, japonés, coreano, noruego bokmål, polaco, portugués (Brasil y Portugal), ruso, español (España y Estados Unidos), sueco, tailandés y turco.
Idiomas admitidos y errores de idioma en Microsoft 365 Copilot
Microsoft 365 Copilot no siempre admite los mismos idiomas que Copilot Studio, especialmente cuando hablamos de idioma de las solicitudes y las respuestas. Es relativamente habitual que la interfaz de usuario de Teams u Office esté traducida a muchos más idiomas que los que Copilot es capaz de procesar de forma inteligente.
Si utilizas Microsoft 365 Copilot y te aparece un error indicando que un idioma no es compatible, significa que en ese momento el sistema no puede procesar la solicitud en esa lengua concreta. Podrías ver ese error incluso aunque toda la interfaz de la aplicación esté perfectamente traducida a tu idioma.
Cuando esto pasa, el mensaje suele pedirte que reformules tu solicitud en uno de los idiomas admitidos y lo intentes de nuevo. Es decir, Copilot te obliga a “cambiar el idioma de voz” o de texto de tu petición a un idioma soportado si quieres recibir respuesta.
Microsoft va ampliando el catálogo de idiomas admitidos a medida que evoluciona el producto, y la documentación oficial se actualiza cuando se incorporan nuevas lenguas. Si trabajas en un entorno donde el idioma de trabajo no está aún soportado, tendrás que combinar Copilot con herramientas de traducción externas de momento.
Soporte y comunidad para dudas sobre Copilot
En caso de encontrarte con problemas de idioma, de voz o de configuración que no se resuelven con la documentación, Microsoft recomienda acudir a Microsoft Q&A para cuestiones avanzadas de Copilot. Aunque los foros de Respuestas (Answers) siguen existiendo, allí hay menos recursos específicos para probar y diagnosticar casos complejos con Copilot.
En Microsoft Q&A participa un grupo más especializado de personal técnico y otros usuarios que comparten experiencias, configuraciones y soluciones, lo que suele dar lugar a respuestas más afinadas cuando te atascas con un comportamiento extraño de idiomas, voz o integración.
Copilot Studio y voz interactiva con Dynamics 365 Contact Center
Cuando hablamos de “idioma de voz de Copilot” en un contexto de centro de contacto, entran en juego las capacidades de respuesta de voz interactiva (IVR) integradas con Dynamics 365 Contact Center. Aquí un agente habilitado para voz funciona de forma distinta a uno puramente de chat, porque trabaja con la modalidad de voz y DTMF (los tonos que se marcan desde el teclado telefónico).
Un agente de voz incluye temas de sistema específicos para escenarios de voz como detección de silencio, voz no reconocida o pulsación de teclado desconocida. Estos temas se añaden automáticamente cuando habilitas la voz en la configuración del agente y permiten manejar situaciones típicas de una llamada telefónica.
La activación de la opción Habilitar voz se hace desde Configuración > Voz del agente. Al hacerlo, también puedes decidir si la voz será la modalidad por defecto para la creación de temas y si vas a usar un enfoque básico (temas clásicos) o voz en tiempo real (orquestación generativa).
Si en algún momento dejas de usar el canal de telefonía, puedes desactivar la optimización para voz. Esto hará que la modalidad predeterminada vuelva a ser texto, desaparecerán las mejoras de reconocimiento de voz y no se crearán elementos específicos de voz, aunque el canal de telefonía como tal no se elimina hasta que lo modifiques tú.
Uso de la voz como modo principal de creación
Cuando la voz está habilitada, puedes elegir voz y DTMF como modalidad para cada nodo de tus temas. Además, existe una preferencia a nivel de agente para marcar que la voz sea el modo principal de creación, lo que garantiza que todos los campos que lo necesiten se configuren con la modalidad adecuada.
Esto afecta también a la disponibilidad de los mensajes según el canal: hay diferencias entre cómo se entregan mensajes en canales puramente de texto y en canales de texto y voz combinados. Por ejemplo, ciertos mensajes pueden quedar vacíos o no disponibles en voz si no están preparados con esa modalidad.
Reconocimiento de voz automático personalizado
En dominios especializados (sanidad, finanzas, etc.) es frecuente que el usuario hable usando términos técnicos o jerga que un sistema genérico podría no reconocer bien. Para mejorar esa precisión, Copilot Studio permite activar un reconocimiento automático de voz personalizado que se alimenta de los datos del propio agente.
Este ajuste se habilita desde Configuración > Voz del agente, marcando la opción para aumentar la precisión con los datos del agente. Tras guardar los cambios y publicar el agente, las llamadas deberían beneficiarse de un reconocimiento más fino en ese contexto concreto. Si necesitas configurar el reconocimiento a nivel de sistema, consulta cómo activar o desactivar el reconocimiento y acceso por voz en Windows 11.
Ajustes globales de voz: tiempos de espera, silencio y latencia
La configuración de Voz a nivel de agente permite establecer valores predeterminados de tiempo de espera y comportamiento que luego pueden ser sustituidos a nivel de nodo. Entre otros parámetros, puedes ajustar:
El tiempo de espera entre dígitos DTMF, es decir, cuántos milisegundos puede pasar entre pulsaciones cuando el usuario marca varios dígitos. También el tiempo de espera de finalización DTMF, que determina cuánto se espera a la tecla de terminación antes de asumir que ya se ha acabado la entrada.
La detección de silencio define cuánto tiempo puede estar el usuario sin decir nada antes de que el agente actúe (por ejemplo, repitiendo la pregunta o disparando un tema de silencio). Además, para la recogida de voz puedes controlar el tiempo de finalización de la expresión (pausa tras hablar) y el tiempo total de reconocimiento de voz.
Otra zona importante son los mensajes de latencia para operaciones de larga duración. Puedes decidir cuánto tarda el agente en enviar un mensaje informando de que está procesando algo y durante cuánto tiempo, como mínimo, se reproducirá ese mensaje aunque la operación termine antes.
Finalmente tienes un control de sensibilidad de voz, que equilibra la detección de voz frente al ruido de fondo. Reducirla es útil en entornos ruidosos o con manos libres; aumentarla ayuda en contextos muy silenciosos o con usuarios que hablan muy bajo. Este control, a diferencia de otros, no se anula a nivel de nodo.
Interrupción (barge-in) y cuándo desactivarla
Una función muy apreciada en IVR avanzados es la capacidad de interrumpir al agente mientras habla. Copilot Studio permite habilitar la interrupción tanto para entradas de voz como para DTMF, lo que hace más ágil la experiencia cuando el usuario ya conoce las opciones del menú y no necesita oír toda la locución.
No obstante, hay momentos en los que tiene sentido deshabilitar la interrupción, como en el primer mensaje del agente (para asegurar que todo el mundo escuche la información clave) o en mensajes de cumplimiento que no deberían cortarse.
La configuración se hace nodo a nodo: en cada Mensaje o Pregunta con modalidad voz y DTMF, puedes activar o desactivar la opción de permitir interrupción. El sistema trata las colas de mensajes en lote de forma que, al terminar una cola, la configuración de interrupción se restablece para el siguiente bloque.
Configuración detallada de silencio, repetición y acciones alternativas
Además de los tiempos de espera globales, puedes personalizar el comportamiento de un nodo concreto respecto al silencio del usuario. Para cada Pregunta de voz puedes elegir entre usar la configuración global, desactivar el tiempo de espera (esperar indefinidamente) o indicar un número específico de milisegundos antes de repetir la pregunta.
También se pueden definir acciones alternativas: cuántas veces se repite la misma pregunta, qué mensaje se utiliza para esas repeticiones y qué hace el agente tras superar el número máximo de intentos (por ejemplo, transferir a un agente humano o finalizar la llamada).
Para la entrada de voz en concreto, se ajustan parámetros como el tiempo de pausa que se considera fin del discurso y el tiempo máximo que se da al usuario una vez empieza a contestar. Esto permite adaptar el comportamiento a llamadas con usuarios más pausados o contextos donde la rapidez es clave.
Mensajes de latencia y operaciones largas
En escenarios donde el agente desencadena operaciones de back-end que tardan en completarse (consultas pesadas, integraciones externas, etc.), es buena idea configurar mensajes de latencia que informen al usuario de que el sistema sigue trabajando.
En Copilot Studio, puedes hacer que el agente envíe y repita un mensaje mientras un flujo de Power Automate sigue en ejecución. En las propiedades del nodo de acción seleccionas la opción de enviar mensaje, defines el texto (incluso con SSML para ajustar voz, pausas y énfasis) y controlas cuánto tiempo se espera antes de repetirlo y cuál es el tiempo mínimo de reproducción.
Terminación de llamada, contestadores y variables de contexto
En un IVR real también necesitas que el agente pueda finalizar la llamada de forma explícita cuando el flujo termina. Esto se configura añadiendo un nodo de finalización de conversación en el tema correspondiente, dentro del apartado de administración de temas.
Asimismo, existe un tema de sistema para detección de contestador automático, que permite detectar cuando una llamada entra en un buzón de voz y dejar un mensaje grabado. En el nodo de Mensaje de ese tema defines el texto que se reproduce cuando el agente detecta una contestadora.
Para integrar todo esto con Dynamics 365 Contact Center, Copilot Studio admite variables de contexto que se pasan junto con la llamada cuando se transfiere a un agente humano o a otros sistemas. Entre ellas están, por ejemplo, el identificador de la llamada del usuario, el número al que se ha llamado, el encabezado SIP UUI, el tipo de entrada (voz o DTMF), la última tecla marcada, si solo se permite DTMF y valores de confianza del reconocimiento de voz.
Esas variables se pueden utilizar para enriquecer la experiencia del agente humano que recibe la llamada (mostrando contexto previo, datos recogidos durante la interacción con el bot, etc.) y para tomar decisiones de enrutamiento inteligente dentro del centro de contacto.
Formatear la voz con SSML y cambiar “cómo suena” Copilot
Más allá de elegir idioma y voz, Copilot Studio permite afinar bastante cómo suena el agente gracias al uso de SSML (Speech Synthesis Markup Language). SSML funciona con etiquetas similares a HTML que envuelven el texto que quieres modificar; también puedes combinarlo con herramientas de voz como Wispr Flow para convertir tu voz en flujos de trabajo y productividad.
Entre las etiquetas más útiles están <audio> (para insertar archivos de audio externos), <break> (para insertar pausas), <emphasis> (para marcar énfasis en determinadas palabras), <prosody> (para ajustar tono, velocidad y volumen) y <lang> (para alternar idiomas de locución dentro de un mismo mensaje cuando usas una voz neuronal multilingüe).
Desde la interfaz de Copilot Studio puedes insertar estas etiquetas directamente en los nodos de Mensaje o Pregunta con modalidad de voz. El menú de etiquetas SSML te permite insertar la plantilla de etiqueta y luego solo tienes que rodear las partes del texto que quieras modificar. Es posible combinar múltiples etiquetas y personalizar diferentes fragmentos de un mismo mensaje con estilos de voz distintos.
Transferencias, integración con telefonía y futuro de la traducción en tiempo real
Copilot Studio también hace posible transferir llamadas a números externos (PSTN o enrutamiento directo) y a representantes humanos. Para transferencias externas se configura un nodo específico donde indicas el número de teléfono y, opcionalmente, un encabezado SIP UUI con pares clave=valor que pueden leer sistemas externos. Actualmente, estas transferencias no admiten el uso de variables en el número.
Mirando un poco más allá, Microsoft está trabajando en funciones de traducción de voz en tiempo real en videollamadas de Teams, impulsadas por Copilot. La idea es que la voz de una persona se pueda simular y traducir en directo a otro idioma, de forma que el resto de participantes escuchen otra pista de audio, en otro idioma, pero con un timbre muy similar al de la voz original.
Esta función, pensada sobre todo para empresas y organizaciones que no pueden costear un intérprete, ofrecerá inicialmente un conjunto de idiomas como castellano, inglés, alemán, francés, italiano, coreano, mandarín, japonés y portugués de Brasil. Antes de cada llamada, los usuarios tendrían que dar su consentimiento y elegir qué idioma quieren que se use.
Microsoft ha recalcado que no se trata de un “deepfake” en el sentido clásico, ya que no se simula que hables perfectamente otro idioma a nivel naturalista, sino que se genera una pista de audio alternativa que respeta al máximo tu voz original pero traducida. Esta línea forma parte de la evolución continua de Copilot hacia experiencias de comunicación multilingüe más fluidas tanto en texto como en voz.
Con todo lo anterior, queda claro que cambiar el idioma de voz de Copilot no es solo una cuestión de menú, sino de entender bien qué idiomas soporta cada componente (Studio, Microsoft 365, Contact Center), cómo se gestionan las traducciones y cómo influyen variables como User.Language, la detección automática de idioma o los ajustes de voz y SSML. Dominar estas piezas te permitirá construir experiencias de Copilot realmente naturales, multilingües y adaptadas al contexto en el que trabajes, evitando sorpresas con idiomas no admitidos o mensajes que se cuelan en el idioma equivocado.
Redactor apasionado del mundo de los bytes y la tecnología en general. Me encanta compartir mis conocimientos a través de la escritura, y eso es lo que haré en este blog, mostrarte todo lo más interesante sobre gadgets, software, hardware, tendencias tecnológicas, y más. Mi objetivo es ayudarte a navegar por el mundo digital de forma sencilla y entretenida.
