FASTAPI - FASTAPI es un marco web moderno (de alto rendimiento) para construir API con Python 3.7+ basado en pistas de tipo Python estándar.
Llamaindex - Llamaindex es un marco de datos para aplicaciones basadas en LLM que se benefician del aumento del contexto. Dichos sistemas LLM se han denominado sistemas de RAG, que representan la "generación de recuperaciónomed". Llamaindex proporciona las abstracciones esenciales para ingerir, estructurar y acceder a datos privados o específicos de dominio para inyectarlas de manera segura y confiable en LLM para una generación de texto más precisa.
MongoDB Atlas - MongoDB Atlas es una base de datos de nubes totalmente administrada desarrollada por las mismas personas que construyen MongoDB.
ATLAS Vector Search - Atlas Vector Search le permite buscar datos no estructurados. Puede crear integridades vectoriales con modelos de aprendizaje automático como OpenAi y abrazar la cara, y almacenarlos e indexar en Atlas para la generación de recuperación aumentada (RAG), búsqueda semántica, motores de recomendación, personalización dinámica y otros casos de uso.
Nota: Necesita crear un índice KNN para usar Atlas Vector Search.
Atlas Search de TAB. Elija el modo "Editor JSON" y configure el índice con el siguiente contenido: {
"mappings": {
"dynamic": true,
"fields": {
"embedding": {
"dimensions": 1536,
"similarity": "cosine",
"type": "knnVector"
}
}
}
}
Instalar con poesía:
pip install poetry
poetry config virtualenvs.in-project true
poetry shell
poetry install
uvicorn app.main:app --host 127.0.0.1 --port 9080
docker build -t insight-chat .
docker run -d --name insight-chat -p 8080:8080 insight-chat






En resumen, Llamaindex utiliza el siguiente patrón para almacenar información de documentos:
El texto de un documento se divide en varios nodos, también conocido como "trozos"; Utilizando la ID del documento como clave principal, los objetos que representan cada documento, principalmente metadatos, como el nombre del archivo y el hash, se almacenan en el almacén de documentos, junto con la lista de nodos para ese documento; Usando la ID del nodo como clave principal, la incrustación del nodo se almacena en el almacén de vectores.

Las tres implementaciones de MongoDB para las tiendas se utilizan en este proyecto:
https://medium.com/@luoning.nici/llamaindex-in-depth-practice-how-to-build-a-reliable-storage-subsystem-with-mongodb-atlas-f306bf2fb480
https://docs.llamaindex.ai/en/stable/index.html
https://www.mongodb.com/atlas