myChat es un proyecto de código abierto inspirado en ChatGPT. Proporciona una interfaz fácil de usar para interactuar con LLM tipo GPT a través de la API OpenAI. Este proyecto NO está afiliado directamente con OpenAI de ninguna manera.
Utilizamos MongoDB para almacenar información del usuario y datos de sesión. Puede configurar una instancia de MongoDB de varias maneras:
Una vez que tenga una instancia de MongoDB en ejecución, necesitará obtener la cadena de conexión. Si está utilizando MongoDB Atlas, puede encontrar la cadena de conexión en la configuración de conexión de su clúster.
Agregue la cadena de conexión MongoDB a su archivo .env.local
de esta manera:
Usamos Redis para limitar la velocidad en nuestras rutas API. Puedes configurar una instancia de Redis de varias maneras, incluyendo:
Una vez que tenga una instancia de Redis en ejecución, necesitará obtener la cadena de conexión. Si está utilizando RedisLabs, puede encontrar la cadena de conexión en la página de configuración de su base de datos.
Clona este repositorio:
git clone https://github.com/your-username/myChat.git
o comience a usar la función de plantilla de GitHub
Navegue al directorio del proyecto:
cd myChat
Instale las dependencias:
npm install
Cree un archivo .env.local
en la raíz del proyecto y agregue las variables de entorno necesarias:
touch .env.local
Agregue lo siguiente al archivo .env.local
:
NEXTAUTH_URL=http://localhost:3000
MONGODB_URI=yourURI
NEXTAUTH_SECRET=yourSecret
ENCRYPTION_KEY: a 32-digit hexadecimal string for AES-128 encryption (for users' API key)
REDIS_URL=yourRedisConnectionString
Reemplace http://localhost:3000
con cualquier puerto en el que se esté ejecutando su aplicación, yourURI
con su cadena de conexión MongoDB, yourSecret
con una cadena aleatoria segura, your32HexDigitString
con una cadena hexadecimal de 32 dígitos para cifrado AES-128 y yourRedisConnectionString
con su Redis cadena de conexión.
...
Para ejecutar el servidor de desarrollo:
npm run dev
Para construir la aplicación para producción:
npm run build
Para iniciar el servidor de producción:
npm run start
Para implementar su myChat Clone en Vercel, siga estos pasos:
Regístrese para obtener una cuenta Vercel si aún no lo ha hecho.
Instale la CLI de Vercel:
npm install -g vercel
Inicie sesión en su cuenta Vercel desde la línea de comando:
vercel login
Navegue hasta el directorio de su proyecto:
cd myChat
Ejecute el siguiente comando para implementar su aplicación:
vercel --prod
Durante el proceso de implementación, la CLI de Vercel le solicitará las variables de entorno. Proporcione los mismos valores que utilizó para su archivo .env.local
:
NEXTAUTH_URL: https://your-vercel-url.vercel.app
MONGODB_URI: yourURI
NEXTAUTH_SECRET: yourSecret
ENCRYPTION_KEY: a 32-digit hexadecimal string for AES-128 encryption (for users' API key)
REDIS_URL=yourRedisConnectionString
Reemplace http://localhost:3000
con cualquier puerto en el que se esté ejecutando su aplicación, yourURI
con su cadena de conexión MongoDB, yourSecret
con una cadena aleatoria segura, your32HexDigitString
con una cadena hexadecimal de 32 dígitos para cifrado AES-128 y yourRedisConnectionString
con su Redis cadena de conexión.
Recuerde que cada vez que realice cambios en su myChat Clone y desee implementar la versión actualizada, simplemente puede ejecutar vercel --prod
desde el directorio del proyecto.
¡Agradecemos las contribuciones! Para contribuir, siga estos pasos:
git clone https://github.com/your-username/myChat.git
git checkout -b feature/my-new-feature
o git checkout -b fix/my-new-fix
git commit -am 'Add some feature'
git push origin feature/my-new-feature
Este proyecto está bajo la licencia MIT.