コンセプト: DatabricksでのAIの生成
GenAI アプリは、生成AIモデル (大規模言語モデル、画像生成モデル、テキスト読み上げモデルなど) を使用して、新しい出力を作成したり、複雑なタスクを自動化したり、ユーザー入力に基づいてインテリジェントな対話を行ったりするアプリケーションです。
GenAI アプリは、LLM や他の GenAI モデルへの単純な呼び出し、または複雑な AI エージェントによって駆動できます。複雑さのレベルの詳細については、こちらをご覧ください。
GenAI アプリのエージェント、ツール、評価、モデルなどの側面は、独自のデータを使用してカスタマイズできます。このデータドリブンのカスタマイズはデータ インテリジェンスにつながり、既成のAIモデルが提供する一般的なインテリジェンスを超えることができます。
GenAIアプリケーション
ユーザー向けの GenAI アプリケーションには、次のようなさまざまな形式があります。
- Databricks Appsを使用してデプロイされたチャットアプリなど
- モデルサービングにデプロイされたエージェントなどのAPIエンドポイント
- AI関数などのアナリスト向けのSQL関数
GenAI アプリケーションを成功させるには、多くの場合、アプリケーション開発と AI 評価という 2 つのスキル セットが必要です。GenAI アプリの開発は、非 AI アプリケーションの開発とよく似ており、アプリケーションの種類に応じたソフトウェア スキルが必要です。ただし、GenAI アプリケーションの評価には、GenAI の複雑さとオープンエンドの応答を処理するための特殊なツールとテクニックが必要です。
Databricks 上で業界固有の GenAI アプリを構築する方法については、以下を参照してください。
- ユースケース、顧客、その他のリソースについては、Databricks の業界向けソリューションをご覧ください。
- Databricks ソリューション アクセラレータは、実行および変更できるユースケース実装の例です。
GenAI評価
GenAI モデル、エージェント、アプリケーションは、多くの場合、複雑でオープンエンドの動作をします。ユーザーは任意のクエリを入力できます。AI エージェントは実行中にテキストや画像などを収集できるようになります。出力は任意のテキスト、画像、またはその他のメディアにすることができ、多くの「適切な」回答が得られる可能性があります。
これらの複雑さにより、GenAI の評価は困難になります。適切な評価には以下が必要です。
- AIを評価するためのAIを使った自動化
- 専門家やユーザーからの人間によるフィードバックにより、グラウンドトゥルースを収集し、自動評価を調整します。
- 複雑なエージェントを深く掘り下げて動作を理解しデバッグする
Databricks が管理する MLflow と関連ツールは、GenAI 評価の基盤を提供します。
- AIエージェントの評価と監視- 評価、本番運用モニタリング、人間によるフィードバックについて学びます。
- 開始: GenAI 向け MLflow 3 - トレース、評価、および人間からのフィードバックの収集を試します。
- MLflow Tracing - GenAI の可観測性- エージェントの動作を記録および分析するためのMLflow Tracingについて学習します。
エージェント
エージェントまたはエージェント システムとは 、環境を自律的に認識、決定し、行動して目標を達成できる AI 駆動型システム です。プロンプトが表示されたときにのみ出力を生成するスタンドアロンの GenAI モデルとは異なり、エージェント システムはある程度の エージェンシー を備えています。最新の AI エージェントは、次のようなシステムの「頭脳」として GenAI モデルを使用します。
- 別のエージェントからのユーザー リクエストまたはメッセージを受信します。
- どのように進めるかについての理由: どのデータを取得するか、どのロジックを適用するか、どのツールを呼び出すか、またはユーザーにさらに入力を要求するかどうか。
- 計画を実行し、複数のツールを呼び出したり、サブエージェントに委任したりすることも可能です。
- 回答を返すか、ユーザーに追加の説明を求めます。
一般的なインテリジェンス (GenAI モデルの事前トレーニング済み機能) とデータ インテリジェンス(ビジネスに固有の専門知識とAPIs ) を橋渡しすることで、エージェント システムは、高度な顧客サービス フロー、データ豊富な分析ボット、複雑な運用タスクのためのマルチエージェント オーケストレーションなど、影響力の高いエンタープライズ ユース ケースを可能にします。
シンプルな GenAI モデルから複雑なエージェントまで連続性があります。詳細については、 「エージェント システムの設計パターン」を参照してください。
Databricks は、完全なガイド付きから完全なカスタムまで、エージェントを構築するためのさまざまなオプションを提供します。
-
Agent Bricks は、ナレッジ アシスタントや情報抽出などの主要なアプリケーション向けのガイド付きエージェント ビルダーを提供します。
-
AI Playground は、ツール呼び出しエージェントのプロトタイプ作成用の UI を提供し、そこから生成されたエージェント コードをエクスポートできます。
-
エージェント フレームワークを使用すると、カスタム コードまたはサードパーティのエージェント作成ライブラリを使用してエージェントを構築および展開できます。
ツール
AI エージェントはツールを呼び出して情報を収集したりアクションを実行したりできます。ツールは、LLM が明確に定義されたタスクを実行するために呼び出すことができる単一の対話関数です。AIモデルは通常、ツール呼び出しごとに struct を生成し、ツールは簡単な入出力対話を提供します。
一般的なツールのカテゴリは次のとおりです。
-
データを取得または分析するツール
- セマンティック検索 : ベクトル インデックスをクエリして、関連するテキストやその他の非構造化データを検索します。
- 構造化取得 : 実行SQLクエリまたはAPIsを使用して構造化情報を取得します。
- Web 検索ツール : インターネットまたは社内の Web コーパスを検索します。
- クラシック ML モデル : 機械学習モデルを呼び出して、分類、回帰、その他の予測を実行します。
- GenAI モデル : コードや画像などの特殊な出力を生成します。
-
外部システムの状態を変更するツール
- API 呼び出し : CRM エンドポイント、内部サービス、またはその他のサードパーティ統合を呼び出します。
- Eメールまたはメッセージング アプリの統合 : メッセージを投稿したり、通知を送信したりします。
-
ロジックを実行したり特定のタスクを実行したりするツール
- コード実行 : ユーザーが提供したコードまたは LLM によって生成されたコードをサンドボックスで実行します。
ツールはエージェント ロジックに組み込むことも、 MCPなどの標準化されたインターフェイスを使用してアクセスすることもできます。
ツールとエージェント:
- ツールは、明確に定義された単一の操作を実行します。エージェントはよりオープンエンドなタスクを実行できます。
- ツールは一般にステートレスであり、各呼び出しを超えて進行中のコンテキストを維持しません。エージェントはタスクを反復的に解決しながら状態を維持します。
ツールのエラー処理と安全性:
各ツール呼び出しは API 呼び出しなどの外部操作であるため、システムは障害を適切に処理する必要があります。タイムアウト、不正な応答、または無効な入力によって、エージェント自体が完全に失敗するようなことはあってはなりません。本番運用では、許可されるツール呼び出しの数を制限し、ツール呼び出しが失敗した場合はフォールバック応答を用意し、エージェント システムが同じ失敗したアクションを繰り返し試行しないようにガードレールを適用します。
Databricks の AI ツールの詳細については、以下をご覧ください。
- AIエージェントツール- ツールアプローチガイド
- Databricks 上のモデル コンテキスト プロトコル (MCP) - マネージド、カスタム、および外部 MCP サーバー
GenAIモデルとLLM
大規模言語モデル (LLM) は、人間の言語を理解、生成、推論できる大規模なテキスト データ セットでトレーニングされた AI モデルです。LLM は、入力プロンプトに基づいてコンテキストに関連するテキストを予測および生成することで、チャットボット、コード アシスタント、コンテンツ生成ツールなどのアプリケーションを強化します。
より一般的には、GenAI モデルまたは基盤モデルは、テキスト以外のモードについて学習するために、大量のテキスト、画像、ビデオ、オーディオ、またはその他のデータでトレーニングされます。 マルチモーダルモデルは、人間の言語を画像、音声、その他のメディアと結び付けることを学習します。LLM は GenAI または基盤モデルの一種ですが、これらの用語は多くの場合、あいまいに、互換的に使用されます。
GenAI モデルは、GenAI エージェントとアプリの背後にあるインテリジェンスを提供します。シンプルなアプリは、多くの場合、プロンプトエンジニアリングでカスタマイズされた単一のモデルを使用して構築されます。
Databricks での GenAI モデルの使用について学習します。
- 始めましょう: コードなしで LLM をクエリし、AI エージェントのプロトタイプを作成する
- 基盤モデルAPIで利用できるDatabricksがホストする基盤モデル
- GenAI モデルを管理するための AI ゲートウェイについて学ぶ
迅速なエンジニアリング
GenAI モデルは通常、プロンプト、つまりユーザー入力の処理方法をモデルに指示する指示を受け取ります。プロンプトは、詳細なステップ、専門知識、データ、その他の情報を使用して大幅にカスタマイズできます。
Databricks は、迅速なエンジニアリングを行うための柔軟な方法を提供します。例えば:
-
Agent Bricks は、データとフィードバックに基づいて、内部で迅速なエンジニアリングを自動化します。
-
AI Playground は、手動のインタラクティブなプロンプト エンジニアリング用の UI を提供します。
-
MLflowプロンプト最適化とDSPy 、データドリブン プロンプト最適化ルーチンを提供します。
ファインチューニングモデル
GenAI モデルは、カスタム データを使用して特定のドメインまたはアプリケーション用のモデルをカスタマイズするファインチューニングを通じてカスタマイズすることもできます。
Databricks は、モデルを微調整するための柔軟な方法を提供します。例えば:
- Agent Bricks はデータドリブンのカスタマイズを自動化し、内部で微調整を行う可能性があります。
- サーバーレス GPU コンピュートは、完全にカスタマイズ可能なファイン チューニングのためのコンピュート インフラストラクチャを提供します。 例を参照してください。
GenAI プラットフォームとは何ですか?
GenAI には、データと AI を組み合わせたプラットフォームが必要です。開発者と管理者の両方にとって、GenAI の主要コンポーネントは、シンプルで統合されたプラットフォームで接続され、管理される必要があります。
主なコンポーネントは次のとおりです。
- モデル、エージェント、アプリなどのAI資産
- ファイル、テーブル、処理パイプライン、ベクトルインデックス、フィーチャーストアなどのデータ資産
- モデルやエージェントのエンドポイントなどのAIデプロイメント
- AIとデータ資産の構築と展開のためのツール
主なガバナンス機能は次のとおりです。
- AI とデータ資産の統合ガバナンス。詳細については、 「Unity Catalog とは何ですか?」をご覧ください。
- GenAI モデル エンドポイントの統合ガバナンス。詳細については、 Mosaic AI Gateway の紹介をご覧ください。
- 統一されたセキュリティアプローチ。詳細については、 Databricks AI セキュリティをご覧ください。
- AI とデータ ツールの統合管理。詳細については、 「管理」を参照してください。
GenAI およびDatabricksアーキテクチャ の Mosaic AI 機能 も参照してください。
もっと詳しく知る
- GenAI アプリ構築における主な課題- GenAI の主な課題とDatabricksを使用したそれらの解決策
- エージェント システムの設計パターン- シンプルなものから複雑なものまで、GenAI エージェントと実践的なアドバイス
- Databricks 上の AI - Databricks 上の AI のユースケース、顧客、その他のリソース