Markdown ↗ 对于训练和推理中的文本生成和大型语言模型 (LLM)至关重要,因为它可以提供结构化、语义化、人类和机器可读的输入。同样,Markdown 有助于对输入数据进行分块和结构化,以便在 RAG 的上下文中更好地检索和综合,其简单性和易于解析和呈现的特点使其成为 AI 代理的理想选择。
由于这些原因,文档转换在设计和开发 AI 应用程序时扮演着重要角色。Workers AI 提供了 toMarkdown
实用方法,开发人员可以从 env.AI
绑定或 REST API 中使用该方法,以便快速、轻松、方便地将多种格式的文档转换为 Markdown 语言并进行摘要。
获取不同格式的文档列表并将其转换为 Markdown。
documents
: array -toMarkdownDocument
的数组。
results
: array -toMarkdownDocumentResult
的数组。
-
name
string- 要转换的文档的名称。
-
blob
Blob- 一个包含文档内容的新 Blob ↗ 对象。
-
name
string- 转换后文档的名称。与输入名称匹配。
-
mimetype
string- 文档检测到的 mime 类型 ↗。
-
tokens
number- 转换后文档的估计令牌数。
-
data
string- 转换后文档的内容,格式为 Markdown。
这是支持的格式列表。我们会不断添加新格式并更新此表。
Format | File extensions | Mime Types | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PDF Documents |
|
| ||||||||||||
Images 1 |
|
| ||||||||||||
HTML Documents |
|
| ||||||||||||
XML Documents |
|
| ||||||||||||
Microsoft Office Documents |
|
| ||||||||||||
Open Document Format |
|
| ||||||||||||
CSV |
|
| ||||||||||||
Apple Documents |
|
|
1 Image conversion uses two Workers AI models for object detection and summarization. See Workers AI pricing for more details.
在此示例中,我们从 R2 获取一个 PDF 文档和一张图片,并将它们都提供给 env.AI.toMarkdown
。结果是一个转换后的文档列表。Workers AI 模型会自动用于检测和总结图像。
import { Env } from "./env";
export default { async fetch(request: Request, env: Env, ctx: ExecutionContext) { // https://pub-979cb28270cc461d94bc8a169d8f389d.r2.dev/somatosensory.pdf const pdf = await env.R2.get("somatosensory.pdf");
// https://pub-979cb28270cc461d94bc8a169d8f389d.r2.dev/cat.jpeg const cat = await env.R2.get("cat.jpeg");
return Response.json( await env.AI.toMarkdown([ { name: "somatosensory.pdf", blob: new Blob([await pdf.arrayBuffer()], { type: "application/octet-stream", }), }, { name: "cat.jpeg", blob: new Blob([await cat.arrayBuffer()], { type: "application/octet-stream", }), }, ]), ); },};
这是结果:
[ { "name": "somatosensory.pdf", "mimeType": "application/pdf", "format": "markdown", "tokens": 0, "data": "# somatosensory.pdf\n## Metadata\n- PDFFormatVersion=1.4\n- IsLinearized=false\n- IsAcroFormPresent=false\n- IsXFAPresent=false\n- IsCollectionPresent=false\n- IsSignaturesPresent=false\n- Producer=Prince 20150210 (www.princexml.com)\n- Title=Anatomy of the Somatosensory System\n\n## Contents\n### Page 1\nThis is a sample document to showcase..." }, { "name": "cat.jpeg", "mimeType": "image/jpeg", "format": "markdown", "tokens": 0, "data": "这张图片是"不爽猫"的特写照片,这只猫以其独特的"不爽"表情和锐利的蓝眼睛而闻名。这只猫的脸是棕色的,鼻子上有一条白色的条纹,耳朵竖立着。它的皮毛是浅棕色的,脸部周围的颜色较深,鼻子和嘴巴是粉红色的。猫的眼睛是蓝色的,向下倾斜,使它看起来永远都是一副"不爽"的样子。背景是模糊的,但看起来是深棕色的。总的来说,这张图片是流行的网络迷因角色"不爽猫"的一个幽默而标志性的代表。猫的面部表情和姿势传达出一种不悦或烦恼的感觉,这使得它对许多人来说是一个既 relatable 又有趣的图片。" }]
除了 Workers AI 绑定,您还可以使用 REST API:
curl https://api.cloudflare.com/client/v4/accounts/{ACCOUNT_ID}/ai/tomarkdown \ -H 'Authorization: Bearer {API_TOKEN}' \
toMarkdown
对于大多数格式转换是免费的。在某些情况下,例如图像转换,它可以使用 Workers AI 模型进行对象检测和摘要,如果超出 Workers AI 的免费配额限制,可能会产生额外费用。有关更多详细信息,请参阅定价页面。
- @2025 Cloudflare Ubitools
- Cf Repo