doc-chatbot: gpt x pinecone x langchain
Características
- Crear múltiples temas para charlar sobre
- Almacenar cualquier número de archivos en cada tema
- Cree cualquier número de chats (ventanas de chat) para cada tema
- Cargue archivos, conviértalos en incrustaciones, almacene los incrustaciones en un espacio de nombres y cargue a Pinecone y elimine los espacios de nombres de Pinecone desde el navegador
- Almacenar y recuperar automáticamente el historial de chat para todos los chats con almacenamiento local
- Admite
.pdf
, .docx
y .txt
+ LangChain and Pinecone
Nota: Si desea establecer esto con Google Auth y MongoDB (en lugar de no Auth y usar almacenamiento local), eche un vistazo a esta rama: MongoDB-and-Auth. Sin embargo, ese repositorio es varias compromisos importantes detrás de este y carece de ciertas características, así que tenlo en cuenta.
Área de chat principal 
Página de configuración

Configuración y desarrollo local
Si desea ejecutar esto localmente e implementar su propia versión, siga los pasos a continuación.
Clonar el repositorio
git clone https://github.com/dissorial/doc-chatbot.git
Configuración de Pinecone
Llave de API
Crea una cuenta en Pinecone. Vaya a Indexes
y Create index
. Ingrese cualquier nombre, coloque 1536
para Dimensions
y deje el resto en el valor predeterminado. Luego vaya a API keys
y Create API key
.
Nombre del índice
Autoexplicativo
Entorno de piña
Justo al lado del nombre de su índice, por ejemplo us-west2-rkw
Instalar paquetes
Configure su archivo .env
- Renombrar
.env.example
a .env
- Su archivo
.env
debe verse así:
Entorno de nodo
- Desarrollo por defecto. En producción, establezca esto en 'Producción' (sin las cotizaciones)
Otro
- En
utils/makechain.ts
, ajuste el QA_PROMPT
para su propio USECase. Cambie modelName
en new OpenAI
a gpt-4
, si tiene acceso a él.
Despliegue
Agregue estos a su archivo .env
:
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=
JWT_SECRET=
Secreto de NextAuth
- Puede generar esto ejecutando
openssl rand -base64 32
en Git Bash.
Secreto JWT
- Puede generar esto ejecutando
openssl rand -base64 32
en Git Bash.
NextAuth URL
- El valor predeterminado es http: // localhost: 3000. En producción, esta debería ser la URL de su aplicación implementada.
Ejecutar la aplicación
Solución de problemas
Errores generales
- Asegúrese de ejecutar la última versión de Node. Para verificar su versión, ejecute el nodo -v.
- Si se encuentra con problemas con un archivo específico, intente convertirlo en mensajes de texto primero o pruebe un archivo diferente. Es posible que el archivo esté dañado, escaneado o requiera que OCR se convierta en texto.
- Confirme que está utilizando las mismas versiones de Langchain y Pinecone que este repositorio.
Errores de Pinecone
- Confirme que haya establecido las dimensiones vectoriales en 1536.
- Tenga en cuenta que los índices de Pinecone para los usuarios en el plan de arranque (gratuito) se eliminan después de 7 días de inactividad. Para evitar esto, envíe una solicitud de API a Pinecone para restablecer el contador antes de los 7 días.
- Si los problemas persisten, considere comenzar de nuevo con un nuevo proyecto Pinecone, índice y repositorio clonado.
Crédito
Este repositorio fue originalmente una bifurcación del repositorio GPT-4 y Langchain por Mayooear, pero experimentó muchos cambios importantes en este repositorio.
Frontend of this Repo está inspirado en ChatGPT.