先週、マイクロソフトは新しいAIチャットウェブアプリケーションテンプレートを発表しました。現在プレビュー段階にあり、.NET開発におけるAIアプリケーション開発の簡素化を目指しています。このテンプレートは、マイクロソフトがAI技術の普及を推進する上で重要な取り組みであり、Visual Studio、Visual Studio Code、.NET CLIで使用できる足場とガイダンスを提供します。
画像出典:AI生成画像、画像ライセンス提供元Midjourney
マイクロソフトの説明によると、この.NET AIチャットテンプレートは、開発者がインテリジェントなチャットアプリケーションを迅速に構築するのに役立ちます。テンプレートはBlazorフレームワークをベースにしており、Microsoft.Extensions.AIとMicrosoft.Extensions.VectorDataの抽象化を利用し、チャットアプリケーションで一般的に使用される検索強化生成(RAG)パターンに従っています。
主な特徴は、カスタムデータ(サンプルPDFファイルやユーザーデータなど)と対話するチャットインターフェースを作成できることです。開発者は、ローカルまたはAzureで統合を選択できます。テンプレートはローカルベクターストレージをサポートし、プロトタイピングを容易にし、Azure AI検索はより高度な設定をサポートします。生成されたコードには、チャットインタラクション用のUIコンポーネント、参照追跡、および後続の提案が含まれており、開発者は必要に応じてカスタマイズまたは削除できます。
このテンプレートの使用を開始するには、コマンドラインで次のコマンドを入力してインストールするだけです。
dotnet new install Microsoft.Extensions.AI.Templates
さらに、このテンプレートはデータ取得プロセスを簡素化し、さまざまなデータソースと形式を処理するコードが含まれており、サンプルPDFファイルとその処理コードを提供しています。開発者は自分のファイルに置き換えることができます。アプリケーションはフォルダの内容を自動的に比較し、ベクターストレージをそれに応じて更新します。ただし、AIモデルプロバイダーを使用する際には注意し、大規模なデータファイルによるエラーや遅延を避ける必要があります。
マイクロソフトのプロダクトチームは、このコードはMicrosoft.Extensions.AIに基づいて構築されており、プラグインのカスタム動作を非常に簡単にすると強調しています。開発者は、チャットボットに任意のC#関数のアクセス権を与えることができ、これにより機能を拡張し、追加データを取得したり、操作を実行したりできます。
将来展望として、マイクロソフト開発チームはテンプレートオプションの拡張を計画しており、今後の更新にはAIコンソールテンプレート、最小APIテンプレート、および.NET Aspireのサポートが含まれる予定です。さらに、これらのテンプレートは.NET SDKにデフォルトで含まれる予定であり、Azure AI Foundryのサポートも検討しています。同時に、マイクロソフトはセマンティックカーネルチームと協力して、セマンティックカーネルユーザーのテンプレートオプションを拡大しています。