Spaces:
Runtime error
Gu铆a de Uso de la API Flask para Vector Store y RAG
Esta API en flask permite gestionar un Vector Store para consultas de Recuperaci贸n Aumentada Generativa (RAG) y procesamiento de documentos. Ofrece endpoints para inicializar el Vector Store, cargar documentos, listar los archivos en el Vector Store, y realizar consultas con o sin historial de conversaci贸n.
Requisitos previos
Instalar las dependencias:
pip install -r requirements.txtAsegurarse de que el servidor Flask est茅 corriendo:
python app.pyConfigurar las credenciales necesarias:
- Crear un archivo
.enven la ra铆z del proyecto con la siguiente configuraci贸n:OPENAI_API_KEY=your_openai_api_key
- Crear un archivo
Preparar el directorio
Docspara inicializar el Vector Store con los documentos que desees procesar.
Endpoints Disponibles
1. Inicializar el Vector Store
Endpoint: POST /initialize-vs
Descripci贸n: Inicializa el Vector Store con los archivos contenidos en el directorio Docs.
Ejemplo de Uso:
Enviar una solicitud POST sin cuerpo.
Respuesta Exitosa:
{
"message": "Vector Store inicializado con 茅xito desde el directorio Docs."
}
2. Listar Archivos en el Vector Store
Endpoint: GET /list-files
Descripci贸n: Lista los archivos procesados en el Vector Store.
Ejemplo de Uso:
Enviar una solicitud GET sin cuerpo.
Respuesta Exitosa:
{
"files": [
"documento1.txt",
"documento2.pdf",
"imagen.jpg"
]
}
3. Subir y Procesar un Archivo
Endpoint: POST /upload-file
Descripci贸n: Permite subir un archivo para procesarlo y a帽adirlo al Vector Store.
Ejemplo de Uso:
Configurar una solicitud POST con el archivo en formato multipart/form-data.
Respuesta Exitosa:
{
"message": "Archivo procesado y a帽adido al Vector Store con 茅xito."
}
4. Consultar RAG (sin historial de conversaci贸n)
Endpoint: POST /rag-query
Descripci贸n: Realiza una consulta en el Vector Store y genera una respuesta utilizando un LLM sin historial previo.
Ejemplo de Uso:
Cuerpo de la solicitud:
{
"query": "驴Qu茅 sabes de Amanda?"
}
Respuesta Exitosa:
{
"query": "驴Qu茅 sabes de Amanda?",
"response": "Amanda es conocida por sus aventuras en un pueblo costero..."
}
5. Consultar RAG (con historial de conversaci贸n)
Endpoint: POST /rag-query
Descripci贸n: Realiza una consulta en el Vector Store y genera una respuesta utilizando un LLM considerando el historial de conversaci贸n.
Ejemplo de Uso:
Cuerpo de la solicitud:
{
"query": "驴Qu茅 pas贸 con el museo que Amanda cre贸?",
"conversation_history": [
{
"user_input": "驴Qu茅 sabes de Amanda?",
"ai_response": "Amanda es conocida por sus aventuras en un pueblo costero..."
}
]
}
Respuesta Exitosa:
{
"query": "驴Qu茅 pas贸 con el museo que Amanda cre贸?",
"response": "El museo que Amanda cre贸 se convirti贸 en un punto importante para la comunidad..."
}
6. Obtener Archivos y Contenido
URL: /get-files
M茅todo: GET
Descripci贸n: Devuelve cada archivo almacenado en el Vector Store en el formato source: Content.
Respuesta:
{
"documento1.txt": "Este es el contenido del documento 1...",
"documento2.pdf": "Este es el contenido extra铆do del documento 2...",
"imagen.jpg": "Texto extra铆do de la imagen..."
}
Notas Finales
- Aseg煤rate de que el directorio
Docscontiene los documentos necesarios antes de inicializar el Vector Store. - El LLM utiliza el modelo
gpt-4o-minipara las respuestas. - La API es extensible y puedes a帽adir nuevos endpoints seg煤n sea necesario.
隆Listo! Ahora puedes interactuar con la API Flask para gestionar tu Vector Store y realizar consultas RAG.