¿Cuánto tiempo llevaría crear una aplicación como Siri o Cortana?

Primero, debe comprender si hay algún caso de uso en la reconstrucción de Siri o Cortana. Solo puedo pensar en dos casos: 1: desea aprender y ver lo que se necesita, solo por diversión, 2: está creando otro producto / aplicación que requiere una funcionalidad similar a Siri / Cortana.

Uno de los grandes obstáculos para construir algo como Siri / Cortana es que necesitan mucha, MUCHA información. El reconocimiento de voz en sí mismo es una tarea desalentadora para comenzar, si necesita tanta precisión como estas: diccionarios robustos, lenguaje / modelos acústicos, etc. Digamos que te equivocaste con esta parte, la siguiente parte es domesticar la interacción. El modelo de interacción es un pozo sin fondo: siempre puede tomar más datos.

Ahora, si solo quiere construirlo para el primer caso de uso, es decir, por diversión: entonces no tiene que preocuparse por la precisión de su modelo. Puede comenzar con la API de CMU Sphinx Api o la API de voz de Google para iniciar su grabación de voz y luego crear un modelo de interacción divertido como desee. Esto no es fácil de hacer, pero tampoco es demasiado difícil. (Intenté jugar con la api sphinx de CMU y lo recomiendo encarecidamente para una integración más rápida / ordenada. También tiene documentación bien escrita sobre las apis android / ios, como aquí: Creación de aplicaciones con pocketsphinx)

Si es para el segundo caso de uso, su objetivo final podría ser que su aplicación / producto esté integrado en uno de estos grandes, porque no tiene sentido luchar contra ellos por los datos. Si ese es el caso, solo debe tratar de impulsar una demostración plausible con casos de prueba altamente específicos y crear un entorno similar a Siri / Cortana para esos casos.

Podría estar totalmente fuera de línea aquí, pero si no, espero que ayude un poco.

Difícil de decir, su problema principal es el reconocimiento de voz / voz. Diría que si no puede obtener una biblioteca preconstruida para cambiar las palabras habladas en texto, entonces eso es una pared de ladrillos, está más allá del 99.99% de los programadores con mucha experiencia, y obviamente está completamente fuera del alcance de un novato.

Luego, una vez que haya recibido su texto, deberá analizarlo de alguna manera en algo significativo, es decir, detectar la diferencia entre ‘¿dónde está Starbucks más cercano?’ y ‘¿qué es Starbucks?’ Creo que será más fácil que esas cosas de voz, pero a menos que consigas una biblioteca que lo haga por ti, entonces probablemente sea otro muro de ladrillos para la mayoría de los programadores.

Luego, una vez que haya analizado los datos para alimentar a Google Maps, o haga una cita en su calendario o lo que sea, ese bit es probablemente bastante fácil.

¿Cuanto tiempo tardaría? Dependiendo de la disponibilidad de la biblioteca y sus habilidades, diría que entre unas pocas semanas y nunca.

Siri o Cortana no son realmente aplicaciones sino servicios.

Del lado de la aplicación, no es algo que no puedas hacer. Lado del servicio, ni siquiera lo intente, fue construido por grandes equipos con grandes presupuestos para equipos. Simplemente ejecutar dicho servicio cuesta más de lo que puede pagar, ni siquiera piense en construirlo.

More Interesting

¿Cuál es el mejor manual de usuario de software que encontraste?

¿Cuál es el procedimiento para integrar RFID (módulo EM18 de baja frecuencia) con el software de la biblioteca koha?

¿Existe algún software ERP / CRM de código abierto con gestión de documentos incorporada y un sistema de inteligencia empresarial disponible en el mercado?

¿Por qué Windows no le permite terminar por la fuerza los programas?

Adobe Systems (empresa): ¿Cuál es la diferencia entre Photoshop, Lightroom, Elements, Illustrator, etc.?

¿Cuál es aproximadamente el tamaño de archivo / directorio más pequeño posible del software para ejecutar y mantener una criptomoneda funcional y completa?

¿Por qué a los empleados de software les disgusta los trabajos de viaje?

¿Debería todo el software ser de código abierto?

¿Cuál es la diferencia entre las interrupciones de hardware y software?

¿Qué podría hacer un ingeniero de software moderno con una minicomputadora PDP11 vintage de 1970 que su propietario original no podía?

¿Por qué mi aplicación obtiene solo 10 descargas diarias incluso después de 9 meses? ¿Qué puedo hacer para aumentar las instalaciones?

¿Cómo explicaría lo que realmente sucede en el lanzamiento / implementación de un producto de software, sitio web o aplicación a una persona UX?

¿Cuál es la mejor aplicación de periódico Android con noticias imparciales?

¿Qué software de escáner de código de barras para administrar el inventario recomienda?

¿Qué software es más útil para el análisis sísmico de estructuras?