Azure AI Studio をさわってみる

Azure AI StudioがMicrosoft Ignite 2023で発表されましたね。Azure AI StudioはAIソフトウェアの開発者が様々なAIタスクをこなす為のスタジオです。今日はそんなAzure AI Studioをさわってみようと思います。

※ 今時点でPreviewなので、すぐ機能が増えたり変わったりする可能性があるのでそのあたり注意ください。

LLMなどの学習済みモデルのカタログや機能などを探すためのエクスプローラー、プロジェクトを管理・実行するための機能などがあります。
エクスプローラー内ではカタログから選択したLLMをサンプルでちょっと試してみたり(テストに対応したモデルが少ないけど)、音声やビジョン、言語といった今までもあったAzure AI servicesの機能を試したりできます(こちらは現状それぞれのページに遷移してそちらで試したりできる)。Contents Safetyでモデレートをテストしたり、サンプルのプロンプトを検索したりといったこともできるので、何かを始める前に目的に沿ったモデルなどがあるか試すことができます。

image
※音声のところ、なぜか日本語だとテキストが出ない

モデル カタログ

Azure OpenAIモデルやMeta社、NVIDIA、あるいはHugging Face、Microsoft Researchといったプロバイダー(?)が公開しているモデルを探せます。Hugging Faceなど全部があるわけじゃなくて、キュレーションされて良さそうなのがカタログに載ってる感じですね。提案もできます。
image

モデルを選択したら、モデルの詳細説明、ライセンス情報、モデルによってはサンプル推論ができます。
image

気に入ったモデルがあったら、すぐにデプロイして使い始めることができます。
imageimage
これがMicrosoft Igniteでも発表があったModel as a Serviceですね。Azure OpenAI ServiceのモデルについてはAzure OpenAI Serviceに対してのデプロイ、他のオープンモデルについては後述するAzure AIプロジェクト内のエンドポイントにデプロイすることになります。(Azure MLのエンドポイントと同等です)

※Azure OpenAI Serviceのモデルは消費トークンなどによる従量課金、オープンモデルについてはエンドポイントのコンピューティング費用になります。使用量と必要コンピューティングリソースのスペックによってはオープンモデルのほうがお得みたいなことはありえますね。

オープンモデルはLLMとその実行に必要な環境、Web APIとして起動するためのサーバーなどまとめてデプロイされるので、モデル毎の環境差異などを気にする必要はありません。
一部モデルではデプロイ時にAzure Content Safetyを有効にすることもできそうです。
image
※まだウィザードによる自動デプロイじゃなくてJupyter Nootbookに飛ばされますが、、あと当然ですが選択したLLMによって要求されるVMのスペックが変わりますので注意しましょう。Phi-1.5とかならStandard Ds3v2(4コア14GB RAM)とかで何とかデプロイできそうですが…

モデル ベンチマーク

モデルのベンチマークは公開されているベンチマークを基に、モデルのスコアを比較できるページです。
image
選べるモデルはそんなに多くないけど、ぽちぽち選んでみてみるとそれぞれのモデルのスコアが出せます。
image

責任あるAI のコンテンツの安全性

Content Safetyですね。ここではAzire AIリソースを使ってコンテンツフィルターのテストなどができます。
imageimageimage

サンプルのプロンプト

そのままですね。プロンプトのサンプルを探せます。もしデプロイ済みのモデルがあるならプレイグラウンドで試すこともできます。
imageimage
※プロンプト内のシステムメッセージとか、訳しすぎでは?(一応フィードバックした)

Azure AI Studio の管理と Azure AI リソース

Azure AI Studioの管理ではAzure AIプロジェクトを実行したりするための一連のリソースをAzure AIリソースとして扱うのですが、それを管理することができます。察しがいい人はわかりますが、だいたい中身はAzure MLです。
imageimage

Azure AI Studioの管理のところから新規作成すると一式かってに作成してくれます。Azure Portalから個別に作成する場合はまずAzure AIリソースを作りましょう。もし既存のAzureリソースを利用する場合は選択すればOKです。(Azure AI Studioからだと細かく指定できず新規作成されてしまう)
imageimageimageimageimage

こんな感じでリソースが作られます。(Container Registry作る選択したらそれも)
image

作成時にAzure OpenAI Serviceなど作ったり選択しましたが、Azure ML触ってたらおなじみかもしれませんが単に既定のリソースを指定しているだけなので、プロジェクト内で別リージョンや別リソース使いたいなと思ったら別途接続先を追加したりして指定することができます。コスト管理などもプロジェクト毎にできてよさそうですね。

Azure AIプロジェクト

さて実行環境ができたらAzure AIプロジェクトを作っていろいろ触っていきましょう。New Projectで作れます。(まとめて作る場合はここからAzure AIリソースも新規作成できます)
imageimage

作成すると、Azure上にAzure AI projectリソースができます。Azure AIリソースと関連付けするためだけのようなリソースですね。
image

Azure AI Studioで見るとこんな感じです。細かいのは今回はちょっと置いておいて、プロンプトフローとか見るとAzure MLで見たことがあるあの画面でプロンプトフローを操作できます。
imageimage

すぐに実行したいところですが、右上の「VS Codeでプロジェクトを開く(Web)」もそうですが、実行するためのランタイム(とコンピューティングリソース)が必要です。
プロンプトフローはコンピューティングリソース上にランタイムという環境を作ってそこで実行することになります。(素のJupyter NotebookがメニューにないのがAzure MLとの違いですね)
コンピュートインスタンスは管理のほうから行います。ちなみにインスタンスは個々人用です。
スケジュールで自動シャットダウンさせるように構成することもできます。
imageimage

プロンプトフロー側からランタイムを選択(なかったら追加)することで実行なりできるようになります。
スクリーンショット 2023-11-21 030411

あとは通常のプロンプトフロー等とだいたい同じなので割愛。開発できたらエンドポイントをデプロイしたりできます。バッチ評価やMLOpsなども可能でしょう。
もろもろのデータ管理やAzure AI Searchのベクターインデックスなど、一通り管理ができます。
image

まとめ

ざっと見ましたが、AIを試す、さっと開発する、デプロイするといったことがまとまってできるので良さそうですね。音声など一部まだ他のAzure AI servicesのStudioに飛ばされたりしますが、基本的にAzure AI Studio内にとどまって作業できるので便利ですね。

特にプロンプトの調整やフローの部分、モデルの変更、Contents Safetyなど一通りそろってるのがよさそうです。今後拡充もされていくだろうし、見守っていきたいと思います。(統廃合が気になるけど、成果物はコード(ファイル)で管理できるし当面大丈夫でしょう)

コメントを残す