勉強会について

本日は、勉強会にご参加いただきありがとうございます。

昨今の生成 AI ブームにのって、今回は生成 AI 関連の勉強会をさせていいただくことになりました。

・内容
  Azure OpenAI Service(木島)
  Microsoft Copilot(沼上)

ご説明のポイント

  1. 生成 AI 関連の技術について
  2. 言語モデルで何ができるか
  3. Azure OpenAI Service と OpenAI との違い
  4. Azure OpenAI リファレンスアーキテクチャとは
  5. 生成 AI 関連プロダクトの製造後の感想
  6. プログラムソース一部公開
  7. 参考動画

生成 AI 関連の技術について

「LLM」と類似用語との違い

言語モデルの種類

技術を全部知る必要はないのですが・・

通販サイトで、「ぶどう」、「めろん」 を検索した人に薦める商品は?

「ふとん」、「もも」、「蚊取り線香」だったらどういう順番で薦めるか?

テキストのベクトル化

AI が急激に賢くなった

言語モデルで何ができるか

  1. 自然言語処理ができる。
  2. 訓練データに基づく学習能力がある。
  3. 自動文章生成能力がある。
  4. 質問応答や対話システムなど様々なタスクに対応可能。
  5. API として提供され、開発者が利用可能。

Azure OpenAI Service と OpenAI との違い

Azure OpenAI Service は Azure 上に立ち上がる Serivce です。
そのため、以下のような特徴があります。

・セキュリティ:仮想ネットワーク内での利用制限や Azure AD を利用したアクセス管理ができます。

・稼働率:「Azure Cognitive Services」は 99.9%以上の稼働率を保証しています。

・サポート:Azure は技術的なサポートプランが提供されています。

・コンテンツフィルター:憎悪、性的、暴力、自傷行為に関する応答を制限することができます。

Azure OpenAI リファレンスアーキテクチャとは

Azure OpenAI リファレンスアーキテクチャとは

Alive アーキテクチャ

生成 AI 関連プロダクトの製造後の感想

プログラムソース一部公開

    // 現在の時刻を取得
    var date = new Date();

    gptRequest.messages.push({
      role: "system",
      content:
        "The current date and time is " +
        date +
        ". Please use this time reference for any date-related questions. " +
        " However, when answering the question, please make it clear that you are using UTC dates.",
    });

    // 関連する質疑応答を追加
    gptRequest.messages.push({
      role: "system",
      content:
        "Use the following questions and answers to provide a answer.
        The 'Confidence Score' is a number between 0 and 1.
        The closer the number is to 1, the more similar the question and answer are to the current question.",
    });

プログラムソース一部公開

    // 信頼度スコアの説明
    gptRequest.messages.push({
      role: "system",
      content:
        "The following description indicates typical confidence associated for a given 'Confidence Score'. " +
        "0.90 - 1.00	A near exact match of user query and a KB question.
                        Therefore, basically, the 'Answer' should be used as is, with no changes or additions." +
        "0.70 - 0.90	High confidence - typically a good answer that completely answers the user's query.
                        Therefore, if it is not a problem, the 'Answer' should be used as is and unchanged." +
        "0.50 - 0.70	Medium confidence - typically a fairly good answer that should answer the main
                        intent of the user query.
                        Therefore, if it is not a problem, answer based on 'Answer'. " +
        "0.30 - 0.50	Low confidence - typically a related answer, that partially answers the user's
                        intent.Therefore, Refer to 'Answer' to create a better answer." +
        "0.00 - 0.30    Very low confidence - typically does not answer the user's query,
                        but has some matching words or phrases.Therefore, refer to 'Answer' to create a better answer.",
    });

プログラムソース一部公開

    // 関連する質疑応答をlimitedSortedAnswersの数だけ追加

    for (let i = 0; i < limitedSortedAnswers.length; i++) {
      const answer = limitedSortedAnswers[i];
      const question = answer?.questions?.[0];
      const answerText = ` Question: ' ${question} ' was answered with Answer: ' ${answer.answer} ' .
      Confidence Score: ${answer.confidenceScore}`;

      gptRequest.messages.push({
        role: "system",
        content:
          gptRequest.messages.length === 1
            ? "As background information:" + answerText
            : answerText,
      });
    }

    // これまでの文脈をlimitedPreviousMessagesの数だけ追加
    for (let i = 0; i < limitedPreviousMessages.length; i++) {
      const message = limitedPreviousMessages[i];
      const role = message.author === "me" ? "assistant" : "user";

      gptRequest.messages.push({
        role: role,
        content: message.body,
      });
    }

参考動画

Azure OpenAI Developer セミナー1
Azure OpenAI Developer セミナー2
ファインチューニング
LLM アプリの開発
AI がもたらす可能性と多様性

アーカス・ジャパン株式会社/K合同会社

© 2023 KLLC

凡例

code
em
strong
gfm

header1 header2 header3
align left align right align center
a b c
© 2023 KLLC

f 1

f 2

f 3

f 4

f 5
f 6

リンク

© 2023 KLLC

凡例

  • list
  • list
    • list2
    • list2
      • list2
      • list2
  1. 11
  2. 11
    1. 22
    2. 22
      1. 33
      2. 33
© 2023 KLLC

凡例

 class Hoge
   def hoge
     print 'hoge'
   end
 end
<body></body>

aa

bb

pre
aaa
aaa
© 2023 KLLC

オンライン勉強会注意事項リスト - (最重要)端末再起動 - (最重要)息を吸うときに音を出さない - (最重要)リモートデスクトップは、rdp ファイルじゃなくて、windows から起動する - (最重要)音声をリモートで再生で設定する 設定済みなのでそのままで大丈夫 - 場所を移動してから準備する - セカンドディスプレイの解像度が変わると、OBS の設定が変わるため、全部の環境に接続してから OBS 設定変更する - セカンドディスるプレイのマウスの方向を確認する - Zoom url を送る - Zoom 全画面になっているかを確認する - Youtubeの音声、画質を確認 - Wifiの速度が出ていることを確認 - 2560 1440 を使う - デスクトップをきれいにする - ブラウザはゲストモード 事故防止 必要な画面はいろいろログインしておく - 通知系アプリを落とす - 使わないアプリは終了 - 予測変換や履歴をできる限り無効化 - 要リハーサル - 音が聞こえない時、配信PCは、CableAudioが有効であること  OBSのデスクトップ設定(https://vip-jikkyo.net/obs-not-capturing-pc-game-audio)  サウンドデバイスの設定 - voice meeter は、 HARDWARE INPUT 1 を WDM:マイク配列 HARDWARE INPUT 2 を MME:エコーキャンセルスピーカー HARDWARE OUT を 3 WDM:エコーキャンセルスピーカー Run other Voice meeter tools > Run 15 Bands EQ > BUS B を選択 System Setting MME 2048 WDM 512