ChatGPT-3 no necesita presentación. Le haces cualquier pregunta y te responde en un santiamén. Pero la respuesta viene en forma de texto. ¿Qué pasaría si pudieras hablar con él, como cualquier asistente de voz como Siri?
No es ningún secreto que ChatGPT ha revolucionado el mundo de la IA. A diferencia de otros bots de IA, es capaz de comprender el contexto de una conversación y responder, haciéndote sentir como si estuvieras hablando con un humano y no con una máquina.
Pero como sigue siendo una especie de chatbot, debe ingresar una pregunta y obtener la respuesta en forma de texto. No es tan emocionante como hablar con un bot.
Este pensamiento me dio la idea de programar ChatGPT para que pueda usarse como un asistente de voz llamado VoiceGPT. Empecé a usar el procesamiento de lenguaje natural (NLP) para reconocer la voz y luego pasé la voz reconocida como una consulta al motor ChatGPT usando la API. Después de obtener una respuesta inteligente de ChatGPT, usé NLP nuevamente para convertirlo en una voz humana.
Fig. 1: Principio de funcionamiento de VoiceGPT
Necesitaba una buena herramienta de PNL para esto y el mismo OpenAI proporciona una, a saber, Whisper. Pero debido a limitaciones de tiempo y espacio, finalmente decidí usar la API de Google Natural Language.
Necesitamos comenzar combinando el NLP para el servicio ttX con ChatGPT. Para hacer esto, necesitamos una máquina que ejecute la API abierta, transmita la consulta recopilada por NLP y convierta la respuesta proporcionada por ChatGPT en una voz humana usando NLP.
Puede usar cualquier computadora portátil, pero elegí Raspberry Pi para ejecutar todo esto. Para capturar la voz para el reconocimiento, adjunté la capucha de voz; También se puede usar un micrófono USB con Raspberry Pi. Sin embargo, si está utilizando una computadora portátil para ejecutar el código VoiceGPT, no se requiere un micrófono USB. Puede usar el micrófono incorporado de la computadora portátil.
Ahora necesitamos crear una cuenta e iniciar sesión en ChatGPT (ver Fig. 2).
Fig. 2: Página de inicio de sesión de ChatGPT
A continuación, necesitamos obtener la clave API para investigar y experimentar con el código ChatGPT como se muestra en la figura 3.
Fig. 3: Entrar en el menú API de OpenAIFig. 4: Clave API de ChatGPT
Puede crear la clave API usando la esquina derecha de la opción API en su cuenta de OpenAI (Fig. 4).
Después de generar la clave API de OpenAI, cópiela y guárdela. Lo necesitaremos más adelante en nuestro código para desarrollar VoiceGPT.
Ahora necesitamos instalar la IA abierta en el sistema donde vamos a ejecutar VoiceGPT. Aquí puede usar una computadora con cualquier versión de Linux instalada. Usé la Raspberry Pi para esto.
A continuación, abra la terminal e instale la IA abierta y otros módulos de Python que nos ayudarán con el procesamiento del lenguaje natural. Aquí puede usar Whisper by OpenAI o cualquier otro módulo NLP. Usé Google NLP y lo combiné con ChatGPT.
Clonación del código OpenAi ChatGPT
Puede instalar estos módulos con el siguiente comando. Después de eso, puede crear su contenido de habla personalizado abierto en OpenAI o usar el chat simple en el patio de recreo. Aquí también puede configurar la temperatura, la frecuencia y otros parámetros para su asistente VoiceGPT.
Consulte la Fig. 5 y la Fig. 6 para ver cómo clonar OpenAI ChatGPT y configurarlo.
Fig. 6: Configuración de Raspberry Pi ChatGPT
A continuación, configure la temperatura, la frecuencia y el modelo de chat como se muestra en la Fig. 7.
Fig. 7: Configuración de temperatura, frecuencia y modelo de chat en ChatGPT
Programación de ChatGPT para ser utilizado como VoiceGPT
Primero necesitamos importar el módulo OpenAI Python en código para jugar con OpenAI y ejecutar un experimento con ChatGPT. A continuación importamos los módulos para PNL. Después de eso, importamos pygame para reproducir el archivo que procesó la respuesta con una voz humana usando el modelo NLP. A continuación, debemos configurar el modelo ChatGPT (ver fig. 8). Aquí podemos elegir entre nombres de modelos como Davinci, Ada, etc. Cada modelo tiene su propia experiencia y el costo de usar estos modelos varía. Pero no se preocupe, los desarrolladores obtienen un crédito de $18 para desarrollar y experimentar con OpenAI.
A continuación, debemos configurar la API en el código. Con eso, creamos la función para conectarse a ChatGPT para procesar la solicitud y obtener la respuesta.
importar Speech_recognition como sr Importar matemáticas tiempo de importación Importar número de serie de espeak importar espeak sistema de importación importar openai Importar pygames importar desde gtts gTTS pygame.mezclador.init() #model_to_use="text-davinci-003" # más capaz #model_to_use="texto-curie-001" #model_to_use="text-babbage-001" model_to_use="text-ada-001" # más bajo costo simbólico r = sr.Reconocedor() openai.api_key=”******Tu clave Aquí*******" def chatGPT(consulta): respuesta = openai. crear.finalización( modelo-modelo_a_usar, solicitud = consulta, temperatura=0, max_tokens 1000 ) return str.strip(respuesta[‘choices’][0] [‘text’]), Respuesta[‘usage’][‘total_ tokens’]
Después de eso, creamos la función principal y luego hacemos un ciclo while. Aquí usamos NLP para capturar continuamente la voz y extraer lo que se dice usando el modelo NLP y almacenarlo como una consulta. Luego transmitimos esta solicitud a ChatGPT y obtenemos la respuesta desde allí.
definir principal(): print('El LED está encendido mientras el botón está encendido presionado (Ctrl-C para salir).') mientras que cierto: con sr.Microphone() como fuente: r.adjust_for_ambient_noise (fuente) imprimir("¡Di algo!") audio r.listen (fuente) print("Reconocer ahora...") comando=str(r.recognize_google (audio)) print(“El reconocimiento de voz de Google piensa dijiste + comando) consulta = comando (resolución, uso) = chatGPT (consulta) prensa tts gTTS(texto=res, lang='en') tts.save("bueno.mp3") pygame.mixer.music.load("bueno.mp3") pygame.mixer.music.play() #espeak.synth(res)
si __nombre__ == '__principal__': ante todo()
Después de eso, usamos NLP nuevamente para convertir la respuesta de ChatGPT en una voz humana, y luego reproducimos esa voz. Todo se ejecuta en un bucle sin fin y hace que parezca una conversación real entre dos personas.
Este VoiceGPT le brinda la oportunidad de personalizar y elegir modelos. Puedes elegir entre modelos GPT como Ada, Davinci o Babbage. Utiliza un servicio de reconocimiento de voz gratuito que se puede adaptar a servicios de reconocimiento de voz fuera de línea como Sphenix.
Figura 8: Lista de modelos de ChatGPT
Probando VoiceGPT
Para probar VoiceGPT, ejecute el código en Python y se le pedirá que haga una pregunta o inicie una conversación. Puedes preguntar lo que quieras; Reconoce su voz, transmite la solicitud a ChatGPT y luego le responde con una voz humana.
Ahora puede hablar con ChatGPT de la misma manera que habla con el Asistente de Google, Alexa o Siri. ¡Disfruta de tu conversación con VoiceGPT!
Nota del autor. Esta es la primera versión de VoiceGPT. Todavía estoy experimentando con él y recibirá todas las actualizaciones muy pronto en https://www.opensourceforu.com.
ashwini kumarSinha es un periodista tecnológico entusiasta de IoT e IA en EFY
Si quieres conocer otros artículos parecidos a Cómo convertir ChatGPT en un asistente de voz avanzado puedes visitar la categoría Electrónica.
Deja una respuesta