RAGFlow
De Le Wiki de Lug
Autres actions
Installation
On utilise Docker
- On installe git si nécessaire (exemple avec Debian) :
# apt update && apt upgrade # apt install git
- On récupère le projet :
# cd /opt/ # git clone https://github.com/infiniflow/ragflow.git # cd /opt/ragflow/docker
- On édite la configuration si nécessaire :
# vi .env
- On lance le conteneur :
# docker compose -f docker-compose.yml up -d
Suppression du bloc ulimits pour usage via LXC
# cd /opt/ragflow/docker/ # vi docker-compose-base.yml
Commenter le bloc suivant :
...
#ulimits:
#memlock:
#soft: -1
#hard: -1
...
On lance le conteneur :
# docker compose -f docker-compose.yml up -d
Configuration
Supprimer l’enregistrement des utilisateurs
# vi /opt/ragflow/docker/.env
... REGISTER_ENABLED=0 ...
On relance les conteneurs :
# cd /opt/ragflow/docker/ # docker compose -f docker-compose.yml up -d
Modèles par défaut
Via le menu "Fournisseurs de modèles"
Modèle de chat: modèle principal utilisé pour répondre aux questions et générer les réponses finales. C’est le champ le plus important. Sans modèle de chat, RAGFlow ne peut pas produire de réponse conversationnelle.
Modèle d'embedding: modèle utilisé pour transformer les documents et les requêtes en vecteurs. Il sert à retrouver les passages pertinents dans la base documentaire. Ce champ est indispensable pour utiliser le RAG avec une recherche sémantique correcte.
Modèle Img2txt: modèle utilisé pour convertir une image en texte. Il peut servir pour l’OCR, les captures d’écran, les images intégrées dans des documents ou certaines pages PDF scannées. Il n’est pas indispensable si les documents sont déjà au format texte, mais il devient important pour les documents visuels ou scannés.
Modèle Speech2txt: modèle utilisé pour convertir de l’audio en texte. Il sert à transcrire des fichiers audio ou vidéo avant leur indexation. Il est inutile si aucun contenu audio n’est utilisé.
Modèle de rerank: modèle utilisé pour réordonner les passages retrouvés par le modèle d’embedding. L’embedding récupère une liste de résultats candidats, puis le reranker remet les meilleurs passages en haut. Ce champ est fortement recommandé pour améliorer la précision des réponses RAG, surtout quand la base documentaire contient beaucoup de chunks proches ou similaires.
Modèle TTS: modèle utilisé pour convertir les réponses texte en audio. Il est uniquement nécessaire si l’on souhaite une sortie vocale.
Voir modèles pour RAG via Llama.cpp
RAGFlow comme serveur MCP
# cd /opt/ragflow/docker/ # vi docker-compose.yml
...
command:
- --enable-adminserver
- --init-model-provider-tables
- --enable-mcpserver
- --mcp-host=0.0.0.0
- --mcp-port=9382
- --mcp-base-url=http://127.0.0.1:9380
- --mcp-script-path=/ragflow/mcp/server/server.py
- --mcp-mode=self-host
- --mcp-host-api-key=ragflow-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
...
Optionnellement on peut déterminer une interface pour l'écoute du serveur MCP :
...
- 192.168.1.123:${SVR_MCP_PORT}:9382 # entry for MCP (host_port:docker_port). The docker_port must match the value you set for `mcp-port` above.
...
Première connexion
Il faut se rendre sur l'adresse http://IP_SERVEUR avec l'identifiant administrateur par défaut :
admin@ragflow.io admin