【全4部構成】Azure OpenAI Serviceによる生成系AIでより迅速にサービス構築をする

## スタートアップがAIを活用した新機能を作成するには？
最先端のAIモデルとツールへのアクセスを提供するMicrosoft Azure OpenAI Serviceを使えば、信じられないようなことを可能にする次世代のアプリケーションを構築することができます。

OpenAIのコア機能の一つは、生成型AIです。今日利用可能な最も先進的な大規模言語モデル（LLM）であるGPT-4モデルをベースに、Azure OpenAI Serviceはスタートアップが大量のデータに基づいて学習し、単語、フレーズ、文間のパターンと関係を学ぶことで、強力な生成型AI機能を解放することができます。これにより、コンテンツ作成、チャットボット、言語翻訳など、幅広いアプリケーションに使用できる人間のようなテキストを生成することができます。

この全4部構成のシリーズでは、生成型AIの概念とAzure OpenAI Serviceがスタートアップに価値を提供する方法を深く掘り下げています。その高度に柔軟でカスタマイズ可能なプラットフォームが、高品質なテキストと画像を生成し、ユーザーエクスペリエンスを革新するのにどのように役立つかを見ていきましょう。第1部では、OpenAIの紹介、提供するモデルの多さ、そしていくつかのユースケースに焦点を当てます。

## OpenAIとAzure OpenAI Serviceの違いは何ですか？
Azure OpenAI ServiceはOpenAIとAPIを共同開発し、一方から他方へのスムーズな移行を確保します。Azure OpenAI Serviceを使用すると、顧客はMicrosoft Azureのセキュリティ機能を利用しながら、OpenAIと同じモデルを実行することができます。Azure OpenAI Serviceはプライベートネットワーキング、地域の可用性、そして責任あるAIコンテンツフィルタリングを提供します。
詳細は下記の2つの記事とスライドがよくまとまっています。
[[比較表] Azure OpenAIと本家OpenAI APIの比較表](https://zenn.dev/microsoft/articles/e0419765f7079a)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/91ffb608-0e2c-b52d-b6a6-16f50c6cfa99.png)
引用元：[ChatGPTによって描かれる未来とAI開発の変遷](https://speakerdeck.com/hirosatogamo/0421dsxie-hui-chatgptniyotutemiao-kareruwei-lai-toaikai-fa-nobian-qian) 

## 一般的なユースケースは何ですか？
多くのスタートアップは、マーケティング、研究、分析などのためのテキストの作成と要約に多くの時間とリソースを費やしています。これは、GPT-4、Codex、埋め込みなど、Azure OpenAI Serviceが提供する強力なツールを使用することで、時間を節約する可能性があることを意味します。OpenAIのテキスト生成技術の他の用途としては、コンテンツ作成、顧客サービスの自動化、言語翻訳、パーソナライズされたマーケティング、チャットボット、ニュースの要約、ライティングの支援（例えば、以下のジョブアプリケーションのカバーレター）などがあります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/70ea4fb7-0adc-faac-612a-87bac104ae85.png)

OpenAIの画像生成ツールを使用する利点は、面白い画像や魅力的な画像を作成することに限られません。プロフェッショナルでインパクトのあるビジネスビジュアルの作成にも活用できます。OpenAIの技術を活用することで、スタートアップは自社のアプローチを魅力的に示すための製品のロードマップや複雑なシナリオビジュアルを作成することができます。

例えば、セキュリティシナリオを視覚化するためのプロンプトを以下に示します：

プロンプト：
```
Pproduce a visual to explain the activity of download, the exploit and how it moved through 
the incident
```
出力：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/86eb2d6f-67e5-3acf-66be-b7fca9c1993d.png)


これらのような画像は、複雑なアイデアや概念を簡単で理解しやすい形で伝えることができ、スタートアップが自社の価値提案を伝え、競争相手と差別化するのを容易にします。

OpenAIの画像生成ツールを使用する主な利点の一つは、高品質の画像を迅速かつ容易に生成する能力です。これらの画像は、特定のニーズと要件に合わせてカスタマイズすることができ、スタートアップがユニークで視覚的に魅力的なプレゼンテーション、ピッチ、マーケティング資料などを作成することを可能にします。その結果、OpenAIのツールは、グラフィックデザインソフトウェアの必要性を排除することでスタートアップがお金を節約するのを助けることができます。

## プロンプトとは？
プロンプトは、AIシステム（例えば、チャットボットやテキストジェネレータ）に入力や指導を与える方法です。プロンプトは質問、コマンド、キーワード、文、またはシステムからの応答を引き出すことができる他のものであることができます。プロンプトには、システムがどのように応答するべきかを指定し、関連性のある結果を生成するように導くパラメーターや制約も含めることができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/b6088657-9a4d-761f-8330-14c4bd665a03.png)

プロンプトに関連するいくつかの用語を知っておくと便利です：

**プロンプトエンジニアリング**は、特定のタスクや領域に最適なプロンプトを見つけるために、異なるプロンプトを設計し、テストするプロセスです。プロンプトエンジニアリングは、モデルのパフォーマンスと精度を最適化するために、異なる言葉遣い、フォーマット、例を使って実験を行います。プロンプトエンジニアリングは、既存の知識ベースやオントロジーを活用して、プロンプトにさらにコンテキストと構造を提供することもできます。

**プロンプトグラウンディング**は、チャットボットがユーザーからの指示を理解し、それに従うのを助ける技術です。これには、ユーザーのリクエストの主要なポイントを繰り返したり、パラフレーズしたり、必要な場合は確認や明確化を求めたりすることが含まれます。これにより、チャットボットは誤解やエラーを避け、ユーザーの期待に合ったより良い応答を提供することができます。

例えば、私がイスラエルにいてBingチャットに何時かを尋ねると、これがグラウンディングされたプロンプトです：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/7e59a989-9111-a02d-7782-daf56d562566.png)
提案されたフォローアップの質問もグラウンディングされており、私がPCを使用しているため、コンピューターのタイムゾーンをどのように変更するかを知りたいかもしれないと提案しています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/0c110abe-20bd-97a1-da5c-6d62ec3f8826.png)
このグラウンディングの技術は**Microsoft 365 Copliot**でも応用されているので、詳細が気になる人はこちらのQiita記事に丁寧にまとめられてます：[Microsoft 365 Copilot System と Semantic Kernel による実装](https://qiita.com/nohanaga/items/2691f64bd1fb418295b8)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/b603e6d1-991a-fdbb-c633-a06742ac7fa9.png)

## プロンプトを通じてAIモデルをカスタマイズする基本的な技術は？
**ファインチューニング**は、自分のデータに基づいてモデルを訓練することで、特定のアプリケーションにモデルをカスタマイズする技術です。ファインチューニングは、モデルをあなたの領域、タスク、スタイルに適応させることで、モデルの出力の品質、精度、関連性を改善することができます。ファインチューニングはまた、複数の例や指示を含む長いまたは複雑なプロンプトの必要性を排除することで、コストと遅延を削減することもできます。ファインチューニングは現在、OpenAIの基本モデルの一部、例えばDavinci, Curie, Babbage, Adaなどで利用可能です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/6cc9fb5c-8441-3289-2230-b49156b158fb.png)
**Zero-shot**と**few-shot学習**は、ファインチューニングや追加の訓練なしにモデルを使用する方法です。Zero-shot学習は、モデルを単一の入力例やクエリだけで使用することを意味し、追加のコンテキストや例を提供しないことを意味します。few-shot学習は、モデルが従うべきいくつかの指示や例を含むプロンプトとしてフォーマットされたいくつかの入力例やクエリを使用することを意味します。Zero-shotとfew-shot学習は、モデルの一般化能力と事前学習知識に依存してタスクを実行します。これらは、モデルの能力を探る、異なるアイデアをテストする、またはアプリケーションを素早くプロトタイプ化するために有用です。

映画のタイトルを絵文字に変換するためのゼロショットアプローチを使用してみましょう：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/790bc741-7484-5744-f9e9-f1385ddf360e.png)
レスポンスを得ることができませんでしたので、いくつかの例を提供するフューショットアプローチを使用してみましょう：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/54ebcb37-acb3-4ed4-149f-d38ea4d8b978.png)
AIにいくつかの例を与えたので、テストしてみましょう！
テスト
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/b61a74bf-9b45-774f-ec65-362e5546e9f8.png)
そして結果は：
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/a806f985-a1ac-1d08-cd04-aa711154a687.png)
これで、映画の名前を絵文字に変換するために使用できる訓練済みのモデルができました😊

## Azure OpenAI Serviceや他の大規模言語モデル(LLM)にはどのような問題がありますか？
Azure OpenAI Serviceは、人工知能アプリケーションを作成し、デプロイするための強力なプラットフォームです。しかし、あらゆる技術と同様に、問題を抱えることもあります。例えば、**ハルシネーションHallucination：幻覚**という現象があります。これは、AIが現実やデータに基づかない誤ったまたは誤解を招く情報を生成することです。これはユーザーや社会にとって深刻な結果をもたらす可能性があり、特にAIが重要なタスクや意思決定に使用される場合には考慮する必要があります。

そのため、Microsoftは 、つまり、AIを倫理的に、信頼性を持って、そして人間の価値観に沿って開発し使用することにコミットしています。Microsoftは、公正、信頼性と安全性、プライバシーとセキュリティ、包括性、透明性、そして説明責任という6つの原則を採用しています。これらの原則を適用することで、MicrosoftはAzure OpenAI Serviceがユーザーの福祉と利益を基本的な優先事項として運営することを目指しています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/46bfac7d-c226-f59b-04c5-b88330c8ab5f.png)
引用元：[ChatGPT の概説 - Software Engineer じゃない方向け -
](https://speakerdeck.com/dahatake/chatgpt-nogai-shuo-software-engineer-ziyanaifang-xiang-ke)

基本事項を確認したところで、後日公開される第二部をお楽しみに。ここでは、高度なユースケースとMicrosoft Copilotの生成AI UXについて探求します。

【第二部】に続く。

https://qiita.com/sss_keke/items/d9e768d0f97f2323d941

## 最後に

Microsoft for Startups Founders Hubのメンバーは、製品の構築に役立つAzure OpenAI ServiceやOpenAIに使用できるAzureクラウドクレジットを受けとることができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/133617/ac7a5994-dcbe-bc39-e683-ef6081842a73.png)

https://speakerdeck.com/daikikanemitsu/microsoft-for-startups-founders-hub-new-offer

MicrosoftのOpenAIへの投資は、ビジネスと社会全体に利益をもたらすことができる先進的なAI技術とソリューションの開発を目指しています。さらに、MicrosoftはOpenAIとパートナーシップを結び、新しいAI技術の共同開発とMicrosoftの製品とサービスへの統合を行っています。

参考リンク
[Innovate faster with generative AI on Azure OpenAI Service](https://startups.microsoft.com/blog/innovate-faster-with-generative-ai-on-azure-openai-service/)
[Microsoft Security Copilot ](https://www.microsoft.com/ja-jp/security/business/ai-machine-learning/microsoft-security-copilot)
[GPT-4](https://openai.com/product/gpt-4)
[Azure OpenAI Service](https://azure.microsoft.com/ja-jp/products/cognitive-services/openai-service)