Chatbot con PDF para la búsqueda semántica sobre documentos (construir con simplificación, langchain, pinecone/croma/azure búsqueda cognitiva)
Este repositorio contiene un ejemplo de código sobre cómo crear un chatbot interactivo para la búsqueda semántica sobre documentos. El chatbot permite a los usuarios hacer preguntas de lenguaje natural y obtener respuestas relevantes de una colección de documentos. El chatbot utiliza Streamlit para la interfaz web y chatbot, langchain, y aprovecha varios tipos de bases de datos vectoriales, como Pinecone, Chroma y la búsqueda vectorial de la búsqueda cognitiva de Azure, para realizar una búsqueda de similitud eficiente y precisa. El código está escrito en Python y se puede modificar fácilmente para adaptarse a diferentes casos de uso y fuentes de datos.
Consulte también mi historia en Media (bases de datos aumerables y vectoriales: una guía para crear aplicaciones web interactivas para la búsqueda semántica sobre documentos) para compartir más detalles.
- preprocess_pinecone.ipynb <- Ejemplo de usar el modelo de incrustación del servicio Azure OpenAI para incrustar el contenido del documento y guardarlo en la base de datos de Vector Pinecone.
- preprocess_chroma.ipynb <- Ejemplo de usar el modelo de incrustación del servicio Azure OpenAI para incrustar el contenido del documento y guardarlo en la base de datos de Chroma Vector.
- preprocess_acs.ipynb <- Ejemplo de utilizar el modelo de incrustación del servicio Azure OpenAI para incorporar el contenido del documento y guardarlo en la base de datos de vectores de búsqueda cognitiva de Azure.
- consumen_pinecone.ipynb <-Ejemplo de usar el módulo de suspensión de la pregunta Langchain para realizar una búsqueda de similitud desde la base de datos de vector de pinecone y usar el GPT-3.5 (Text-Davinci-003) para resumir el resultado.
- Consume_chroma.ipynb <-Ejemplo de usar el módulo de respuesta de pregunta Langchain para realizar una búsqueda de similitud desde la base de datos de vector de Chroma y usar el GPT-3.5 (Text-Davinci-003) para resumir el resultado.
- Consume_acs.ipynb <-Ejemplo de usar el módulo de pregunta de pregunta Langchain para realizar una búsqueda de similitud desde la base de datos de vector de búsqueda cognitiva de Azure y usar el GPT-3.5 (Text-Davinci-003) para resumir el resultado.
- app_pinecone.py <- Ejemplo de usar la base de datos Vector Vector de Streamlit, Langchain y Pinecone para crear un chatbot interactivo para facilitar la búsqueda semántica sobre los documentos. Utiliza el modelo GPT-3.5-TURBO del servicio Azure OpenAI para resumen de resultados y chat.
- App_chroma.py <- Ejemplo del uso de la base de datos de vectores de transmisión, langchain y croma para construir un chatbot interactivo para facilitar la búsqueda semántica sobre los documentos. Utiliza el modelo GPT-3.5-TURBO del servicio Azure OpenAI para resumen de resultados y chat.
- APP_ACS.PY <- Ejemplo de usar la base de datos de vectores de búsqueda cognitiva de SimplyLit, Langchain y Azure para construir un chatbot interactivo para facilitar la búsqueda semántica sobre los documentos. Utiliza el modelo GPT-3.5-TURBO del servicio Azure OpenAI para resumen de resultados y chat.
Para ejecutar esta aplicación web a simplénica
streamlit run app_pinecone.py
Arquitectura y flujo de alto nivel de esta búsqueda semántica a través de documentos demo 
¡Disfrutar!