出版社を探す

Azure OpenAI Service入門

著:増田 智明

紙版

内容紹介

 急速に一般利用が広がりつつあるOpenAI社の生成AIサービス(ChatGPTやDALL-Eなど)をAzureとのコラボレーションで活用できるサービスが「Azure OpenAI Service」です。 OpenAIが提供する各種のAIサービスと、Azureが提供する各種のサービス、 ネットワーク監視、セキュリティ機能との柔軟な組み合わせが可能になります。
 本書では、プログラミング環境となるAzure OpenAI StudioやOpenAIパラメーターなどの基本的な解説に始まり、デスクトップアプリ、スマホアプリ、 ブラウザーアプリからAI技術を活用する実践までを解説しています。

目次

はじめに

第1章 Azure OpenAI Serviceの概要
 1.1 OpenAIの生成AIモデル
  1.1.1 OpenAI社が提供する生成AIサービス
  1.1.2 テキスト生成モデルとしてのGPT
  1.1.3 生成AIモデルを扱うWeb API
  1.1.4 扱えるトークン数の増加による影響
 1.2 Azureとは
  1.2.1 Azureの魅力
  1.2.2 クラウドコンピューティングの活用
  1.2.3 第三者のサービス提供
  1.2.4 リソースグループの活用
 1.3 Azure OpenAI Serviceとは
  1.3.1 Azure PortalでAzure OpenAIの作成
  1.3.2 Azure OpenAI Studioへ分離
  1.3.3 サービスの監視機能
 1.4  OpenAI Studioとは
  1.4.1 Azure OpenAI Studioの活用
  1.4.2 プレイグラウンドの活用
  1.4.3 コンソールプログラムから実際のアプリケーション開発へ
第2章 OpenAIの概要
 2.1 OpenAI API の種類
  2.1.1 OpenAI と Microsoft 社の関係
  2.1.2 Azure OpenAI ServiceからのOpenAI APIの活用
  2.1.3 OpenAI が提供するAPIの種類
  2.1.4 GPTのAPIは文脈を理解する
  2.1.5 OpenAI APIの利用方法
  2.1.6 OpenAI APIのサンプルコード
  2.1.7 入力候補とチャットの違い
 2.2 大規模言語モデル(LLM)
  2.2.1 大規模言語モデルとは
  2.2.2 倫理的な問題
 2.3 生成AIの仕組み
  2.3.1 生成AIについて
  2.3.2 生成AIのモデル
  2.3.3 変換ベース(Transformative)モデル
  2.3.4 幻覚と微調節
第3章 Azure OpenAI Studioの活用
 3.1 Azure Portalを開く
  3.1.1 Azureアカウント
  3.1.2 リソースの作成
  3.1.3 インスタンスの詳細
  3.1.4 Azure OpenAI Studioを開く
  3.1.5 利用できるモデルとデプロイ
  3.1.6 プレイグラウンドを開く
 3.2 プレイグラウンドの利用
  3.2.1 チャットプレイグラウンド
  3.2.2 入力候補プレイグラウンド
  3.2.3 DALL-Eプレイグラウンド
 3.3 チャット
  3.3.1 チャットの利点
  3.3.2 チャットでの探索
 3.4 入力候補
  3.4.1 プロンプトエンジニアリング
  3.4.2 入力候補の利点
第4章 モデルの種類
 4.1 OpenAIが提供するモデル
  4.1.1 モデルとは何か
  4.1.2 OpenAIの最新モデル
  4.1.3 Azure OpenAI Serviceが提供するモデル
 4.2 トークンの利用
  4.2.1 トークンとは
  4.2.2 文章を要約するパターン
  4.2.3 箇条書きから文章を生成するパターン
  4.2.4 チャットのように繰り返し会話を繰り返すパターン
  4.2.5 トークン数を確認する
  4.2.6 トークン数を計算する
 4.3 GPT-3.5とGPT-4の違い
  4.3.1 GPTの発祥
  4.3.2 GPTの歴史
  4.3.3 プロンプトの与え方の違い
  4.3.4 GPT-4のマルチモードダル機能
 4.4 APIの違い
  4.4.1 Azure.AI.OpenAIパッケージ
  4.4.2 コンソールプログラムで入力候補を利用
  4.4.3 コンソールプログラムでチャットを利用
  4.4.4 OpenAIClientクラス
  4.4.5 CompletionsOptionsクラス
  4.4.6 ChatCompletionsOptionsクラス
第5章 具体的なアプリケーション
 5.1 ChatGPTでテーマを決める
  5.1.1 概要を伝える
  5.1.2 漠然としたテーマを伝える
  5.1.3 要件を少しずつ掘り下げる
 5.2 インプット形式を決める
  5.2.1 プロンプトエンジニアリングの活用
  5.2.2 指示の形式をAIに尋ねる
  5.2.3 指示の方法を相談する
  5.2.4 入力フォーマットを提案してもらう
  5.2.5 入力フォーマットを試す
  5.2.6 具定例を入れてフォーマットを試す
  5.2.7 入力情報を増やす
  5.2.8 追加情報を明確化させる
 5.3 アウトプット形式を決める
  5.3.1 アプトプット形式を尋ねる
  5.3.2 提案されたフォーマットを変更する
  5.3.3 出力フォーマットを試す
  5.3.4 入力と出力を調節する
 5.4 プレイグラウンドで確認する
  5.4.1 入力候補プレイグラウンドで試す
  5.4.2 チャットプレイグラウンドで試す
 5.5 プログラムに組み込む
  5.5.1 デスクトップアプリのプロジェクトを作る
  5.5.2 画面をデザインする
  5.5.3 生成ボタンの動作
  5.5.4 プログラムを動作させる
第6章 パラメーターの詳細
 6.1 OpenAIが提供するパラメーター
  6.1.1 チャットのパラメーター
  6.1.2 入力候補のパラメーター
 6.2 プロンプト
  6.2.1 プロンプトの役割
  6.2.2 プロンプト作成のポイント
  6.2.3 プログラムで扱えるプロンプト
  6.2.4 プロンプトのリスク
 6.3 トークン
  6.3.1 テキストをトークンに分割
  6.3.2 トークン数の種類
  6.3.3 トークン数を確認する
 6.4 最大応答
  6.4.1 チャットで最大応答を変える
  6.4.2 プログラムで最大応答を設定する
  6.4.3 出力する文字数をプロンプトで指定する
  6.4.4 最大応答よりも長い回答を得る
  6.4.5 レスポンスを良くするためにストリームを使う
 6.5 温度
  6.5.1 温度を変更したとき
  6.5.2 高温度で物語を作る
  6.5.3 低温度で事実について調査する
  6.5.4 回答の独創性を探る
  6.5.5 プログラムで温度を扱う
 6.6 上位P
  6.6.1 温度と上位Pの違い
  6.6.2 プレイグラウンドで上位Pを変化させる
  6.6.3 プログラムで上位Pを扱う
 6.7 頻度のペナルティ
  6.7.1 頻度のペナルティを変化させる
  6.7.2 頻度のペナルティの詳細
  6.7.3 プログラムで頻度のペナルティを扱う
 6.8 プレゼンスのペナルティ
  6.8.1 プレゼンスのペナルティを変化させる
  6.8.2 プログラムでプレゼンスのペナルティを扱う
 6.9 ロールの設定
  6.9.1 ユーザーとAIのロール
  6.9.2 プログラムでロールを設定する
  6.9.3 システムメッセージのロールを利用する
 6.10 口調を変える
  6.10.1 プレイグラウンドのシステムメッセージ
  6.10.2 システムメッセージを変更する
 6.11 例文を付ける
  6.11.1 プレイグラウンドで例を追加する
  6.11.2 例の追加をコードで確認する
  6.11.3 プログラムで例文を追加する
第7章 プログラムから活用
 7.1 コードの取得
  7.1.1 いろいろな言語からの呼び出し
  7.1.2 サンプルコードを表示する
  7.1.3 サンプルコードの詳細
  7.1.4 curlコマンドの実行
 7.2 C#で呼び出し
  7.2.1 C#のサンプルコードを表示する
  7.2.2 コンソールアプリのプロジェクトを作成する
  7.2.3 Azure.AI.OpenAIパッケージを追加する
  7.2.4 サンプルコードをProgram.csファイルに貼り付ける
  7.2.5 環境変数を設定する
  7.2.6 プログラムを実行する
  7.2.7 入力候補のプログラムを作る
  7.2.8 ストリーミングなしの入力候補のプログラム
  7.2.9 入力候補のプログラムを実行
 7.3 Pythonで呼び出し
  7.3.1 Pythonでプログラムを作る
  7.3.2 Pythonのプログラムを動かす
 7.4 Node.jsで呼び出し
  7.4.1 Node.jsでプログラムを作る
  7.4.2 nodeコマンドで実行する
 7.5 プロンプトの利用
  7.5.1 プロンプトのパターンを模索する
  7.5.2 ブログ記事を生成するプロンプト
  7.5.3 物語を生成するプロンプト
  7.5.4 長い文章を要約するプロンプト
  7.5.5 要約を箇条書きするプロンプト
  7.5.6 箇条書きから文書を生成するプロンプト
  7.5.7 文末を「ですます調」にするプロンプト
  7.5.8 箇条書きからビジネスメールを作るプロンプト
  7.5.9 箇条書きから報告書を作るプロンプト
 7.6 チャットの作成
  7.6.1 ユーザーをAIと会話させる
  7.6.2 AIとの会話で情報を絞り込む
  7.6.3 AIとの会話で発想を広げる
 7.7 画像の生成
  7.7.1 DALL-Eのプレイグラウンドを使う
  7.7.2 プログラムで画像を生成する
  7.7.3 生成された画像を参照する
 7.8 コンテンツフィルター
  7.8.1 コンテンツフィルターのカテゴリと重大度
  7.8.2 ブロックリストによるフィルタリング
  7.8.3 動きをプレイグラウンドで確認する
  7.8.4 プログラムでコンテンツフィルターを扱う
第8章 アプリから活用
 8.1 デスクトップアプリで扱う
  8.1.1 アプリの機能を考える
  8.1.2 OpenAIを活かした機能を考える
  8.1.3 WPFアプリケーションを作成する
  8.1.4 画面のデザイン
  8.1.5 ViewModelを作成する
  8.1.6 DataContextにバインドする
  8.1.7 動作を確認してみる
 8.2 スマホアプリで扱う
  8.2.1 .NET MAUIアプリケーションを作成する
  8.2.2 .NET MAUIアプリの構成
  8.2.3 画面のデザイン
  8.2.4 ViewModelを流用する
  8.2.5 BindingContextにバインドする
  8.2.6 動作を確認してみる
 8.3 Web アプリで扱う(ASP.NET MVC)
  8.3.1 2つのWebアプリケーション形式
  8.3.2 ASP.NET Core MVCアプリケーションを作成する
  8.3.3 ViewModelを流用する
  8.3.4 初期表示の作成
  8.3.5 Controllerの作成
  8.3.6 セッション管理の追加
  8.3.7 シリアライズ機能の追加
  8.3.8 動作を確認してみる
 8.4 Web アプリで扱う(Blazor)
  8.4.1 Blazor WebAssemblyアプリを作成する
  8.4.2 Blazorアプリケーションの構成
  8.4.3 ViewModelを流用する
  8.4.4 画面を作成する
  8.4.5 動作を確認してみる
 8.5 Webアプリで扱う(Vue.js)
  8.5.1 Vueプロジェクトを作成する
  8.5.2 Schedule.vueを作成する
  8.5.3 コンポーネントを作成する
  8.5.4 App.vueの書き換え
  8.5.5 動作を確認してみる
 8.6 Azure Functionsで扱う
  8.6.1 Azure Functionsアプリを作成する
  8.6.2 テスト用アプリの追加
  8.6.3 ViewModelを流用する
  8.6.4 Azure Functionsを作成する
  8.6.5 Azure Functionsの動作を確認する
  8.6.6 テスト用のデスクトップアプリを作る
  8.6.7 動作を確認してみる
  8.6.8 Azure Functionsをデプロイする
第9章 独自データを使う
 9.1 システムメッセージの利用
  9.1.1 AIに役割を与える
  9.1.2 AIにデータを与える
  9.1.3 AIでデータを検索するコード
  9.1.4 動作を確認する
 9.2 事前処理方式を利用
  9.2.1 RAG(Retrieval Augmented Generation)方式
  9.2.2 事前にデータベースを検索する
  9.2.3 事前検索のメッセージをAIに渡す
  9.2.4 動作を確認する
 9.3 On Your Dataの利用
  9.3.1 チャットプレイグラウンドでデータを追加する
  9.3.2 独自データをチャットで利用する
  9.3.3 Webアプリケーションから利用する
  9.3.4 動作を確認する
第10章 他システムとの組み合わせ
 10.1 Function Callingの活用
  10.1.1 最新情報の問い合わせ
  10.1.2 Function Callingのシーケンス
  10.1.3 ChatCompletionsFunctionToolDefinitionクラス
  10.1.4 Function Callingのサンプルコード
  10.1.5 動作を確認する
 10.2 在庫システムとの連携
  10.2.1 在庫システムとの組み合わせ
  10.2.2 在庫システムとの連携コード
  10.2.3 動作を確認する
 10.3 会議予約システムとの連携
  10.3.1 会議予約システムへの登録
  10.3.2 会議予約システムとの連携コード
  10.3.3 会議予約システムのモックコード
  10.3.4 動作を確認する
 10.4 経費登録システムへの登録
  10.4.1 経費登録システムとの組み合わせ
  10.4.2 経費登録システムとの連携コード
  10.4.3 動作を確認する

索引
b

ISBN:9784296080380
出版社:日経BP
判型:B5変
ページ数:368ページ
定価:3600円(本体)
発行年月日:2024年04月
発売日:2024年04月05日
国際分類コード【Thema(シーマ)】 1:UB