すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:ベストプラクティス

最終更新日:Aug 22, 2026

このトピックでは、実際の開発における MaxFrame フレームワークの主要な機能とベストプラクティスについて説明します。実行可能なコード例とシナリオベースの手順を提供することで、MaxFrame のコア機能を迅速に理解し、習得するのに役立ちます。これにより、導入のハードルが下がり、開発効率が向上します。

一般的な機能とコア機能

機能モジュール

コア機能

典型的な応用シナリオ

利点と特徴

apply / apply_chunk 演算子

DataFrame またはデータチャンクに対するユーザー定義関数 (UDF) の並列実行をサポートします。

UDF の構築が必要な複雑なユーザー定義計算ロジック。複数の入力行の並列処理が必要な大規模データ処理。

Python 関数のネイティブ呼び出し、自動分散スケジューリング、および同時バッチ処理をサポートし、処理効率を大幅に向上させます。

GU リソースの使用

ヘテロジニアスコンピューティング向けに、CU と GU のハイブリッドスケジューリングをサポートします。

ディープラーニング推論とマルチモーダルデータ処理。

異種リソース (CU と GU) の統合管理により、単一のジョブパイプラインで完全な処理フローを構築できます。

AI Function on GU

組み込みの大規模言語モデル (LLM) とカスタムモデルをサポートします。AI Function API を呼び出して GU リソースを使用することで、LLM 推論を実行できます。

バッチモデル推論シナリオ (構造化データ抽出、テキスト翻訳、データラベリング、画像分類、音声認識、ベクトル化など)。

Qwen3 や DeepSeek などの主要な組み込み LLM に対応しています。generate や task などの API を提供します。モデルを自動的に GU にロードし、低レイテンシー、高同時実行性を実現します。

OSS のマウントとアクセス

Object Storage Service (OSS) の直接マウントをサポートし、大量のデータの読み取り、書き込み、操作が可能です。

マルチモーダルデータセットの読み込み。

OSS をダウンロードせずにマウント可能で、ストリーム読み取りをサポートし、標準のファイル API と互換性があります。

具体的なユースケース

apply および apply_chunk 演算子の使用に関するベストプラクティス

データ量と利用可能なリソースに基づいて batch_rows パラメーターを設定し、メモリ不足 (OOM) エラーを防止してください。

機能の説明

  • apply は、MaxFrame DataFrame の行または列にカスタム関数を適用します。行または列全体に対するベクトル化操作をサポートします。

  • apply_chunk は、MaxFrame が提供する低レベル API です。MaxFrame DataFrame の各データチャンクにカスタム関数を並列に適用します。分散 DataFrame の物理シャードに対する直接操作が必要な高度なシナリオに適しており、パフォーマンスの最適化やカスタム計算ロジックによく使用されます。

ユースケースの例

  • apply を使用して、電話番号のマスキングなど、フィールドを標準化します。

  • apply_chunk を使用して、数百万の画像パスを並列処理し、メタデータを抽出します。

チュートリアル

MaxFrame apply_chunk 演算子の使用に関するベストプラクティス

MaxFrame GU リソースの使用

機能の説明

複雑なデータ処理やジョブパイプラインでは、異なる計算ノード上の CU または GU リソースが必要になることがよくあります。MaxFrame は、CU および GU リソースのハイブリッドスケジューリングと計算をサポートします。MaxFrame UDF では、リソースタグを使用して GU クォータを要求し、ハイパフォーマンスコンピューティング (HPC) タスクを実行できます。

ユースケースの例

  • 画像またはビデオフレームの抽出とエンコーディング

  • 複雑なデータ処理

チュートリアル

AI Function on GU を使用した開発のベストプラクティス

使用する LLM のパラメーター数に対して十分な GPU メモリを持つ GPU カードを選択して購入してください。

機能の説明

MaxFrame AI Function は、Alibaba Cloud MaxCompute プラットフォーム上のオフライン LLM 推論シナリオ向けのエンドツーエンドのソリューションです。そのコア機能は次のとおりです:

  • データ処理と AI 機能のシームレスな統合

    • MaxFrame DataFrame を介して、Qwen3-4B などの LLM と直接対話できます。

    • generate および task API を提供し、柔軟性と使いやすさを両立させています。

  • GPU リソーススケジューリング (GU)

    • gu_quota_name を使用して GPU リソースを要求し、さまざまなサイズのモデルに対応できます。たとえば、4B モデルの場合、2 GU が必要です。

  • LLM のマネージド呼び出し

    • Qwen3-4B-Instruct-2507-FP8 などの組み込みモデルライブラリが用意されており、temperature や max_tokens などのパラメーターチューニングをサポートします。

    • 大規模な同時スケジューリングをサポートし、バッチ推論のパフォーマンスを最適化します。

ユースケースの例

  • ナレッジ Q&A

    • シナリオの説明:自然科学、歴史、技術などの分野の質問に答えます。多言語での質問や複雑な推論に対応しています。

    • 典型的な応用例:

      • 科学計算: "What is the average distance between the Earth and the Sun?"

      • 歴史上の出来事: "In what year did the American Revolutionary War begin?"

      • 技術原理: "What is the core mechanism of the Transformer model?"

  • テキスト翻訳

    • シナリオの説明:言語間でテキストを翻訳します。中国語と英語の翻訳をサポートし、専門分野の用語にも対応しています。

    • 典型的な応用例:

      • 中国語から英語へ: "如何缓解头痛?" → "How to relieve a headache?"

      • 法律/医療テキストの翻訳: "The patient needs to take one aspirin tablet daily."

  • 構造化データ抽出

    • シナリオの説明:非構造化テキストから主要なエンティティ、プロパティ、または関係を抽出します。

    • 典型的な応用例:

      • エンティティ抽出:

        • 入力: "The iPhone 15 Pro is the latest flagship phone released by Apple."

        • 出力: {"product": "iPhone 15 Pro", "brand": "Apple", "type": "flagship phone"}

      • 履歴書の解析:

        • 入力: "田中太郎、Java 開発経験 5 年、Spring Boot フレームワークに習熟。"

        • 出力: {"name": "Zhang San", "skills": ["Java", "Spring Boot"], "experience": 5}

チュートリアル

OSS のマウントと使用に関するベストプラクティス

パフォーマンスを向上させるために、この機能を apply_chunk と組み合わせて並列読み取りを実装できます。

機能の説明

データ分析シナリオでは、MaxFrame ジョブを OSS などの永続的なオブジェクトストレージと併用することがよくあります。例:

  • OSS から生データをロードして、クレンジングや処理を行います。

  • 中間結果を OSS に書き込み、後続のタスクで利用します。

  • トレーニング済みのモデルファイルや設定ファイルなどの静的リソースを共有します。

従来の読み書きメソッド (例: pd.read_csv("oss://...")) は、SDK のパフォーマンス制限やネットワークオーバーヘッドのため、分散環境では非効率です。ファイルシステムレベルのマウント (FS マウント) を使用すると、MaxCompute 内の OSS ファイルにローカルディスクファイルのようにアクセスできます。これにより、開発効率が大幅に向上します。

ユースケースの例

  • oss://maxframe-datasets/images/ の OSS バケットディレクトリを、後続の処理のためにローカルの MaxCompute パス /data/imgs にマウントします。

チュートリアル