Azure AI Studio でのプロンプト フロー
重要
この記事で説明する機能の一部は、プレビューでのみ使用できる場合があります。 このプレビューはサービス レベル アグリーメントなしで提供されており、運用環境ではお勧めしません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。
プロンプト フローは、大規模言語モデル (LLM) によって動作する AI アプリケーションの開発サイクル全体を合理化するために設計された開発ツールです。 プロンプト フローは、AI アプリケーションのプロトタイプ作成、実験、反復、デプロイのプロセスを簡素化する包括的なソリューションを提供します。
プロンプト フローは、独自の SDK と VS Code 拡張機能を使用して、GitHub 上のオープンソース プロジェクトとして個別に使用できます。 また、プロンプト フローは Azure AI Studio と Azure Machine Learning Studio の両方の機能としても使用可能で、使用することを推奨してします。 この一連のドキュメントでは、Azure AI Studio のプロンプト フローに焦点を当てています。
定義:
- プロンプト フローは、フローの生成、カスタマイズ、または実行に使用できる機能です。
- フローは、AI ロジックを実装できる実行可能な命令セットです。フローは、事前構築済みのキャンバス、LangChain、etcetera などの複数のツールを使用して作成または実行できます。 フローの繰り返しはアセットとして保存することが可能で、フローがデプロイされると API になります。 すべてのフローがプロンプト フローであるわけではありません。むしろ、プロンプト フローはフローを作成する 1 つの方法です。
- プロンプトは、ユーザー入力、システム メッセージ、および任意の例から構成される、モデルに送信される入力のパッケージです。 ユーザー入力は、チャット ウィンドウで送信されたテキストです。 システム メッセージは、モデルの動作と機能をスコープするモデルに対する一連の命令です。
- サンプル フローは、フローがどのように機能するかを示す、シンプルな事前構築済みのオーケストレーション フローであり、カスタマイズできます。
- サンプル プロンプトは、特定のシナリオに対して定義されたプロンプトで、ライブラリからコピーしてそのまま使用したり、プロンプト デザインで変更したりすることができます。
プロンプト フローの利点
Azure AI Studio のプロンプト フローでは、次のことができます。
- 視覚化されたグラフを介して LLM、プロンプト、Python ツールを使用する実行可能フローを調整する。
- チーム コラボレーションを通じて簡単にフローのデバッグ、共有、反復を行う。
- プロンプト バリアントを作成し、そのパフォーマンスを比較する。
エンジニアリングの機敏性を促進する
- 対話型の作成エクスペリエンス: プロンプト フローは、フローの構造の視覚的な表現を提供するため、プロジェクトを簡単に理解して主導できます。
- プロンプト チューニングのバリアント: 複数のプロンプト バリアントを作成して比較でき、反復的な調整プロセスを促進します。
- 評価: 組み込みの評価フローを使用すると、プロンプトとフローの品質と有効性を評価できます。
- 包括的なリソース: プロンプト フローには、開発の出発点として機能する組み込みのツール、サンプル、テンプレートのライブラリが含まれており、創造性を刺激し、プロセスを加速します。
エンタープライズ対応
- コラボレーション: プロンプト フローはチーム コラボレーションを支援し、複数のユーザーがプロンプト エンジニアリング プロジェクトで共同作業し、知識を共有し、バージョン管理を維持することを可能にします。
- オールインワン プラットフォーム: プロンプト フローは、開発と評価からデプロイと監視まで、プロンプト エンジニアリング プロセス全体を合理化します。 フローを Azure AI エンドポイントとして簡単にデプロイし、リアルタイムでパフォーマンスを監視でき、最適な運用と継続的な改善を保証します。
- エンタープライズ対応ソリューション: プロンプト フローは、堅牢な Azure AI エンタープライズ対応ソリューションを適用し、フローの開発、実験、デプロイのための安全でスケーラブルで信頼性の高い基盤を提供します。
Azure AI Studio のプロンプト フローを使用すると、プロンプト エンジニアリングの機敏性を発揮し、効果的に共同作業を行い、エンタープライズグレードのソリューションを適用して、LLM ベースのアプリケーションの開発とデプロイを成功させることができます。
フローの開発ライフサイクル
プロンプト フローは、AI アプリケーションのシームレスな開発を容易にする明確に定義されたプロセスを提供します。 これを使用することで、フローの開発、テスト、チューニング、デプロイの各段階を効果的に進め、最終的に成熟した AI アプリケーションを作成できます。
ライフサイクルは、次の段階で構成されます。
- 初期化: ビジネス ユース ケースを特定し、サンプル データを収集し、学習を行って基本的なプロンプトを構築し、その機能を拡張するフローを開発します。
- 実験: サンプル データに対してフローを実行し、プロンプトのパフォーマンスを評価し、必要に応じてフローで反復を行います。 結果に満足するまで継続的に実験を行います。
- 評価と調整: より大きなデータセットに対してフローを実行することでフローのパフォーマンスを評価し、プロンプトの有効性を評価し、必要に応じて調整を行います。 結果が求められる基準を満たしている場合は、次の段階に進みます。
- 運用: 効率と有効性のためにフローを最適化し、デプロイし、運用環境でパフォーマンスを監視し、使用状況データとフィードバックを収集します。 この情報を使用して、フローを改善し、前の段階でさらなる反復を行うための助けとします。
この構造化され体系化された方法に従うことで、プロンプト フローはお客様がフローを自信を持って開発し、厳密にテストし、微調整し、デプロイする原動力となり、堅牢で洗練された AI アプリケーションが作成されます。
フローの種類
Azure AI Studio では、ギャラリーからフローの種類またはテンプレートを選択して、新しいフローを開始できます。
フローの種類の例をいくつか次に示します。
- 標準フロー: 標準フローは一般的なアプリケーション開発用に設計されており、LLM ベースのアプリケーションを開発するための幅広い組み込みツールを使ってフローを作成できます。 さまざまなドメインのアプリケーションを開発できる柔軟性と汎用性を備えています。
- チャット フロー: チャット フローは会話型アプリケーション開発用に調整され、標準フローの機能に基づいて構築されており、チャットの入力/出力とチャット履歴管理の高度なサポートを提供します。 ネイティブ会話モードと組み込み機能により、会話コンテキストの中でシームレスにアプリケーションの開発とデバッグを行うことができます。
- 評価フロー: 評価フローは評価シナリオ用に設計されており、以前のフロー実行の出力を入力として受け取るフローを作成できます。 このフローの種類を使って以前の実行結果のパフォーマンスを評価し、関連するメトリックを出力できるので、モデルやアプリケーションの評価と改善が容易になります。
フロー
プロンプト フローのフローは、LLM ベースの AI アプリケーションの開発を効率化する実行可能なワークフローとして機能します。 これにより、アプリケーション内のデータ フローと処理を管理するための包括的なフレームワークを実現できます。
フロー内では、独自の機能を持つ特定のツールを表すノードがステージの中心となります。 これらのノードでは、入力と出力を使ってデータ処理、タスク実行、アルゴリズム操作を処理します。 ノードを接続することで、アプリケーション内のデータ フローをガイドするシームレスな操作チェーンを確立できます。
ノードの構成と微調整をスムーズにするために、ワークフロー構造の視覚表現は DAG (有向非巡回グラフ) グラフで提供されます。 このグラフはノード間の接続と依存関係を表しており、ワークフロー全体の概要を把握できます。
プロンプト フローのフロー機能を使うと、AI アプリケーションのロジックを設計、カスタマイズ、最適化することができます。 まとまりのあるノードの配置により、効率的なデータ処理と効果的なフロー管理を確保し、堅牢で高度なアプリケーションを作成できるようになります。
プロンプト フロー ツール
ツールは、フローの基本的な構成要素です。
Azure AI Studio のツール オプションには、LLM ツール、プロンプト ツール、Python ツールなどがあります。
各ツールは、特定の機能を持つシンプルで実行可能なユニットです。 異なるツールを組み合わせることで、幅広い目標を達成するフローを作成できます。 たとえば、LLM ツールを使用してテキストを生成したり、記事を要約したり、Python ツールを使用してテキストを処理して次のフロー コンポーネントまたは結果を通知したりできます。
プロンプト フローのツールの主な利点の 1 つは、サード パーティの API や Python のオープンソース パッケージとシームレスに統合することです。 これにより、大規模言語モデルの機能が向上するだけでなく、開発者にとって開発プロセスがより効率的になります。
Azure AI Studio のプロンプト フロー ツールが要件を満たしていない場合は、このガイドに従って独自のカスタム ツールを開発し、ツール パッケージにすることができます。 オープン ソース コミュニティによって開発されたその他のカスタム ツールについては、このページを参照してください。