Documents sources
Les documents sources peuvent être :
– un site Web [1],
– un document HTML (mime type ’text/html’),
– un dossier local,
– un fichier local.
S’agissant de fichiers locaux (ou du contenu d’un dossier local), les types possibles sont, par leur extension : .csv, .docx, .epub, .mbox, .md [2], .mp3, .pdf, .ppt ... [3].
Un simple fichier .txt peut également être traité mais, à format élémentaire, rendu élémentaire.
Le format Markdown est préférentiel, sous le format décrit ici : https://www.markdownguide.org/basic-syntax/
Notez le fonctionnement différent selon la source :
– dans le cas d’un site Web, les documents extraits du site sont importés dans le dossier .../data/theme,
– dans tous les autres cas, les fichiers doivent se trouver dans le dossier .../data/theme : il n’y a pas d’importation.
Ingérer des documents
Usage :
.../ingestcmd.py <theme> --source {dir, file, url} [--recurse] [--all] [--forwards] [--level <N>] [--nostore]
Paramètres :
Argument | Description | |
---|---|---|
theme | Requis en première position | Thème : espace de données spécifique. Un nom court, en minuscules, formé des caractères ’a-z’, ’-’ et ’_’ , sans espace. Défaut : itego. |
—source | Requis/Optionnel | Répertoire, fichier ou URL. Ce doit être des adresses absolues. Cet argument est requis pour toute autre action que —delete_document_by_filename. |
—dynamic | Optionnel | Indique que le site est dynamique et que les scripts doivent être exécutés au chargement de la page. |
—recurse | Optionnel | Ne s’applique que si la source est un répertoire. Indique que les sous-répertoires doivent être parcourus. |
—all | Optionnel | Indique que tout les fichier doivent être traités indépendamment de leur âge, qu’ils aient été modifiés ou non. |
—forwards | Optionnel | Ne s’applique que si la source est un site Web. Indique de ne pas remonter vers la racine des documents. Par exemple, si l’URL est https://monsite.com/fr, le chemin /en ne sera pas parcouru. Voir également : Ingestion RAG : recommandations pour la création des pages Web . |
—levels | Optionnel | S’applique si la source est un site Web ou un répertoire. Nombre de niveaux à parcourir. |
—plan | Optionnel | S’applique si la source est un site Web. La source est un plan des pages à ingérer. Les pages ingérées seront limitées aux liens internes de cette seule page de plan et contenus dans les tags ’ul’ de classe ’plan’. |
—nostore | Optionnel | Par défaut, les index sont sauvegardés à chaque nouvelle ingestion, ce qui prend du temps. L’option —nostore bloque la sauvegarde, ce qui permet de choisir quand cela doit être fait, par exemple après l’ingestion de plusieurs sources. |
—HuggingFaceEmbedding | Optionnel | Utiliser un embedding de HuggingFace plutôt que celui d’OpenAI. |
Réponse :
Réponse | Description |
---|---|
Fatal error : N : erreur | L’exécution du script s’arrête sur l’erreur indiquée. |
End, count : compte | L’exécution du script s’est terminée avec succès, le nombre de documents traités est indiqué par count. |
Supprimer un document
Usage :
.../ingestcmd.py <theme> --delete_document_by_filename <filename>
Paramètres :
Argument | Description | |
---|---|---|
—delete_document_by_filename | Optionnel | Supprime le document ayant le nom de fichier indiqué (tel que dans le dossier data du thème) et met à jour les index. Doit être utilisé sans autre argument que theme. |
Réponse :
Réponse | Description |
---|---|
End, count : count | L’exécution du script s’est terminée. count. = 9 indique le succès. En cas d’erreur : 3 : not deleted from index 4 : deleted from index but not deleted from directory 5 : file_name not found 6 : general error Plus d’information dans le fichier nohup. Les codes 1-2, 126-165 et 255 proviennent du shell. |