Prérequis

Prérequis

Dernière mise à jour : 2026-05-10

Outils CLI

Outil Version Notes
Node.js 22.x (node:22-bookworm-slim en CI/prod) Pas Alpine — better-sqlite3 n'a pas de prebuilt musl
npm 10.x (vient avec Node 22)
Docker 24+ Pour docker compose up qdrant en dev
Docker Compose v2 (intégré à Docker)
poppler-utils Récent Fournit pdftoppm (rendu PDF→PNG 300 DPI)
tesseract-ocr 5.x Pour OCR auto des PDFs scannés
tesseract-ocr-fra + tesseract-ocr-eng Packs langues
git Récent

Installation system deps (Ubuntu/Debian)

sudo apt-get install -y poppler-utils tesseract-ocr tesseract-ocr-fra tesseract-ocr-eng

Pour ajouter d'autres langues d'OCR :

sudo apt-get install -y tesseract-ocr-ita tesseract-ocr-deu
# Puis dans .env :
# OCR_LANGUAGES=fra+eng+ita+deu

Sans ces outils, pdfjs-dist continuera à extraire les PDFs natifs, mais (1) aucun PNG ne sera généré (échec non-fatal logué warn), (2) un PDF scanné finira avec 0 chunks.

Services externes (à avoir tournants)

Qdrant (vector DB)

TEI bge-m3 (embeddings)

TEI Reranker bge-v2-m3

VM oracle (Claude Code CLI)

Optionnel

Cas spécial : dev sur la machine qui héberge Claude

Si tu lances le backend sur la même machine que le binaire claude (ex. ton laptop dev), le SSH boucle sur lui-même. Active le mode local :

CLAUDE_USE_LOCAL=true
CLAUDE_LOCAL_BIN=claude
CLAUDE_LOCAL_WORKDIR=/path/to/workdir/with/CLAUDE.md

Les vars CLAUDE_SSH_* sont alors ignorées (mais peuvent rester en place). Ne jamais activer en prod : le container Docker n'a pas accès à claude localement.


Revision #1
Created 2026-05-10 15:20:06 UTC by thymon
Updated 2026-05-10 15:20:06 UTC by thymon