Instalando y probando PrivateGPT para hablar con tus documentos (versión Windows)

¿Qué es privateGPT?

PrivateGPT es un proyecto de inteligencia artificial (IA) que te permite hacer preguntas sobre tus documentos utilizando la potencia de los Modelos de Lenguaje de Gran Tamaño (LLMs), incluso en escenarios sin conexión a Internet. Además preservas la privacidad al ser todo en local.

Requisitos:

    CPU x64
    Más de 8GB de RAM (consume bastante RAM)
    Si tienes una GPU Nvidia con bastante VRAM se puede optimizar y los resultados son mucho más rápidos.
    Python 3.11 (muy importante, ni más nueva ni más vieja)

Descargas

Crear entorno virtual Python.

Navegamos dentro de la carpeta que hemos obtenido del GIT de PrivateGPT
Creamos el entorno virtual con la version 3.11 py -3.11 -m venv privateGPTvenv
Activamos el entorno virtual ejecutando el Activate.ps1 dentro de la carpeta Scripts de la carpeta que se creó al hacer el entorno virtual
'C:\Python\privateGPT\privateGPTvenv\Scripts\Activate.ps1'
Comprobamos que dentro de nuestro entorno virtual estamos ejecutando la version 3.11 por si tenemos más versiones en nuestro equipo:
python --version

Instalamos poetry:

pip install poetry
Vemos la version y comprobamos que se ha instalado todo bien:
poetry --version
Podría darse el caso de que no este metido en el PATH y haya que hacerlo a mano.

Instalamos diferentes dependencias y componentes

    Intalamos UI,Local. Basicamente será todas las dependencias necesarias para tener un User Interface e interactuar con nuestro modelo LLM. Local será necesario para alojar nuestros propios LLM en local.
    poetry install --with ui,local
      Esto puede tardar un poco...
      Puede que te de algun fallo porque no encuentra cmake. Para ello asegurarse que está instalado y añadirlo al path. En mi caso estaba en esta ruta:
      C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin
      También te puede pasar con nmake.exe. Añadela también al PATH. En mi caso la ruta era:
      C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.38.33130\bin\Hostx64\x647
      Si has tenido que añadir al path estos ejecutables debes reiniciar el programar/terminal y volver a lanzar. Si lo haces recuerda volver a entrar en el entorno virtual.

Instalamos el modelo LLM

Muy sencillo, esta todo en un script y hará uso de Mistral 7b
poetry run python scripts/setup
Este proceso es el que más tarda ya que tiene que descargar todo el modelo que son unos 4/5GB.

El paso final, ejecutarlo

Muy sencillo, ejecutarlo así
poetry run python3 -m private_gpt
Esperas un poco y ya podrás poner en el navegador la url: localhost:8001
Tiene 3 modos de ejecución (puedes seleccionar en la esquina superior izquierda):
    Consulta de Documentos: utiliza el contexto de los documentos ingestados para responder las preguntas publicadas en el chat. También tiene en cuenta los mensajes de chat anteriores como contexto.
    Búsqueda en Documentos: búsqueda rápida que devuelve los 4 fragmentos de texto más relacionados, junto con su documento fuente y página.
    Chat de LLM: chat simple y no contextual con el LLM. Los documentos ingestados no serán tomados en cuenta, solo los mensajes anteriores.

Extra: Cambiar el logo

Para cambiar el logo necesitamos el nuestro en formato SVG (vectorial).
Pasamos el logo a base 64 con una web como esta https://www.base64-encode.org/ o un script.
Copiamos el codigo dentro del fichero privateGPTprivate_gptuiimages.py
Formato:
logo_svg = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIGlkPSJFLUxPR08tTFAtMTkyeDYwLkFJIiB4PSIwIiB5PSIwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAxOTI.........."

Otras referencia