INTEGRITY Dokumentace

Workers Binding

Bezserverová platforma Cloudflare vám umožňuje spouštět kód na edge a vytvářet tak fullstack aplikace pomocí Workers. binding umožňuje vašemu Workeru nebo Pages Function pracovat s prostředky na Cloudflare Developer Platform.

Chcete-li využívat naši službu Markdown Conversion přímo z Workers, vytvořte vazbu AI buď v Cloudflare dashboardu (viz AI bindings s pokyny), nebo můžete aktualizovat Soubor Wrangler. Do souboru Wrangler přidejte následující:

{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "ai": {
    "binding": "AI"
  }
}
[ai]
binding = "AI" # i.e. available in your Worker on env.AI

Příklady

Převod souborů

V tomto příkladu načteme dokument PDF a obrázek z R2 a oba předáme env.AI.toMarkdown. Výsledkem je seznam převedených dokumentů. Modely Workers AI se automaticky použijí k detekci a shrnutí obrázku.

import { Env } from "./env";

export default {
	async fetch(request, env, ctx) {
		// 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/pdf",
					}),
				},
				{
					name: "cat.jpeg",
					blob: new Blob([await cat.arrayBuffer()], {
						type: "image/jpeg",
					}),
				},
			]),
		);
	},
};
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/pdf",
					}),
				},
				{
					name: "cat.jpeg",
					blob: new Blob([await cat.arrayBuffer()], {
						type: "image/jpeg",
					}),
				},
			]),
		);
	},
};

Zjištění podporovaných formátů souborů

import { Env } from "./env";

export default {
	async fetch(request, env, ctx) {
		return Response.json(await env.AI.toMarkdown().supported());
	},
};
import { Env } from "./env";

export default {
	async fetch(request: Request, env: Env, ctx: ExecutionContext) {
		return Response.json(await env.AI.toMarkdown().supported());
	},
};

Metody

async env.AI.toMarkdown()

Přijímá dokument nebo seznam dokumentů v různých formátech a převádí je do formátu Markdown.

const result = await env.AI.toMarkdown({
	name: "document.pdf",
	blob: new Blob([documentBuffer]),
});
const result = await env.AI.toMarkdown({
	name: "document.pdf",
	blob: new Blob([documentBuffer]),
});

Parametr

Návratové hodnoty

MarkdownDocument definice

ConversionResult definice

async env.AI.toMarkdown().transform()

Tato metoda je podobná env.AI.toMarkdown s tím rozdílem, že je zpřístupněna prostřednictvím nového handle. Přijímá stejné argumenty a vrací stejné hodnoty.

const result = await env.AI.toMarkdown().transform({
	name: "document.pdf",
	blob: new Blob([documentBuffer]),
});
const result = await env.AI.toMarkdown().transform({
	name: "document.pdf",
	blob: new Blob([documentBuffer]),
});

async env.AI.toMarkdown().supported()

Vrátí seznam formátů souborů, které jsou aktuálně podporovány pro převod do markdownu. Viz Podporované formáty pro úplný seznam formátů souborů, které lze převést do Markdownu.

const formats = await env.AI.toMarkdown().supported();
const formats = await env.AI.toMarkdown().supported();

Návratové hodnoty

SupportedFormat definice