Udemy 新コース: 作って学ぶPower BI!

GPTでの要約結果にWeb の検索情報を含めて回答させるためにBing Web Search を利用したPower Automate フローを作成する – 生成AI におけるRAG

Bing Web Search は、生成AI にWeb 上の情報をまとめさせるのに利用する = RAGの利用のため急速に需要が高まっています。

RAG (Retrieval Augmented Generation) とは、データをGPTにインプット情報として渡し、その情報に基づいて回答を生成させる手法です。

取得拡張生成 (RAG) は、地上データを提供する情報取得システムを追加することで、ChatGPT のような大規模言語モデル (LLM) の機能を拡張するアーキテクチャです。 情報取得システムを追加すると、応答を作成するときに LLM によって使用される接地データを制御できます。 エンタープライズ ソリューションの場合、RAG アーキテクチャは、ベクター化されたドキュメント、画像、オーディオ、ビデオからソース化されたエンタープライズ コンテンツ、生成 AI を制限できることを意味します。

Azure AI Search, Microsoft

Coplot StudioバックグラウンドではBing Web Search が利用されています

Copilot Studio の場合、一度指定したURL はそのボットを公開後、エンドユーザーから任意に再度指定できません。これを解消するために、Power Apps でRAG の対象とするURL をWeb 全体とするためにBing Web Search を利用します。

もし、検索対象のURLを絞り込みたい場合は Bing Custom Search を利用します。

今回はBing Web Search を利用して、Web 全体を検索したデータをRAGとして利用するフローを作成します。

Azure ポータル

Bing Web Search API のリソースを作成

まず、Bing Web Search API のリソースを作成します。

Create a Bing search resource – Microsoft Azure

承諾して作成に進みます。

作成します。

DeployされたBing Search リソースをテスト

ちょっと試してみることができます。Overview からSearch Terms に入力してみます。

結果が返ってくることがわかります。このケースでは以下のように返答されました。

{
  "_type": "SearchResponse",
  "queryContext": {
    "originalQuery": "Hello world"
  },
  "webPages": {
    "webSearchUrl": "https://www.bing.com/search?q=Hello+world",
    "totalEstimatedMatches": 169,
    "value": [
      {
        "id": "https://api.bing.microsoft.com/api/v7/#WebPages.0",
        "contractualRules": [
          {
            "_type": "ContractualRules/LicenseAttribution",
            "targetPropertyName": "snippet",
            "targetPropertyIndex": 0,
            "mustBeCloseToContent": true,
            "license": {
              "name": "CC-BY-SA",
              "url": "http://creativecommons.org/licenses/by-sa/3.0/"
            },
            "licenseNotice": "CC-BY-SA ライセンスのテキスト"
          }
         ・・・・・・
        ],
    ],
    "someResultsRemoved": true
  }
}

API ドキュメントにて仕様の確認

Web Search API のドキュメントを確認します。

エンドポイントはドキュメントより、以下の形式であることがわかります。GETリクエスト形式です。

https://api.bing.microsoft.com/v7.0/search

ヘッダーにて渡すキーは以下のとおりです。

Ocp-Apim-Subscription-Key

実際のキーの値はこちらのとおりです。

検索文字は以下のクエリ文字列で渡します。

q

Power Automate

Bing Web Search API へのアクセス

Power Automate のMaker ポータルにアクセスします。

こんな感じでPower Apps から起動できるフローとします。

Input をテキスト形式で一個追加しておきます。

こちらは検索文字にしようと思います。

チャットのように話しかけられた文章から、AI Builder で検索語になるようにキーワード抽出を行います。

抽出されたキーワードは変数に格納します。

半角スペース区切りにしたいので、作成で準備しておきます。

キーワードは以下のように変数に名前をつけます。

API-KEY を入れておく、「作成」を準備します。

API へのGET リクエストはHTTP コネクタを利用します。

ここまでを保存してテストしてみます。

「Copilot の使い方」というふうにリクエストしてみますと、キーワードを抽出してくれて、その結果が返ってきました。

このようにリクエストから結果を取得するところまでのフローを作成することができました。

更に、これをGPTで検索結果を要約するところまでを作成します。

HTTP リクエストを HTTP Bing と名称を変えておきます。

GPT による検索結果の活用

Bing 検索結果から得られた情報をインプットとして、HTML形式にしつつ、回答フォーマットの通りに変換します。

インプットを以下の以下の回答フォーマットに従って回答してください。
## 回答フォーマット
<a href='`webSearchUrl`'>`name`</a><br>
`description`<br>
<br>
## インプット
@{body('HTTP_Bing')['webPages']['value']}

インプットには以下のように入力します。

body('HTTP_Bing')['webPages']['value']

HTTP リクエストでGPT に対するアクションを追加します。

Content には先程の プロンプトを指定します。

生成された結果をテキスト形式にするため、シングルクオーテーションで囲います。

出力結果をPower Apps に返答するようにします。

テスト結果

Copilot の使い方を教えてとチャットしてみます。

以下のように返答が返ってきました。

'<a href='https://swri.jp/article/1334'>WindowsにCopilotが登場したので使ってみよう(1) | スマートワーク総研</a><br>
基本的には、Windowsをアップデートして最新版にすると、タスクに Copilot(コパイロット) のアイコンが表示されるので、これをクリックすれば起動できる。 手元のパソコン数台で利用できているが、もし最新版にアップデートしても利用できない場合は、後日使えるようになるだろう。 なお、アイコンをクリックしなくても「Win+C」のショートカットでもCopilotが起動できる。 Copilotは、デスクトップの右側に専用のウィンドウとして表示される。 ここでさまざまな作業を行うことになる。 最新版にアップデートするとタスクバーにCopilotのアイコンが表示される 画面の右側にCopilotのウィンドウが表示された AIサービスとしての機能は普通だ<br>
<br>
<a href='https://minnano-rakuraku.com/contents/microsoft-copilot-4273/'>Microsoft 365 Copilotの使い方。インストール方法・利用料金・日本語対応は? ※ 11/1 追記</a><br>
Pocket Microsoft 365 Copilot(コパイロット)とは? Copilotで何ができる? 使い方は? 料金やインストール方法・日本語対応は? AI技術を搭載した『 ChatGPT(チャットジーピーティー) 』の登場に伴い、AI技術はさらに加速。 多くの人が、仕事などで利用したことのある “ Word(ワード) ” や “ Excel(エクセル) ” でもAIによる効率化が行えるようになり、大きなニュースになっています。 それが『 Microsoft 365 Copilot(コパイロット) 』というツールです。<br>
<br>
<a href='https://support.microsoft.com/ja-jp/windows/windows-%E3%81%AE-copilot-%E3%81%B8%E3%82%88%E3%81%86%E3%81%93%E3%81%9D-675708af-8c16-4675-afeb-85a5a476ccb0'>Windows の Copilot へようこそ - Microsoft サポート</a><br>
開始するには、タスク バーの新しいボタンを選択して Windows の Copilot を起動するか、 + C を押します。 Windows の Copilot は、Windows へのサインインに使用したものと同じ Microsoft アカウントまたは Azure Active Directory (Azure AD) アカウントを使用して Bing Chat に接続します。 ローカル アカウントでサ'

HTML 形式では以下のようになります。

WindowsにCopilotが登場したので使ってみよう(1) | スマートワーク総研

基本的には、Windowsをアップデートして最新版にすると、タスクに Copilot(コパイロット) のアイコンが表示されるので、これをクリックすれば起動できる。 手元のパソコン数台で利用できているが、もし最新版にアップデートしても利用できない場合は、後日使えるようになるだろう。 なお、アイコンをクリックしなくても「Win+C」のショートカットでもCopilotが起動できる。 Copilotは、デスクトップの右側に専用のウィンドウとして表示される。 ここでさまざまな作業を行うことになる。 最新版にアップデートするとタスクバーにCopilotのアイコンが表示される 画面の右側にCopilotのウィンドウが表示された AIサービスとしての機能は普通だ



Microsoft 365 Copilotの使い方。インストール方法・利用料金・日本語対応は? ※ 11/1 追記

Pocket Microsoft 365 Copilot(コパイロット)とは? Copilotで何ができる? 使い方は? 料金やインストール方法・日本語対応は? AI技術を搭載した『 ChatGPT(チャットジーピーティー) 』の登場に伴い、AI技術はさらに加速。 多くの人が、仕事などで利用したことのある “ Word(ワード) ” や “ Excel(エクセル) ” でもAIによる効率化が行えるようになり、大きなニュースになっています。 それが『 Microsoft 365 Copilot(コパイロット) 』というツールです。



Windows の Copilot へようこそ – Microsoft サポート

開始するには、タスク バーの新しいボタンを選択して Windows の Copilot を起動するか、 + C を押します。 Windows の Copilot は、Windows へのサインインに使用したものと同じ Microsoft アカウントまたは Azure Active Directory (Azure AD) アカウントを使用して Bing Chat に接続します。 ローカル アカウントでサ

以上、ご参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Index