https://github.com/diegoseg15/DORIS-IA-Tesis-Frontend
Proyecto de tesis - Asistente Robot DORIS - Frontend
https://github.com/diegoseg15/DORIS-IA-Tesis-Frontend
gpt inteligencia-artificial openai react reactjs
Last synced: 2 months ago
JSON representation
Proyecto de tesis - Asistente Robot DORIS - Frontend
- Host: GitHub
- URL: https://github.com/diegoseg15/DORIS-IA-Tesis-Frontend
- Owner: diegoseg15
- Created: 2023-11-21T01:52:34.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-18T17:59:59.000Z (7 months ago)
- Last Synced: 2024-11-18T19:18:09.481Z (7 months ago)
- Topics: gpt, inteligencia-artificial, openai, react, reactjs
- Language: JavaScript
- Homepage: https://repositorio.puce.edu.ec/handle/123456789/42333
- Size: 654 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

# Asistente Robot DORIS - Frontend Aplicación React
Este proyecto es una aplicación React que implementa el asistente robótico de voz DORIS. DORIS está diseñado específicamente para la Pontificia Universidad Católica del Ecuador, Sede Ambato (PUCESA), con un enfoque en proporcionar información sobre la Escuela de Ingenierías (EI).
## Licencia
Este proyecto es propiedad de **Diego Fernando Segovia Escobar** y la **Pontificia Universidad Católica del Ecuador Sede Ambato (PUCE Ambato)**.
Forma parte de la tesis de grado desarrollada para la obtención del título de grado en la PUCE Ambato.Todos los derechos reservados. No se permite la reproducción, distribución, ni modificación total o parcial sin el consentimiento explícito de los propietarios.
## Contenido del Proyecto
### `src/App.js`
El archivo principal que define la estructura de la aplicación. Importa el componente `Header` y `Chat`, y los renderiza.
### `src/Components/Header.js`
El componente `Header` muestra la cabecera de la aplicación, que incluye el logo de la PUCESA.
### `src/Components/Messages.js`
El componente `Messages` se encarga de renderizar los mensajes en el chat. Dependiendo del rol del mensaje (asistente, usuario o sistema), muestra el contenido de manera diferente.
### `src/API/gptOpenAI.js`
Funciones para realizar llamadas a la API de OpenAI para obtener respuestas generadas por GPT.
### `src/API/whisperOpenAI.js`
Funciones para interactuar con la API de OpenAI para transcripciones y reproducciones de audio.
### `src/Components/Chat.js`
El componente principal `Chat` gestiona la interfaz del chat, incluyendo la entrada de mensajes, la visualización de mensajes y la reproducción de audio.
## Funcionalidades provenientes del API REST
- **Transcripción de Audio:** Permite al usuario enviar mensajes de audio que son transcritos y procesados por el asistente.
- **Generación de Respuestas:** Utiliza la API de GPT para generar respuestas inteligentes a los mensajes del usuario.
- **Interacción por Chat:** Facilita la comunicación entre el usuario y el asistente a través de mensajes de texto y audio.**Nota:** Se recomienda ver el repositorio IA-Tesis-Backend
## Uso de Grabación de Audio
El componente `Chat` permite a los usuarios grabar mensajes de audio. Al hacer clic en el botón de micrófono (`#mic-button`), se inicia la grabación, y al hacer clic nuevamente, se detiene y se procesa la transcripción.
## Conocimientos Predeterminados
DORIS cuenta con conocimientos predeterminados sobre la Escuela de Ingenierías de la PUCESA. Estos conocimientos se encuentran en el archivo `knowledge.json` y se utilizan para mejorar las respuestas generadas por el modelo GPT. (Este archivo no se sube al repositorio por temas de seguridad)
## Cómo Iniciar la Aplicación
1. Asegúrate de tener Node.js y yarn instalados en tu sistema.
2. Instala las dependencias con el comando `yarn install`.
3. Inicia la aplicación con `yarn start`.La aplicación estará disponible en [http://localhost:3000](http://localhost:3000) en tu navegador.
## Mensaje de Sistema Predeterminado
El chat comienza con un mensaje de sistema que proporciona información sobre DORIS y sus capacidades. Este mensaje se encuentra en `defaultMessage` en `Chat.js`.