Flowise te permite subir imágenes, audio y otros archivos desde el chat. En esta sección, aprenderás cómo habilitar y usar estas funcionalidades.
Image
Ciertos modelos de chat permiten ingresar imágenes. Siempre consulta la documentación oficial del LLM para confirmar si el modelo admite la entrada de imágenes.
El procesamiento de imágenes solo funciona con ciertas cadenas/agentes en Chatflow.
, , , ,
Si habilitas Allow Image Upload, podrás subir imágenes desde la interfaz de chat.
Carga de archivos para generación aumentada por recuperación (RAG)
Carga completa de archivos
Cuando ambas opciones están activadas, la carga completa de archivos tiene prioridad.
RAG File Uploads
Puedes hacer upsert de los archivos subidos al vector store sobre la marcha. Para habilitar la carga de archivos, asegúrate de cumplir con estos requisitos previos:
Debes incluir un vector store que admita la carga de archivos en el chatflow.
Si tienes múltiples vector stores en un chatflow, solo puedes activar la carga de archivos para un vector store a la vez.
Debes conectar al menos un nodo document loader a la entrada de documentos del vector store.
Document loaders soportados:
Puedes subir uno o más archivos en el chat:
Así es como funciona:
Los metadatos de los archivos subidos se actualizan con el chatId.
Esto asocia el archivo con el chatId.
Al consultar, se aplica un filtro OR:
Los metadatos contienen flowise_chatId, y el valor es el ID de la sesión de chat actual
Los metadatos no contienen flowise_chatId
Un ejemplo de un vector embedding con upsert en Pinecone:
Para hacer esto con la API, sigue estos dos pasos:
import requests
API_URL = "http://localhost:3000/api/v1/vector/upsert/<chatflowid>"
# Usa form data para subir archivos
form_data = {
"files": ("state_of_the_union.txt", open("state_of_the_union.txt", "rb"))
}
body_data = {
"chatId": "some-session-id"
}
def query(form_data):
response = requests.post(API_URL, files=form_data, data=body_data)
print(response)
return response.json()
output = query(form_data)
print(output)
// Usa FormData para subir archivos
let formData = new FormData();
formData.append("files", input.files[0]);
formData.append("chatId", "some-session-id");
async function query(formData) {
const response = await fetch(
"http://localhost:3000/api/v1/vector/upsert/<chatflowid>",
{
method: "POST",
body: formData
}
);
const result = await response.json();
return result;
}
query(formData).then((response) => {
console.log(response);
});
Con las cargas de archivos RAG, no puedes trabajar con datos estructurados como hojas de cálculo o tablas, y no puedes realizar resúmenes completos debido a la falta de contexto completo. En algunos casos, es posible que desees incluir todo el contenido del archivo directamente en el prompt para un LLM, especialmente con modelos como Gemini y Claude que tienen ventanas de contexto más largas. es uno de muchos que comparan RAG con ventanas de contexto más largas.
Puedes ver el botón File Attachment en el chat, donde puedes subir uno o más archivos. Internamente, el procesa cada archivo y lo convierte en texto.
Como puedes ver en los ejemplos, las cargas requieren una cadena base64. Para obtener una cadena base64 para un archivo, usa la .