Cloudflareは、Cloudflare Workersで機械学習モデルを利用した推論を可能にする「Constellation」を発表した。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Cloudflareは2023年5月13日(米国時間)、同社のサーバレスプラットフォーム「Cloudflare Workers」で機械学習(ML)モデルを利用した推論を可能にする「Constellation」を発表した。Constellationを使用することで、Cloudflare Workersでトレーニング済みのMLモデルを利用し、推論タスクを実行できるという。
Cloudflareは発表の中で「開発者にとってAIがコモディティ化しているとはまだ言えない。多くの場合、開発者はAIの背後にある数学を理解する必要があり、ソフトウェアやツールは複雑で散在しており、枠組みやデータを実行するハードウェアやクラウドサービスは高価だ。誰もがCloudflare Workers上でMLモデルを実行し、推論できる」と述べている。
Cloudflareは、Cloudflare Workersで展開できるAIアプリケーションの例として以下を挙げた。
開発者は、Cloudflareが検証済みのMLモデルを利用したり、「Hugging Face」や「ONNX Zoo」といった機械学習ハブで公開されているトレーニング済みのMLモデルなどをConstellationにアップロードしたりして、MLモデルを活用したエッジAIアプリを構築できる。
import { imagenetClasses } from './imagenet'; import { Tensor, run } from '@cloudflare/constellation'; export interface Env { CLASSIFIER: any, } export default { async fetch(request: Request, env: Env, ctx: ExecutionContext) { const formData = await request.formData(); const file = formData.get("file"); const data = await file.arrayBuffer(); const result = await processImage(env, data); return new Response(JSON.stringify(result)); }, }; async function processImage(env: Env, data: ArrayBuffer) { const input = await decodeImage(data) const tensorInput = new Tensor("float32", [1, 3, 224, 224], input) const output = await run(env.CLASSIFIER, "MODEL-UUID", tensorInput); const probs = output.squeezenet0_flatten0_reshape0.value const softmaxResult = softmax(probs) const results = imagenetClasses(softmaxResult, 5); const topResult = results[0]; return topResult }
2023年5月31日時点で、ONNX(Open Neural Network Exchange)ランタイムをサポートしており、今後、対応ランタイムを拡大させる予定だという。
Copyright © ITmedia, Inc. All Rights Reserved.