Voeg PDF's, afbeeldingen, audio-opnamen, Office-documenten, spreadsheets, slides en tekstbestanden toe aan elk verzoek voor verrijking, schemageneratie, samplegeneratie, AI-schemabewerking of playground. Bestanden bereiken het model ofwel als native bytes (voor modellen die PDF, vision en audio ondersteunen) ofwel als server-geëxtraheerde tekst die in de prompt wordt opgenomen — geen handmatige OCR, transcriptie, conversie of chunking vereist.
Elk ondersteund MIME-type heeft een door de beheerder geconfigureerde bezorgmodus. De modus bepaalt hoe het bestand het model bereikt.
De originele bytes worden als BinaryContent aan het model doorgegeven. Het model leest het bestand rechtstreeks — geen voorbewerking aan de serverkant.
Vereist een model met de bijbehorende capability-vlag (supports_pdf_input voor PDF's,supports_vision voor afbeeldingen,supports_audio_input voor audio). De modelkiezer wordt automatisch gefilterd om alleen compatibele modellen te tonen.
Een extractor aan de serverzijde draait eenmalig bij het uploaden en slaat de resulterende tekst op in de cache. Bij elke volgende LLM-aanroep wordt de gecachete tekst in de user-prompt ingevoegd.
Geen modelcapaciteit vereist — werkt met elk model. Platte tekst en Markdown slaan de extractor over en decoderen de ruwe bytes rechtstreeks.
Er zijn standaard 19 formaten ingeschakeld. Systeembeheerders kunnen elk formaat wisselen tussen binary- eninline_text-modus, het label wijzigen of het volledig uitschakelen via Model Management → Document policies.
| Formaat | Extensies | Standaardmodus | Mogelijkheid / extractor |
|---|---|---|---|
| PDF-document | binary | supports_pdf_input | |
| PNG-afbeelding | .png | binary | supports_vision |
| JPEG-afbeelding | .jpg, .jpeg | binary | supports_vision |
| MP3-audio | .mp3 | binary | supports_audio_input |
| WAV-audio | .wav | binary | supports_audio_input |
| M4A-audio | .m4a | binary | supports_audio_input |
| OGG-audio | .ogg, .oga | binary | supports_audio_input |
| FLAC-audio | .flac | binary | supports_audio_input |
| Platte tekst | .txt | inline_text | ruwe decodering |
| Markdown | .md, .markdown | inline_text | ruwe decodering |
| Word (verouderd .doc) | .doc | binary | docx2txt |
| Word (.docx) | .docx | binary | python-docx |
| OpenDocument-tekst | .odt | binary | odfpy |
| Rich Text Format | .rtf | binary | striprtf |
| EPUB-e-book | .epub | binary | ebooklib |
| HTML | .html, .htm | binary | beautifulsoup |
| CSV | .csv | binary | csv (stdlib) |
| Spreadsheet (.xlsx) | .xlsx | binary | openpyxl |
| Presentatie (.pptx) | .pptx | binary | python-pptx |
Als je meer dan één bestand aan de voorbeeldgeneratie toevoegt, is de eerste vraag hoe ze zich tot elkaar verhouden — en dat verkeerd inschatten levert stilzwijgend een onzinnig voorbeeld op. Daarom wordt het expliciet gevraagd voordat er iets wordt gegenereerd.
Een contract en het bijbehorende addendum, een specificatie en de bijbehorende datasheet: de bestanden worden samen als één entiteit gelezen.
Tien facturen, tien cv's. Het smalste type dat ze allemaal dekt wordt afgeleid, en de waarden van het sample komen uit één gekozen document in plaats van dat ze over alle tien worden gemengd — een sample dat uit tien bronnen aan elkaar is geplakt beschrijft niets echts.
Negen facturen en een vakantiefoto: in plaats van te gokken pauzeert de job en vraagt of de vreemde eend in de bijt moet worden uitgesloten. Bestanden die helemaal niets gemeen hebben laten de job meteen mislukken, met die reden erbij.
Hetzelfde pauzeer-en-vraag-mechanisme geldt voor elke andere onduidelijkheid die de planner tegenkomt: de taak stopt, toont haar vragen en gaat verder met jouw antwoorden — in de app als dialoogvenster, en via de API en MCP als een expliciete antwoordstap. Een verkeerde aanname voorkomen is goedkoper dan haar ontdekken in het gegenereerde schema.
Eén ding waarvan documenten je niet vrijstellen: een schema dat uit je bestanden is gegenereerd, begint met de ambiguïteitscontrole aan, net als elk ander schema. Die controle vraagt of een eigenschapsnaam meer dan één betekenis toelaat — een vraag over hoe het schema is geformuleerd, niet over waar de waarden van deze run vandaan kwamen. Je document heeft de waarden eenmalig vastgelegd; het schema wordt daarna hergebruikt voor entiteiten die het nooit heeft gedekt.
(organization_id, sha256).inline_text-formaten draait de extractor tijdens het uploaden en wordt de resulterende tekst gecachet op de rij van de attachment. Volgende LLM-aanroepen hergebruiken de gecachte tekst — geen kosten voor herextractie. binary-formaten slaan deze stap over.DELETE /api/attachments/{id} — een handige opschoonstap na de verrijking. Verwijderen is org-scoped en geeft { success, id, filename } terug.Bijlagen kunnen ook programmatisch worden geüpload en verwijderd, niet alleen via de web-UI: de n8n-connector uploadt via native multipart, de Make.com- en MCP-connectors uploaden via de base64-JSON-route, en elke client kan de REST API rechtstreeks gebruiken (DELETE /api/attachments/{id} voor opschonen).
Wanneer je een binair bestand met een capability-vereiste toevoegt (PDF, afbeelding of audio), wordt de modelkiezer gefilterd zodat alleen modellen worden getoond die die capability aanbieden. Als je meerdere bestanden met verschillende vereisten toevoegt, verschijnen alleen modellen die aan alle vereisten voldoen.
De API hanteert dezelfde regel: het combineren van een incompatibel model met een binaire attachment retourneert 400 model_lacks_attachment_capability, zodat integraties die de UI omzeilen een duidelijke pre-flight-fout krijgen in plaats van een provider-fout halverwege de job. Inline-tekst-attachments stellen nooit een vereiste.
| Toegevoegde bestanden | In aanmerking komende modellen |
|---|---|
| 1 PDF | supports_pdf_input |
| 1 PNG | supports_vision |
| 1 MP3 | supports_audio_input |
| 1 PDF + 1 PNG | supports_pdf_input EN supports_vision |
| 1 DOCX (binary-modus, geen mogelijkheid) | Alle modellen — native byte-ondersteuning wordt aangenomen als er geen capability-vlag is ingesteld |
| 1 TXT of 1 MD (inline_text-modus) | Alle modellen — tekst wordt in de prompt opgenomen |
Bijlagen worden gefactureerd als invoertokens gerapporteerd door de modelprovider — Entity Enricher rekent geen aparte kosten per document. De kosten hangen af van het bestandstype en het geselecteerde model.
Verbruiken modelspecifieke invoertokens. Anthropic rekent ongeveer 1700 tokens per PDF-pagina; OpenAI prijst vision-invoer op basis van het aantal tiles; modellen die audio ondersteunen meten audio-invoer naar rato van de duur. Bekijk de prijskaart van je model in Models & Pricing.
De geëxtraheerde tekst verbruikt invoertokens tegen het standaard teksttarief. Grote documenten zijn begrensd op 500 KB geëxtraheerde tekst — langere inhoud wordt afgekapt.