文档附件 - Entity Enricher 文档

文档附件

为任意增强、模式生成、样本生成、AI 模式编辑或演练场请求附加 PDF、图片、录音、Office 文档、电子表格、幻灯片和文本文件。文件可以原生字节形式(面向支持 PDF、视觉和音频的模型)送达模型,或以服务器提取的文本形式内联到提示词中——无需手动 OCR、转录、转换或分块。

可在何处附加文档

单个增强
在 JSON 输入之外,为每条记录附加附件
批量丰富化
应用于 batch 中每个 entity 的共享 attachment
Schema 生成(引导式)
根据示例文档生成模式
示例 JSON 生成
从源文件中提取示例实体
AI 模式编辑
使用自然语言 + 参考文档优化 schema
Playground
带附件的自由格式自定义 prompt

两种传输模式

每种受支持的 MIME 类型都有一个由管理员配置的投递模式。该模式决定文件如何送达 model。

binary原生字节

原始字节以 BinaryContent 形式传递给模型。模型直接读取文件——无需服务器端预处理。

需要具备相应能力标志的模型(PDF 对应 supports_pdf_input,图片对应supports_vision,音频对应supports_audio_input)。模型选择器会自动筛选,仅显示兼容的模型。

inline_text提取的文本

服务器端提取器在上传时运行一次,并缓存生成的文本。在之后的每次 LLM 调用中,缓存的文本都会内联到用户提示词中。

无需模型能力要求 — 适用于所有模型。纯文本和 Markdown 会跳过提取器,直接解码原始字节。

支持的格式

默认启用 19 种格式。系统管理员可在 binaryinline_text 模式之间切换任意格式、更改其标签,或从 模型管理 → 文档策略 中将其完全禁用。

格式扩展默认模式能力 / 提取器
PDF 文档.pdfbinarysupports_pdf_input
PNG 图像.pngbinarysupports_vision
JPEG 图像.jpg, .jpegbinarysupports_vision
MP3 音频.mp3binarysupports_audio_input
WAV 音频.wavbinarysupports_audio_input
M4A 音频.m4abinarysupports_audio_input
OGG 音频.ogg, .ogabinarysupports_audio_input
FLAC 音频.flacbinarysupports_audio_input
纯文本.txtinline_text原始解码
Markdown.md, .markdowninline_text原始解码
Word(旧版 .doc).docbinarydocx2txt
Word (.docx).docxbinarypython-docx
OpenDocument 文本.odtbinaryodfpy
富文本格式.rtfbinarystriprtf
EPUB 电子书.epubbinaryebooklib
HTML.html, .htmbinarybeautifulsoup
CSV.csvbinarycsv (stdlib)
电子表格 (.xlsx).xlsxbinaryopenpyxl
演示文稿 (.pptx).pptxbinarypython-pptx

限制

10 MB
每个文件
拒绝超过此上限的上传
50 MB
每次请求
单次上传中所有文件的总和
无限制
文件数量
仅受每次请求总计 50 MB 的限制
提取文本上限:每个附件 500 KB——较长的源文档在服务器端提取时会被截断。提取器超时:每个附件 10 秒实际耗时(超过超时的上传仍会成功;文件会被存储,但其提取文本为空)。

生命周期

1
上传
在任何受支持页面的附件面板中拖放或选择文件。浏览器提供的内容类型不受信任——服务器会嗅探魔数字节,并拒绝允许列表之外的任何内容。每个文件都会经过哈希处理 (SHA-256) 并存储在加密的块存储上。
2
按内容去重
在同一 organization 内两次上传相同字节的文件会去重为单个存储文件。两个不同的 organization 上传相同文件则会产生两条独立记录——不存在跨租户泄漏。去重键为 (organization_id, sha256)
3
提取一次(inline_text 模式)
对于 inline_text 格式,提取器会在上传时运行,生成的文本会缓存在附件行上。后续的 LLM 调用会复用缓存文本——无需再次提取,不产生额外费用。binary 格式会跳过此步骤。
4
在任意任务中按 ID 引用
上传后,附件将在后续的扩充、模式生成或 Playground 请求中通过 ID 传递。每个附件都会以原生字节(binary 模式)或内联文本(inline_text 模式)的形式添加到模型的用户内容中,并保留原始文件名。
5
已保存到记录中
当扩充记录被保存时,附件 ID 会关联到该记录。记录详情页会列出所有附件并带有下载按钮。无需重新上传即可重新合并或重试记录。
6
完成后删除(可选)
当您不再需要某个文件时,可使用 DELETE /api/attachments/{id} 将其删除——这是扩充完成后的一个便捷清理步骤。删除操作以组织为范围,并返回 { success, id, filename }

附件不仅可从网页 UI 上传和删除,也可通过编程方式进行:n8n 连接器通过原生 multipart 上传,Make.com 和 MCP 连接器通过 base64 JSON 方式上传,任何客户端都可以直接使用 REST API(用 DELETE /api/attachments/{id} 进行清理)。

自动模型筛选

当你附加带有能力要求的 二进制 文件(PDF、图像或音频)时,model 选择器会经过筛选,只显示声明了该能力的 model。如果你附加多个具有不同要求的文件,则只会显示满足 所有 要求的 model。

已附加的文件符合条件的 model
1 个 PDFsupports_pdf_input
1 个 PNGsupports_vision
1 个 MP3supports_audio_input
1 个 PDF + 1 个 PNGsupports_pdf_inputsupports_vision
1 个 DOCX(二进制模式,无相应能力)所有模型 — 未设置能力标志时默认支持原生字节
1 个 TXT 或 1 个 MD(inline_text 模式)所有模型 — 文本内联到提示词中

定价与 token 用量

附件按模型提供商所报告的输入 token 计费——Entity Enricher 不会单独收取按文档计费的费用。费用取决于文件类型和所选模型。

PDF、图片和音频(binary 模式)

消耗特定于模型的输入 token。Anthropic 每个 PDF 页面约收取 1700 个 token;OpenAI 按图块数量对视觉输入计价;支持音频的模型则按音频时长比例计量音频输入。请在 模型与定价 中查看您所用模型的定价卡。

办公文档与电子表格(已提取文本)

提取的文本按标准文本费率消耗输入 token。大型文档提取文本上限为 500 KB——超出部分将被截断。

安全与租户

带魔术字节嗅探的 MIME 允许列表
浏览器提供的内容类型会被忽略。服务器会检查文件头,并拒绝任何不在已配置允许列表中的内容。
组织范围的存储
每个文件都存储在其所属的组织之下。下载端点会强制校验组织成员身份——通过 API 无法访问其他租户的文件。
沙箱化提取器
每个提取器在 try/except 边界内以 10 秒的实际运行超时执行。异常文件无法拖慢或使 API 进程崩溃。
静态加密
附件字节存储在加密的块存储上,以受限权限挂载到应用程序容器中。
由管理员控制的按 MIME 类型策略
系统管理员可以在全局范围内禁用任意格式、将格式从 binary 更改为 inline_text(或反之),或为其重新命名。更改将在下次上传该 MIME 类型时生效。