Fichiers dans le chat
Vous pouvez joindre un fichier (PDF, Word, Excel, CSV…) directement à un message de
/v1/chat/completions. Le texte du fichier est extrait côté serveur et fourni au modèle
avec votre question. Idéal pour analyser un document ponctuel : un CV, un rapport, un tableau.
Comme pour une image, le fichier est une partie de contenu du message, à côté du texte :
{ "model": "mistral-small", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Résume ce CV et liste les compétences clés." }, { "type": "file", "file": { "filename": "cv.pdf", "file_data": "data:application/pdf;base64,JVBERi0xLjQ..." } } ] } ]}Le champ file_data est le fichier encodé en base64 (préfixe data: accepté ou non).
filename est requis : son extension détermine le format à extraire.
Formats acceptés
Section intitulée « Formats acceptés »| Format | Extensions | Extraction |
|---|---|---|
.pdf | Texte (les PDF scannés / images ne donnent rien : pas d’OCR) | |
| Word | .docx | Titres, listes et tableaux préservés (en Markdown) |
| Excel | .xlsx | Une table par feuille (Markdown) |
| Tableur / texte | .csv, .tsv, .txt, .md | Contenu brut |
| Web / RTF | .html, .htm, .rtf | Converti en texte/Markdown |
Les formats binaires anciens (.doc, .xls) ne sont pas gérés : convertissez-les en
.docx, .xlsx, .pdf ou .csv. Taille maximale : 15 Mo par fichier, 10 fichiers
par requête.
Bon à savoir
Section intitulée « Bon à savoir »- Tous les modèles. L’extraction produit du texte : la fonctionnalité marche sur
tous les modèles, y compris les modèles souverains (
miraca-*), contrairement aux images qui exigent un modèle multimodal. - Facturation. L’extraction est gratuite ; seuls les tokens du texte extrait sont facturés, comme n’importe quel contenu de message. Un gros document = beaucoup de tokens à chaque tour de conversation.
- Beaucoup de documents ? Pour interroger un corpus (des dizaines de CV, une documentation), préférez une base de connaissance : seuls les passages pertinents sont fournis au modèle, pas le fichier entier.
- Conformité. Le texte extrait est soumis aux règles d’organisation (masquage PII, etc.), comme le reste de votre message.
- Extraction impossible ? Si un fichier est illisible ou d’un format non géré, le modèle en est informé (note dans le message) et répond sans planter la requête.
L’espace de travail de la conversation
Section intitulée « L’espace de travail de la conversation »Chaque conversation de l’Assistant (dans les deux modes), chaque fil du bac à sable du
portail, et chaque espace nommé par workspace:"<slug>" en API disposent d’un
espace de travail persistant. Une pièce jointe y est déposée
automatiquement sous son nom, avec son texte extrait et, pour un
classeur ou un csv, son rendu tabulaire typé (les montants sont des nombres, pas du texte).
Elle y reste aux tours suivants : vous n’avez pas à la joindre à nouveau pour continuer à
travailler dessus.
L’espace est accessible au modèle (outils workspace_list, workspace_read,
workspace_write, workspace_delete) et au code exécuté dans le bac à sable
(miraca.workspace.list(), .read(nom), .table(nom), .write(nom, contenu),
.delete(nom)). Les fichiers produits pendant la conversation y sont inscrits aussi, et le
modèle peut y enregistrer des résultats intermédiaires (une synthèse, des totaux en JSON) pour
les relire plus tard au lieu de les retenir de mémoire.
C’est ce qui permet de trier, agréger ou transformer un tableau joint sans qu’aucune ligne ne
passe par la réponse du modèle : un script lit les lignes typées avec
miraca.workspace.table("mon-fichier.xlsx"), calcule, et écrit un nouveau classeur avec
miraca.file.write(...). Le résultat est exact quelle que soit la taille du tableau, là où une
recopie ligne à ligne dans un appel d’outil est lente, coûteuse et coupée au plafond de tokens.
Le contenu de l’espace est chiffré avec la clé de la conversation, comme les messages, et supprimé avec elle.
Sans code
Section intitulée « Sans code »Pas besoin de manipuler du base64 à la main : dans le portail, le banc d’essai (Bac à sable) et l’Assistant ont un bouton « joindre un document » (trombone) qui attache un PDF/Word/Excel/CSV directement à votre message.
Et si votre organisation a connecté le Slackbot Miraca, il suffit de déposer le fichier dans Slack (en message direct ou en mentionnant le bot) : le document est lu et analysé comme dans l’assistant.