watsonx Assistantからwatson DiscoveryとChatGPTを呼び出してRAGを構築してみた!(Part2)
投稿者:泉
こんにちは!
日本情報通信の泉です。
今回のTechBlogは9月に公開したwatsonx Assistantからwatson DiscoveryとChatGPTを呼び出してRAGを構築してみた!(Part1)の続きとなります。
まだPart1をご覧になっていない方は是非こちらからご覧いただけますと幸いです。
■構築手順
前回のPart1ではChatGPT側の設定とwatson Discovery側の設定までを行いました。
今回のPart2ではwatsonx Assistant側の設定(手順4~)を実施していきたいと思います。
1.ChatGPTのAPIkey発行
2.watson Discoveryで弊社HPの情報をクロール
3.watson DiscoveryのProject id・APIkey・URLの取得
4.watsonx Assistantの環境作成
5.watsonx AssistantからChatGPTへの接続設定
6.watsonx Assistantからwatson Discoveryへの接続設定
7.watsonx Assistantのアクション設定
それでは早速構築していきたいと思います!
4.watsonx Assistantの環境作成
まず最初にwatsonx Assistantの環境作成を行います。
今回環境名は”RAG_TEST”、使用言語はEnglish(US)で環境を作成します。
※使用言語をJapaneseにした場合、後続で使用するJSONファイルを読み込むことができないためEnglish(US)を指定しています。
5.watsonx AssistantからChatGPTへの接続設定
環境を作成したらまずはChatGPTへの接続設定を行っていきます。
ホーム画面のナビゲートメニュー下部にある”Integrations”をクリックします。
Extensions画面の左側にある”Build custom extension”をクリックします。
Basic informationで”Extension name”を指定した後、画面右上の”Next”をクリックします。
・Extension name:ChatGPT
Import OpenAPIでこちらのGitLabに上がっているJSONファイル(openai-openapi.json)をアップロードします。
右上の”Finish”をクリックします。
追加した接続設定(ChatGPT)の右下にある”Add”をクリックします。
Authentication画面で”Authentication type”と”Token”を設定し、右上の”Next”をクリックします。
・Authentication type:Bearer auth
・Token:手順1でメモしたChatGPTのAPI key
右上の”Finish”をクリックします。
6.watsonx Assistantからwatson Discoveryへの接続設定
続いてwatson Discoveryへの接続設定を行っていきます。
手順4同様にBasic informationで”Extension name”を指定した後、画面右上の”Next”をクリックします。
・Extension name:Watson Discovery
Import OpenAPIでこちらのGitLabに上がっているJSONファイル(watson-discovery-query-openapi.json)をアップロードします。
右上の”Finish”をクリックします。
追加した接続設定(Watson Discovery)の右下にある”Add”をクリックします。
Authentication画面で以下を設定し、右上の”Next”をクリックします。
・Authentication type:Basic auth
・Username:apikey
・Password:手順3でメモしたwatson DiscoveryのAPI key
・discovery URL:手順3でメモしたwatson DiscoveryのURL
右上の”Finish”をクリックします。
7.watsonx Assistantのアクション設定
最後にwatsonx Assistantのアクション設定を行っていきます。
ナビゲートメニューから”Action”を開き、右上の歯車マークをクリックします。
Upload/DownloadからこちらのGitLabに上がっているJSONファイル(discovery-openai-actions.json)をアップロードします。アップロードが完了したら右上の”Close”をクリックします。
Actions画面の”Created by you”で以下のパラメータを編集します。
・discovery_project_id:手順3でメモしたwatson DiscoveryのProject id
・model_for_chat:gpt-4-turbo(デフォルトはgpt-3.5-turboですが、性能を上げるために変更しています。)
・model_max_tokens:500(デフォルトは200になります。)
以上で設定は完了です。早速質問してみたいと思います。
■watsonx Assistantに質問
ナビゲートメニューから”Preview”を開き、右下のチャットに以下の質問を投げてみます。
<質問>
SAS導入事例を詳しく教えて
問題なく質問が返ってきました!
プロンプトやパラメータを変更したらもっと精度が上がりそうですが、チューニングについてはまた次回以降のBlogで記載したいと思います。
■まとめ
今回のBlogではwatsonx Assistant・watson Discovery・ChatGPTを使用してRAGを構築する方法をご紹介しました。
RAGを構築するまでにいくつかステップはあるものの、難しい操作は全くなく簡単に構築することができました。
RAGを導入することで、生成AIを活用した高度な情報検索と深い洞察のある回答を社内情報に対して提供することが可能になります。通常のキーワード検索では拾いきれない情報を、RAGならではの手法で引き出すことが可能です。
例えば、大規模なデータベースや膨大な量のドキュメント等を管理している企業では、データの所在や適切な活用方法が分からずに困っていることが多くあります。RAGを導入することで、関連性の高い情報を迅速に検索し、それを基に生成AIが意味のある回答を生成します。このプロセスは、データの有効活用を促進し、業務効率の向上や意思決定の質の向上に寄与します。
私もこのTechBlogを作成する中でRAGを使わない手はないなと改めて感じました。
まずは一部の社内データからでもIBM社のwatsonxを利用して一度試してはいかがでしょうか。
また、弊社では生成AIにIBM社のwatsonx.aiを活用したり、検索エンジンにベクトルDB(Milvus)を活用したRAG構築も行っております。是非ご興味のある方はご連絡いただけますと幸いです。
ご覧いただき、ありがとうございました。