「Azure Lightweight Generative AI Landing Zone」

「Azure LGAIZ」

AIは現在注目を集めており、一部の製品はAIのトピックを過度に使用していますが、多くの企業や製品がこの技術を使ってプロセスを自動化しています。この記事では、AI製品を紹介し、AIの着陸地帯を構築していきます。AIを活用することで恩恵を受けるトップ3の企業について見ていきましょう。

Github Copilot

Github Copilotの主な目的は、プログラマーがコードの提案を受けたり、コードの行やブロックを自動補完したりすることで、彼らがコードを書く際の作業を支援することです。コンテキストや既存のコードを知的に分析することで、コーディングプロセスを加速し、開発者の生産性を向上させます。さまざまなプログラミング言語をサポートし、コードパターンを理解する能力を持つため、開発者のコーディングの旅における貴重なパートナーとなります。

Neuraltext

Neuraltextは、AIによって駆動されるコピーライター、SEOコンテンツ、キーワードリサーチツールを含む、アイデアの発生から実行までを包括するコンテンツワークフローを目指しています。AIのコピーライティング機能を活用することで、キャンペーン用の説得力のあるコピーを簡単に作成し、さまざまなバリエーションを生成することができます。Facebook広告、スローガンのアイデア、ブログセクションなど、さまざまな目的に向けた50以上の事前設計されたテンプレートを備えているため、Neuraltextはコンテンツ作成プロセスを簡素化します。

Motum

Motumは、運用フリート管理のためのインテリジェントオペレーティングシステムです。コンピュータビジョンと機械学習アルゴリズムを使用して、車両の損傷を自動的に検出し評価する損傷認識機能を備えています。車両の画像を分析することで、AIシステムはへこみ、傷、クラックなどの損傷を正確に識別することができます。この技術により、保険請求、自動車修理工場、車両査定の検査プロセスが効率化され、損傷の程度を評価する際の時間と精度が向上します。

クラウド着陸地帯とは何ですか?

AIクラウド着陸地帯は、人工知能(AI)ソリューションの開発と展開の基盤となる基本的なクラウドサービス、ツール、インフラを含むフレームワークです。

着陸地帯に含まれるAIサービスは何ですか?

Azure AI着陸地帯には、以下のAIサービスが含まれています:

  • Azure Open AI – 画像認識、自然言語処理、感情分析などのタスクに対する事前構築されたAIモデルとAPIを提供し、開発者がAI機能を組み込むのを容易にします。Azure AIサービスには、カスタムモデルの構築やデータ分析に使用する機械学習ツールやフレームワークも含まれています。
  • Azure AIサービス – 組織がユーザーに対してより没入型でパーソナライズされたインテリジェントな体験を提供し、さまざまな産業でイノベーションと効率化を推進するサービスです。開発者は、これらの事前構築されたAPIを使用して、顔認識、言語理解、感情分析などのインテリジェントな機能をアプリケーションに追加することができます。AIの専門知識はほとんど必要ありません。
  • Azure Botサービス – これはMicrosoft Azureが提供するプラットフォームであり、AIサービスの一部です。開発者は、Webチャット、Microsoft Teams、Skype、Telegramなど、さまざまなプラットフォームでユーザーと対話するためのチャットボットや会話エージェントを作成することができます。

アーキテクチャ

Azure AI着陸地帯を環境に統合し、展開を開始しました。AI着陸地帯は、3つの論理ボックスに分かれています:

  • Azure DevOpsパイプライン
  • Terraformモジュールと環境
  • Azureサブスクリプションに展開されるリソース

以下の図で確認できます。

図1:AI着陸地帯のアーキテクチャ(著者:Boris Zaikin)

アーキテクチャには、各Azureサブスクリプションに対するCI/CD YAMLパイプラインとTerraformモジュールが含まれています。

以下の2つのYAMLファイルが含まれています:

  • tf-provision-ci.yamlは、ステージに基づいたメインパイプラインであり、各環境に対してtf-provision-ci.jobs.yamlパイプラインを再利用します。
  • tf-provision-ci.jobs.yamlは、Terraformモジュールを展開するためのワークフローを含んでいます。

tf-provision-ci.yaml – メインの構成、変数、ステージ(Dev、Test、Prod)が含まれています。パイプラインは、異なるパラメータを指定して各ステージでtf-provision-ci.jobs.yamlを再利用します。

AzureDevOpsにパイプラインを追加して実行した後、以下のステージ構造が表示されます。

図2:Azure DevOpsステージUI

Azure DevOpsは、メインのYAMLパイプライン内のステージを自動的に認識し、適切なUIを提供します。

次は、tf-provision-ci.jobs.yaml を見てみましょう。

tf-provision-ci.jobs.yaml — init、show、validate、plan、apply を含む Terraform のタスクが含まれています。以下に、実行プロセスが表示されます。

図3: Azure DevOps ランディングゾーンデプロイメントUI

ご覧の通り、すべてのパイプラインの実行は正常に完了し、各ジョブは状態、設定、および検証エラーの詳細な情報を提供します。

また、アクセス要求フォーム への記入も忘れてはいけません。返信を受け取るまで数日かかります。それ以外の場合、パイプラインはクォータエラーメッセージで失敗します。

Terraform スクリプトとモジュール

Terraform を利用することで、Terraform モジュール内にコードをカプセル化し、コードベースのさまざまなセクションで再利用することができます。これにより、ステージングや本番などの複数の環境で同じコードを複製したり再生成したりする必要がなくなります。代わりに、両方の環境で共有モジュールからコードを活用することができ、コードの再利用性が向上し、冗長性が低減します。

Terraform モジュールは、フォルダ内に整理された複数の Terraform 構成ファイルのコレクションとして定義することができます。技術的には、これまでに書いたすべての構成はモジュールとして考えることができますが、それらは複雑で再利用可能ではないかもしれません。モジュールを直接デプロイして “apply” を実行する場合、それはルートモジュールと呼ばれます。ただし、モジュールの機能を十分に活用するには、他のモジュール内で使用するために再利用可能なモジュールを作成する必要があります。これらの再利用可能なモジュールは、Terraform インフラストラクチャの展開を大幅に向上させる柔軟性を提供します。以下にプロジェクト構造を示します。

図4: Terraform プロジェクト構造モジュール

上の画像は、すべてのリソースが1つのモジュールディレクトリに配置されていることを示しています。各環境には、ディレクトリ、インデックス Terraform ファイル、および変数があり、すべてのリソースが異なるパラメータを持つ index.tf ファイルで再利用されます。

モジュール内の別個のファイルにすべてのリソースを配置し、値は Terraform 変数に入れることにします。これにより、コードを簡単に管理でき、ハードコードされた値を削減できます。また、リソースの粒度の細分化により、GIT やその他のソースコントロール(マージの競合が少ない)との組織的なチームワークが可能となります。

次は、open-ai tf モジュールを見てみましょう。

Open AI の重要なパラメータリスト:

  • prefix: すべての Azure リソースにプレフィックスを設定します
  • domain: Ingress Controller を介してチャットボットを公開するために使用されるホスト名のドメイン部を指定します
  • subdomain: Ingress Controller を介してチャットボットを公開するために使用されるホスト名のサブドメイン部を定義します
  • namespace: Azure OpenAI サービスにアクセスするワークロードアプリケーションの名前空間を指定します
  • service_account_name: ワークロードアプリケーションが Azure OpenAI サービスにアクセスするために使用するサービスアカウントの名前を指定します
  • vm_enabled: AKS クラスターと同じ仮想ネットワークに仮想マシンをデプロイするかどうかを決定するブール値です
  • location: Azure リソースを展開するためのリージョン(例: westeurope)を指定します
  • admin_group_object_ids: この配列パラメータには、クラスターへの管理者ロールアクセスを持つ Azure AD グループオブジェクトの一覧が含まれています。

subdomain パラメータに注意する必要があります。Azure Cognitive Services では、Azure ポータル、Azure Cloud Shell、Azure CLI、Bicep、Azure Resource Manager(ARM)、または Terraform などの Azure ツールを介して作成された各リソースに対してカスタムサブドメイン名が使用されます。これらのカスタムサブドメイン名は、各リソースごとに固有であり、特定の Azure リージョンで共有される地域エンドポイントとは異なります。カスタムサブドメイン名は、Azure Active Directory(Azure AD)などの認証機能を有効にするために必要です。Azure OpenAI サービスのためにカスタムサブドメインを指定することは、一部のケースでは必須です。その他のパラメータは「Azure OpenAI を使用したリソースの作成とモデルの展開」で見つけることができます。

次の記事では

  • 構成に Az プライベートエンドポイントを追加する:Azure Open AI の重要な側面の1つは、プライベートエンドポイントの利用です。プライベートエンドポイントを使用することで、仮想ネットワーク内の必要なリソースのみがサービスにアクセスできるように制御することができます。これにより、サービスの安全性とセキュリティが確保され、必要なリソースが必要に応じてアクセスできるようになります。
  • OpenAI を Azure Kubernetes サービスと統合する:OpenAI サービスを Kubernetes クラスターと統合することで、AI アプリケーションの効率的な管理、スケーラビリティ、高可用性を実現できます。これにより、本番環境での AI ワークロードの実行に最適な選択肢となります。
  • Microsoft の軽量ランディングゾーンと OpenAI ランディングゾーンを説明し、比較する。

プロジェクトリポジトリ

  • GitHub – Boriszn/Azure-AI-LandingZone

結論

この記事では、AI製品とAIランディングゾーンの作成について探求します。私たちは、AIに恩恵を受ける3つの主要なプレーヤー、セールスエンゲージメントのためのReply.io、コーディング支援のためのGithub Copilot、AI駆動のコンテンツのためのNeuraltextを紹介します。AIランディングゾーンへの移行では、Open AIなどのAzure AIサービスに焦点を当て、事前に作成されたモデルとAPIを使用します。TerraformとCI/CDパイプラインを使用したアーキテクチャに深入りします。Terraformのモジュール化のアプローチは重要であり、再利用性を強調しています。特にAzure Cognitive Servicesのカスタムサブドメインについて、Open AIモジュールパラメータに詳しく取り組みます。このAI駆動の時代において、自動化とインテリジェントな意思決定が技術革新をもたらしています。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

AIニュース

「イーロン・マスク氏、中国での超知能の台頭に警鐘を鳴らす」と警告

著名な起業家であるイーロン・マスク氏が最近、Twitter Spacesのコールで大胆な発言をし、中国における超知能の可能性につい...

データサイエンス

JAXの始め方

JAXは、Googleが開発したPythonライブラリであり、あらゆるタイプのデバイス(CPU、GPU、TPUなど)で高性能な数値計算を行う...

AIニュース

FitBot — フィットネスチャットボットエージェント

健康意識が最前線にあり、バランスの取れたライフスタイルの追求が普遍的な願望となっている時代において、栄養は間違いなく...

AIニュース

「GPT-4が怠け者です:OpenAIが認める」

OpenAIは、GPT-4が予期せぬ動作を示し、一部のユーザーから「怠惰」と評される中で懸念が浮上しています。最新のGPT-4に関す...

人工知能

Midjourney v5.2の新しいズームアウト機能の使い方(最良の例)

Midjourney v5.2がリリースされ、期待を裏切りませんでしたズームアウト機能は素晴らしいです

データサイエンス

自然言語処理のタクソノミー

「異なる研究分野と最近の自然言語処理(NLP)の進展の概要」