SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

SB C&S

「API」の視点から入門するAzure OpenAI Service

AI
2024.05.13

みなさんこんにちは。

近年のMicrosoft社の動向にはAIの色を強く感じます。 AIに関連するMicrosoft社のサービス・製品を思い浮かべるとAzure OpenAI Serviceを含むAzure AI Services、Azure Machine LearningCopilot、...とバリエーション豊かです。

これら一連のサービスを読み解く上で、Azure OpenAI Serviceに対し「APIを使う」という感覚があるとサービスの意義や用途が見えやすくなるかもしれません。 本ブログ記事ではAPIを使う」という切り口でAzure OpenAI Serviceをご紹介したいと思います。 今回は技術や操作手順のご紹介というよりも、サービスの根幹を感覚的に掴んで頂くためAPIに主眼を置いています。

※本ブログ記事ではAzure OpenAI Serviceリソースを扱いますが、本リソースの利用にあたってはMicrosoft Learnに記載の通り申請が必要です。

 

Azure AI Services / Azure OpenAI Service

Azureはさまざまな学習済みのモデルをAzure AI Servicesとして提供しています。 その一例としまして、以下のようなAIを利用することが可能です。(サービスの一覧についてはこちらをご参照ください。)
azoai_1-1.png

このうちAzure OpenAI Serviceは大規模言語モデルであるGPTをはじめとしたOpenAI社のモデルを利用できるサービスです。 本記事ではGPTを利用し文章やコードを生成する「Chat Completion」をピックアップしてご紹介します。

Azure AI Servicesでは学習済みのモデルが提供されるため、Microsoft Learnに記載されている通り機械学習やデータサイエンスのスペシャリストでなくともAIを扱うことができ、自身で開発したシステムにAIの機能を取り入れることができるという魅力があります。(もしも独自にモデルの開発をするということであればAzure Machine Learningというサービスを利用することも可能です。)

Azure AI ServicesについてMicrosoft Learnを確認してみると、APIAzure AI Servicesの機能を利用する」ということが説明されています。 この「API」がどういったものか、簡単に確認しておきましょう。

 

API」によるサービスの利用

API(アプリケーションプログラミングインターフェース)は、異なるプログラムやサービスとのやりとりに利用されます。 APIはAzureやAIに特化した仕組みという訳ではなく、一般に広く様々なサービス・製品で利用されています。 また、APIには個々に仕様、使い方(お作法)があります。 APIを利用する際はこれらを確認した上で扱います。

API利用の例を挙げますと、開発者が自身で作成したWebサイトに天気予報が表示されるようにしたい場合、「サイトの裏側で気象情報を提供するAPIに情報提供をリクエストする」というように実装することができます。 開発者は天気に関する情報の入手を「天気の情報を提供するサービスのAPI」に依頼し、提供された情報がサイト上に反映されるようにすればよく、「開発者自身が気象予報士となって天気を予測する」「開発者自身が日々天気予報をチェックしてサイトを更新する」といったことをしなくて済むという訳です。
azoai_2-1.png

これをAzure OpenAI Service (GPT)に置き換えてみましょう。 あるWebサイトにAIと会話できる機能を実装する場合を例にすると以下のようになります。 ユーザーが入力したAIの質問をAzure OpenAI ServiceのAPIに送信(リクエスト)し、その返答(レスポンス)をユーザーに提示するというイメージです。 会話を生成する機能がAzure OpenAI ServiceのGPTによって提供されているため、「開発者がモデル構築のために機械学習の知識を修得する」「開発者が自分で会話生成のためのモデルを構築する」といったことをせずに済むのです。 これは、AIを利用したサービスを開発する上でモデルを構成するためのコストや時間をカットするということにも繋がります。
azoai_2-2.png上図ではWebサイトの裏側でAPIへリクエストを送るという構図になっていますが、下図のようにPCからAPIに対してリクエストを送信するといったことも可能です。
azoai_2-3.png

 

Azure OpenAI Serviceの認証

サービスが従量課金である場合やサービスを利用できるユーザーを限定したいような場合、さらには適正な利用といった観点から、サービスによっては「誰でも利用できてしまう」状態が望ましくない場合があります。

続きをご覧になる場合は下記をご記入ください。

EV_袋とじ_技術ブログ
職種必須
入力例:foo@example.com
入力例:0312345678
SB C&Sとのご関係必須
個人情報保護方針必須
■SB C&S(株) は、お客さまの個人情報 (氏名、住所、電話番号、メールアドレスなど) を、個人情報保護法、および、当社プライバシーポリシーに従い適切に取り扱います。 <https://cas.softbank.jp/privacy/> 詳細な個人情報の利用目的は、以下に定めるとおりとし、これらに関連する目的を含むものとします。 (ただし法令により例外として扱うことを認められている場合を除きます。) 1. IT流通サービスの提供 ・お取引にかかわる当社のシステムの機能提供のため ・お取引にかかわるお見積もり、受発注、物品・サービス・役務等の提供を行うため 2. 会員サービスおよび対象サービスの提供 ・会員サービスおよび対象サービスを提供するため ・会員サービスおよび対象サービスに関連して、お客さまに商品の発送、サービス、コンテンツ、インセンティブおよび情報を提供するため 3. 広告・宣伝・マーケティング お客さまの同意に基づき、または法令で許容されている範囲および手段で、当社または他社の商品やサービス、キャンペーンやセミナーなどのダイレクトメール、メールマガジンなどの広告を、お客さまに送付または表示するため 4. サービスの改善および研究開発 既存サービスの改善および新サービスにかかわる当社による研究開発のため 5. お問い合わせ等への適切な対応 サービスまたは広告等にかかわるお客さまからのお問い合わせやクレームに、当社が適切に対応するため 6. 不正行為等の防止・対応 詐欺、サイバー攻撃、その他の違法または不正なおそれのある行為を防止、調査、および特定して、当社または第三者の権利利益を保護するため なお、上記以外の目的で当該個人情報を利用させていただく場合は、その都度、その利用目的を明確にし、お客さまから事前の同意をいただきます。 ■お預かりしたお客さま情報はお客さまご本人から、当社の運営上支障が無い範囲で閲覧、修正、削除を要求することができます。 その場合はお問い合わせ先までご連絡いただけますようお願いいたします。  ・メールアドレス : SBBGRP-ENGINEER-VOICE@g.softbank.co.jp