Beruflich Dokumente
Kultur Dokumente
SPEECH API
DE
MICROSOFT
Gonzales Coronel
Mario Ivan
Mendoza Valeria
Ordaz Cervantes
Erika Itzel
ADMINISTRACION DE
SERVIDORES
5701
Contenido
Introduccin ....................................................................................................................................... 2
APIS de voz a texto .......................................................................................................................... 2
Translator Speech Api De Microsoft .............................................................................................. 3
Introduccin al reconocimiento de voz mediante la API REST ............................................. 5
Como trabaja ............................................................................................................................... 12
Creacin de una instancia de Azure SQL Database en Azure Portal .................................... 13
Iniciar sesin en el portal de Azure ..................................................................................... 13
Creacin de una Base de datos SQL .................................................................................. 13
CONSULTA A SQL DATABASE ............................................................................................ 15
Introduccin
Hay tecnologas que estn entre nosotros desde hace mucho tiempo pero que por
alguna razn no terminan de cuajar, y esto probablemente se aplique a la
tecnologa del habla, del reconocimiento de voz, que por algn motivo s, las
tenemos ahora en los asistentes del telfono (lo cual no creo que sea
extremadamente exitoso), pero que no se han convertido en tecnologas que
usemos con frecuencia o que nos sean cotidianas. No encuentro una razn para
que las cosas sean as, pero lo son.
Sin embargo, eso no quiere decir que no se hagan esfuerzos precisamente para
que los desarrolladores busquen nuevos nichos de mercado para las tecnologas
del habla y ahora Microsoft ha decidido liberar una nueva versin de su Translator
API, el cual puede dar a los desarrolladores las mismas facilidades que se tienen
en el Skype Translator y en las apps de iOS y Android de Microsoft Translator.
Las APIS de voz a texto convierten el habla humana en texto que se puede utilizar
como entrada o comandos para controlar su aplicacin.
Tanto las API de voz como de texto enriquecen el texto transcrito aadiendo
maysculas y puntuacin, enmascaramiento de la profanacin y normalizacin del
texto.
Con Bing Speech API puede desarrollar aplicaciones utilizando REST API para
convertir el audio hablado en texto.
Requisitos previos
Para acceder al punto final de REST, debe suscribirse a la API de voz que forma
parte de Microsoft Cognitive Services (anteriormente Project Oxford). Despus de
suscribirse, tendr las claves de suscripcin necesarias para ejecutar esta
operacin. Se pueden utilizar tanto las claves primarias como las secundarias.
Para obtener detalles sobre la suscripcin y administracin de claves, consulte
Suscripciones.
Grabe un archivo de audio corto de usted diciendo algo corto (por ejemplo:
"Cmo es el clima hoy?" O "Buscar pelculas divertidas para ver.") Pasar este
audio a la Bing Speech API a travs del punto final REST para tenerlo Transcribir
en texto. O bien, puede utilizar el micrfono en el momento de la solicitud.
Nota
La API de reconocimiento de voz admite audio / wav utilizando los
siguientes cdigos:
PCM single channel
Empezando
Para utilizar el punto final REST de Discurso API, el proceso es el siguiente:
Autenticacin
Para acceder al punto final REST, necesita un token OAuth vlido. Para obtener
este token, debe tener una clave de suscripcin de la API de voz. Cuando solicita
un token, el servicio de token enviar el token de acceso como un Token de JSON
Web (JWT). El token de acceso a JWT se pasa a travs del encabezado de
solicitud de voz. El token tiene una expiracin de 10 minutos. La recomendacin
es examinar el token de JWT y comprobar el tiempo de caducidad en lugar de
codificarlo de forma segura a 10 minutos utilizando la propiedad Expiration
JwtSecurityToken.
/*
* This class demonstrates how to get a valid O-auth token.
*/
public class Authentication
{
public static readonly string FetchTokenUri =
"https://api.cognitive.microsoft.com/sts/v1.0";
private string subscriptionKey;
private string token;
private Timer accessTokenRenewer;
TimeSpan.FromMinutes(RefreshTokenDuration),
TimeSpan.FromMilliseconds(-1));
}
https://speech.platform.bing.com/speech/recognition/interactive/cognitiveservice
s/v1?language=it-IT
Modo de reconocimiento
Encabezados de solicitudes
C#Copiar
Copiar
POST
https://speech.platform.bing.com/speech/recognition/interactive/cognitiveservice
s/v1?language=en-US&format=detailed&requestid=39530efe-5677-416a-98b0-
93e13ec93c2b HTTP/1.1
Accept: application/json;text/xml
Content-Type: audio/wav; codec="audio/pcm"; samplerate=16000
Authorization: Bearer
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzY29wZSI6Imh0dHBzOi8vc3BlZWNoLnBsYXRmb3J
tLmJpbmcuY29tIiwic3Vic2NyaXB0aW9uLWlkIjoiMWRjYWQxZTQzZWZlNDM2MmIzMjg2ZWY2OTIzYTA
5MjYiLCJwcm9kdWN0LWlkIjoiQmluZy5TcGVlY2guRjAiLCJjb2duaXRpdmUtc2VydmljZXMtZW5kcG9
pbnQiOiJodHRwczovL2FwaS5jb2duaXRpdmUubWljcm9zb2Z0LmNvbS9pbnRlcm5hbC92MS4wLyIsImF
6dXJlLXJlc291cmNlLWlkIjoiL3N1YnNjcmlwdGlvbnMvYTM0Y2FkYmYtNTU5My00ZWYxLWI0MjItMDJ
hMDMyNmQ2NmZkL3Jlc291cmNlR3JvdXBzL1Rlc3QvcHJvdmlkZXJzL01pY3Jvc29mdC5Db2duaXRpdmV
TZXJ2aWNlcy9hY2NvdW50cy9UZXN0U1BlZWNoIiwiaXNzIjoidXJuOm1zLmNvZ25pdGl2ZXNlcnZpY2V
zIiwiYXVkIjoidXJuOm1zLnNwZWVjaCIsImV4cCI6MTQ5MzQyOTE2OX0._Bhx7nneMto2gjAAwmIO6ei
SejQ2Nqhd8xFl0odjk40
Host: speech.platform.bing.com
Transfer-Encoding: chunked
Expect: 100-continue
/*
* Open a request stream and write 1024 byte chunks in the stream one at
a time.
*/
byte[] buffer = null;
int bytesRead = 0;
using (Stream requestStream = request.GetRequestStream())
{
/*
* Read 1024 raw bytes from the input audio file.
*/
buffer = new Byte[checked((uint)Math.Min(1024, (int)fs.Length))];
while ((bytesRead = fs.Read(buffer, 0, buffer.Length)) != 0)
{
requestStream.Write(buffer, 0, bytesRead);
}
// Flush
requestStream.Flush();
}
}
Despus de procesar la solicitud, Bing Speech API devuelve los resultados en una
respuesta como formato JSON. El siguiente fragmento de cdigo muestra un
ejemplo de cmo puede leer la respuesta del flujo:
/*
* Get the response from the service.
*/
Console.WriteLine("Response:");
using (WebResponse response = request.GetResponse())
{
Console.WriteLine(((HttpWebResponse)response).StatusCode);
Console.WriteLine(responseString);
Console.ReadLine();
OK
{
"RecognitionStatus": "Success",
"Offset": 22500000,
"Duration": 21000000,
"NBest": [{
"Confidence": 0.941552162,
"Lexical": "find a funny movie to watch",
"ITN": "find a funny movie to watch",
"MaskedITN": "find a funny movie to watch",
"Display": "Find a funny movie to watch."
}]
}
Como trabaja
Esta API trata de la primera solucin completa optimizada para las conversaciones
de la vida real (contrarias a los comandos simples que se pueden dar va voz a la
mquina), disponible en el mercado. Explica tambin cmo trabaja usando
tecnologas como redes neuronales profundas para el reconocimiento del habla y
traduccin de textos, y bosqueja las cuatro etapas de la traduccin del habla:
Se crea una base de datos SQL de Azure con un conjunto definido de recursos de
proceso y almacenamiento. La base de datos se crea dentro de un grupo de
recursos de Azure y en un servidor lgico de Azure SQL Database.
1. Haga clic en el botn Nuevo de la esquina superior izquierda de Azure
Portal.
2. En la pgina Nuevo, seleccione Bases de datos y, en la pgina Bases de
datos, seleccione SQL Database.
3. Rellene el formulario de SQL Database con la siguiente informacin
Configuracin
Valor sugerido Descripcin
Ahora que ha creado una base de datos de ejemplo en Azure, vamos a usar la
herramienta de consulta integrada en Azure Portal para confirmar que puede
conectarse a la base de datos y consultar los datos.
1.En la barra de herramientas de la pgina SQL Database de la base de
datos, haga clic en Herramientas. Se abre la pgina Herramientas.
2. Haga clic en Editor de consultas (versin preliminar), en la casilla de
verificacin Trminos de vista previa y en Aceptar. Se abre la pgina
Editor de consultas.
3. Haga clic en Inicio de sesin y despus, cuando se le solicite,
seleccione Autenticacin de servidor SQL Server y especifique el inicio de
sesin y la contrasea de administrador de servidor que cre antes.
4. Una vez autenticado, escriba la siguiente consulta en el panel del editor
de consultas.
SQL
SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName
FROM SalesLT.ProductCategory pc
JOIN SalesLT.Product p
ON pc.productcategoryid = p.productcategoryid;