DataWorks Copilot は、DataWorks に組み込まれた AI アシスタントです。AI 推論および自然言語処理(NLP)を活用して、SQL や Python のコード生成・リファクタリング、複雑なデータ開発およびデータガバナンスタスクの自動化、そして既に使用しているモジュール内での直感的なインテリジェント支援を、すべて自然言語で実現します。
仕組み
Copilot は、DataWorks に以下の 3 つの機能を統合します。
| 機能 | 機能概要 | 主な利用シーン |
|---|---|---|
| Agent | DataWorks の各モジュールを横断した、マルチステップタスクの自律的な計画および実行 | データ統合パイプライン、ETL ワークフロー、ガバナンス対応、オペレーション&メンテナンス(O&M)診断 |
| AI コーディングアシスタント | SQL および Python の生成、補完、リファクタリング、デバッグ、説明 | 単一のコーディングタスク:クエリ作成、バグ修正、コメント追加など |
| クイック AI アクション | 特定の DataWorks モジュール内に埋め込まれたワンクリック操作 | クエリ結果の可視化、テーブル作成、デプロイ説明文の生成、タスク失敗の診断 |
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
-
DataWorks Basic Edition 以上のアカウントをご利用ください。
-
Alibaba Cloud アカウントの所有者、テナント管理者、または組織全体で Copilot を有効化できる権限を持つユーザーである必要があります。
一部の機能は、新規 Data Studio のみでご利用いただけます。
Copilot の有効化
Copilot は、Alibaba Cloud アカウントごとに 1 回のみの有効化が必要です。有効化後、そのアカウント配下のすべてのユーザーが Copilot を利用できます。
-
DataWorks インターフェイスの右上隅にある Copilot アイコンをクリックします。
-
DataWorks Copilot サービス契約書 をお読みください。
-
参加を確定 をクリックします。
Copilot はパブリックプレビュー期間中は無料でご利用いただけます。パブリックプレビュー終了後は有料サービスとなります。料金の詳細は、後日発表いたします。
Copilot を開く
Copilot には、以下の 3 つの起動方法があります。
-
グローバル起動ポイント:DataWorks インターフェイスの右上隅にある Copilot アイコンをクリックし、Copilot チャットウィンドウを開きます。
-
エディター内から起動:コードベースノード向けのインテリジェントコードエディター内で、右クリックまたはキーボードショートカットを使用して Copilot を起動します。
-
モジュール内に埋め込み起動:特定の製品モジュール内に表示される、Copilot アイコン付きのクイックアクションボタンをご利用ください。
グローバル起動ポイントから Copilot を起動すると、「データ同期」「インテリジェントテーブル検出」「データ開発」「データガバナンス」などの事前定義シナリオカードが表示されます。該当するカードをクリックすると、そのシナリオ向けのサンプルプロンプトが読み込まれます。
Agent:複雑なタスクの自動化
DataWorks Agent は、単なる質問応答(Q&A)を超えています。大規模言語モデル(LLM)の推論および計画能力を活用し、ユーザーの目的を理解してステップに分解し、実行計画を作成したうえで、DataWorks MCP Server(Model Context Protocol Server)に連携して関連ツールを呼び出し、タスクを自動的に実行します。
ヒント:マルチステップタスク(例:エンドツーエンドの ETL ワークフロー構築、複数テーブルにわたる品質ルール設定、失敗したタスクインスタンスの診断など)には、Agent モードをご利用ください。一方、SQL スニペットの生成や関数の説明など、単一ステップのタスクには、Ask モードの方が迅速です。
Agent モードへの切り替え
-
Copilot チャットウィンドウで、Ask モード から Agent モード に切り替えます。
-
/を入力し、適切な Agent タイプを選択します。 -
タスクを開始するためのリクエストを入力します。
Agent の種類
Data Studio Agent
要件分析、コード生成、ワークフロー作成、デプロイメントまでを含む、自然言語ベースの ETL 開発体験を提供します。
使い始めのサンプルプロンプト:
-
「
ods_ordersテーブルからデータを読み込み、過去 7 日間のレコードをフィルターし、結果をdws_orders_weeklyに書き込む ETL ワークフローを作成してください。」 -
「売上サマリーテーブルへ毎日の増分データをロードするスケジュール済みワークフローを生成してください。」
Data Integration Agent
データ同期の要件を自然言語で記述してください。Agent が意図を解析し、ソースおよび送信先のデータソースタイプ、テーブルスキーマのマッピング、フィールドフィルター条件、パーティショニング戦略、スケジューリングパラメーターを含む、完全なタスク構成を自動生成します。
使い始めのサンプルプロンプト:
-
「MySQL の
user_profileテーブルを、テストアカウントを除外して毎日午前 2 時に MaxCompute へ同期してください。」 -
「PostgreSQL の注文データベースから OSS へ、Parquet 形式でフルロード同期タスクを作成してください。」
Data Map Agent
膨大なデータセットを対象とした AI 主導の自然言語検索により、データの検出および理解の効率を向上させます。
使い始めのサンプルプロンプト:
-
「ユーザー活動に関連するサマリーテーブルを検索してください。」——正確なキーワードを指定せずに、ビジネス意図に基づく検索が可能です。
-
「
adm_biプロジェクト内で、ビジネス運用に関連するテーブルを検索してください。」——検索範囲を特定プロジェクトに限定できます。 -
「
dws_bi_metric_diテーブルの直接のダウンストリーム依存関係は何ですか?変更時に影響を受けるオーナーは誰ですか?」——データリネージおよび所有者情報を取得できます。
Data Governance Agent
自然言語によるコマンドを発行することで、品質ルールの設定から識別された課題の対応まで、ガバナンスアクションを自動的に実行します。
使い始めのサンプルプロンプト:
*品質ルールの設定:*
-
「コアユーザーのディメンションテーブル
dim_user_infoに対して、品質ルールを自動生成してください。」 -
「
ods_で始まるテーブルについて、テーブル行数に関連する品質ルールを自動設定してください。」
*品質課題の対応:*
-
「頻繁にアクセスされるが品質ルールが未設定のテーブルを検索し、推奨と設定を実行してください。」
-
「データ品質ディメンションにおける課題の解決を支援してください。」
Data O&M Agent
タスクインスタンスの包括的なヘルス評価および課題診断を提供します。Agent は依存関係チェーン、リソース使用量、過去の実行傾向、変更の影響、ログ異常、データ品質を分析し、構造化された診断レポートを生成します。
詳細については、「AI 主導の O&M」をご参照ください。
AI コーディングアシスタント
AI コーディングアシスタントは、インテリジェントコードエディターおよび Copilot チャット内で、SQL および Python のコーディングタスクを処理します。
タスクに最適な結果を得るために、DataWorks のデフォルトモデル、Qwen、DeepSeek の複数モデルを切り替えてご利用いただけます。
エディター内での利用
コード補完 — コードベースノードの開発中に、Copilot が既に記述されたコードや参照テーブルスキーマなどのコンテキストに基づき、次に続くコードを予測・提案します。提案は自動的に表示され、Tab キーを押すと選択できます。
右クリックアクション — インテリジェントコードエディター内でコードを選択し、右クリックしてコンテキストメニューから Copilot を選択すると、クイックコマンドにアクセスできます。
Copilot チャット(Ask モード)内での利用
Ask モードは Copilot チャットのデフォルトモードです。エディター内でコードを選択してコンテキストとして利用し、Copilot にそのコードに対する操作を依頼します。
サポートされるタスク:
| タスク | 実行方法 | 例 |
|---|---|---|
| ETL スクリプトの生成 | 要件を入力 | 「dwd_ec_trd_create_ord_di を基に、2024 年 9 月 1 日~18 日の SPU ごとの売上金額、売上数量、SKU 数、購入者数、販売者数を計算してください。」 |
| コードのリファクタリング | 変更内容を記述 | 「UNPIVOT を使用して SQL 結果を列から行に転置してください。」 |
| コードのデバッグ | コードを選択し、クイックコマンドを使用 | 「診断を実行」をクリックするか、失敗したコードを選択して右クリックしてください。 |
| コードの説明 | コードを参照 | 「この SQL を説明してください。」 |
| コメントの生成 | コードを参照 | 「各フィールドについてコメントを追加してください。」 |
| コードに関する質問(Code Q&A) | 質問する | 「MaxCompute で mapjoin を記述するにはどうすればよいですか?」 |
| パフォーマンスの最適化 | コードを選択し、クイックコマンドを使用 | コードを選択し、チャットを開いて最適化を依頼してください。 |
| テストケースの生成 | コードを参照 | 「SQL のテストケースを生成し、テスト手順を説明してください。」 |
クイック AI アクション
DataWorks のモジュールには、一般的な操作向けに埋め込まれたワンクリック AI アクションが備わっています。
クエリ結果の可視化
ノードの実行または SQL クエリの完了後に、結果領域の可視化タブに切り替えることで、チャートおよびデータインサイトを生成できます。
インテリジェントなテーブル作成
Data Studio カタログで、テーブル名のキーワードを入力すると、ワンクリックで AI が推奨するフィールド名および説明が表示されます。
公開用の説明文を生成する
Data Studio 内のデプロイメントプロセスにおいて、ワンクリックでデプロイ説明文を生成できます。
タスク失敗の診断
オペレーションセンターでタスクが失敗した場合、診断を実行 をクリックします。Copilot は Qwen や DeepSeek-R1(671B)などの大規模言語モデルと統合されており、ログから重要な情報を抽出し、エラー分析および解決策を提示するとともに、クイックアクションを推奨します。
アクセス方法:オペレーションセンターのページで、自動トリガー型ノード O&M > 自動トリガー型インスタンス に移動します。失敗したインスタンスをクリックし、失敗したノードを選択して、右下隅の 診断を実行 をクリックします。
データ品質ルールの推奨
Data Quality ページで、ルールの設定 > テーブル単位での設定 に移動します。対象テーブルを選択し、モニターの作成 をクリックして Copilot を起動し、そのテーブル向けの品質ルールを生成します。
DataService Studio API の作成
DataService Studio モジュールで新しい API を作成し、コードエディターモードを選択します。Copilot が要件に基づいた SQL スクリプトを生成し、リクエストおよびレスポンスパラメーターに自動的に解析します。
コンテキストを活用した精度向上
Copilot の応答精度は、適切なコンテキストがある場合に大幅に向上します。この精度向上には、永続的な知識を制御する「ルール」と、会話単位の入力を制御する「コンテキスト参照」の 2 つの仕組みがあります。
カスタム知識(ルール)
ルールとは、一度定義すればすべての Copilot インタラクションに適用されるガイドライン、標準、背景知識です。
ルールの設定:Copilot チャットウィンドウの右上隅にある
アイコンをクリックします。
| ルールの種類 | 設定担当者 | 適用範囲 | 用途 |
|---|---|---|---|
| 組織レベルのルール | 管理者 | 組織全体(設定可能な範囲) | 全社共通のビジネス用語、コーディング標準 |
| 個人レベルのルール | 個々のユーザー | 現在のユーザーのみ | 個人のプリファレンス、頻繁に使用するコードスニペット |
会話単位でのコンテキスト指定
各会話において、関連するデータに焦点を当ててより正確な結果を得るために、コンテキストを追加できます。
Copilot チャットの入力ボックスで、@ を入力するか、+ をクリックしてコンテキストセレクターを開きます。
| コンテキストの種類 | Copilot がアクセス可能な情報 |
|---|---|
| テーブル | 1 つまたは複数のテーブルのメタデータ |
| ノード/コードファイル | 特定のノード内のコード |
| データコレクション | Data Map からのデータコレクション |
| ルール | 1 つまたは複数のルール(当該会話のみに適用) |
| ローカルファイル | 背景情報としてアップロードしたドキュメント |
会話の管理
会話履歴
Copilot は最近の会話を自動保存します。過去 7 日間の最大 100 件の履歴を閲覧できます。
アクセス方法:Copilot チャットウィンドウの右上隅にある 履歴 をクリックします。
タスクごとに新しいチャットを開始
独立したタスクごとに新しいチャットを開始してください。これにより、異なるタスクのコンテキストが互いに干渉することを防ぎ、Copilot を現在のタスクに集中させることができます。
利用可能地域
| 属性 | 詳細 |
|---|---|
| 対象ユーザー | DataWorks Basic Edition 以上 |
| 現在の段階 | パブリックプレビュー |
| 課金 | パブリックプレビュー期間中は無料、パブリックプレビュー終了後は有料 |
| 利用可能リージョン | 中国 (張家口)、中国 (北京)、中国 (ウランチャブ)、中国 (杭州)、中国 (上海)、中国 (深セン)、中国 (成都)、中国 (香港)、シンガポール、マレーシア (クアラルンプール)、インドネシア (ジャカルタ)、日本 (東京) |
よくある質問
Copilot の応答が不正確または期待通りでないのはなぜですか?
最も一般的な原因は、コンテキストが不十分であることです。@ または + を入力ボックスで使用して、関連するテーブル、コードファイル、またはルールを追加してください。コンテキストが正確であればあるほど、応答の精度も高まります。「会話単位でのコンテキスト指定」をご参照ください。
Ask モードと Agent モードの違いは何ですか?
Ask モードは、コードスニペットの生成、関数の説明、コードブロックのデバッグといった単一ステップのタスクに対応します。一方、Agent モードは、計画・ツール利用・DataWorks を横断した自律的実行を必要とするマルチステップタスク(例:完全な ETL パイプラインの構築、複数テーブルにわたるデータ品質課題の対応など)向けです。タスクが複数のステップから構成される場合は、Agent モードに切り替えてください。
Copilot の応答を英語で受け取るにはどうすればよいですか?
プロンプトに明確な指示を追加してください。例えば、"Please respond in English" や "Explain in English" などです。また、DataWorks インターフェイスの言語を英語に切り替えると、英語応答の一貫性および精度がさらに向上します。