はじめに
今回はIBMのデモ環境であるのIBM Techzoneを使って、IBM watsonx Orchestrateの基礎操作を行ってみたので、その流れについて整理しています。
本検証にはIBM Cloudアカウント(IBMid)が前提となっています。
また、検証に必要なToolやKnowledgeファイルは事前に用意したものを利用しています。
watsonx Orchestrate(wxO)とは?
IBM watsonx Orchestrate(wxO) は、AIを活用したデジタルワーカー・プラットフォームとして、業務などにおける反復的な作業や手間のかかる業務プロセスを、自然言語の指示だけで自動化できるしてくれるAIアシスタントプラットフォームです。
開発者にとってもAIエージェントより簡単に構築運用できる環境をサポートしています。
このwxOが2025年4月に日本リージョンで利用できるようになり、今回Techzone環境でいじってみました。
Techzone環境の予約
繰り返しとなりますが、今回の検証はIBMで提供するデモ環境であるIBM Techzone
にて実施しています。そのため、環境構築のためIBM Techzoneのwatsonxページにアクセスします。
なお、こちらのページにアクセスするためには、前提条件のIBMidでのログインが必要となります。
ログイン完了後、watsonxページの下端にwxOのTrial/Standard
環境がありますので、こちらをクリックします。
予約作成のページが表示されたら、REserve a environment
をクリックします。
環境の設定画面が表示されますが、適宜設定を行います。
今回の検証の目的はTest
、リージョンはTokyo
を選んでいます。
なお、利用可能時間は基本的に予約開始時から12時間の間です。ただ12時間単位で最大2日まで延長することも可能である旨がポリシーとして記載されています。
Reservation policy: Recommended 12 hours, but can be reserved up to 12 hours on this reservation form. Extend later for 12 hours increments up to 1 day total. Max time 2 days total.
選定が完了したらチェックボックスにチェックを入れて、Submit
をクリックします。
予約完了後、しばらくするとメールにて予約完了メールが送られてきます。
Status Update
にProvisioning
と記載されていますが、Ready
に変わりましたら環境が用意されたことになります(私の環境では大体5分程度でReadyに変わりました)。
Techzoneの環境予約ページにアクセスすると、環境が用意されていることが確認できます。
Open this environment
をクリックします。
環境の詳細ページの下端にwxOのURLが記載されているので、こちらにアクセスします。
URLにアクセスするとIBM Cloud上のTrialアカウント(xxxxxx-itz-watsonx-5 など)が発行され、wxOインスタンスが作成されていることがわかります。
Launch watsonx Orchestrate
をクリックし、wxOにアクセスします。
wxOのエージェントの構築
wxOコンソールにはデフォルトのチュートリアルとしてLesson Planが設けられています。以下の添付のように、こちらのLesson Planを段階的に進めていくことによって、wxOの操作方法や仕組みをイメージしやすいかと思います。また、チュートリアルの中にはサンプルファイルもダウンロードすることができますので、ぜひ一度試してみてください。
ただ、今回は別途用意されているサンプルドキュメントやyamlファイルを使っていますが、全体的な流れとしてはLesson Planの一部と同様ですので、ご参考ください。
なお、今回検証のコンセプトは、医療業界におけるユースケースに基づいて回答が帰ってくることを想定しています。
AskBenefits
というエージェントを構築しますが、これは医療処置や医療プランの給付に関する質問に答えるデジタルエージェントを想定しています。
まずはエージェントを作成するため、Create new agent
をクリックします。
その後、エージェント名やそれに対する説明も記載します。入力が完了したらCreate
をクリックします。
エージェント作成の詳細画面が表示されたら、まずTool
を入れていきます。
ここでいうToolとは、API アクセスやデータ処理、AIサービスなどの機能をエージェントに提供するコンポーネントの一つです。
まだToolが何も入っていないので、Add tool
をクリックします。
今回は事前に用意されていたサンプルyamlファイルにてtoolが作成されていたため、そのファイルをインポートしました。Import
をクリックします。
Drag and drop an OpenAPI file here or click to upload.
をクリックし、用意しているyamlファイルをインポートします。ファイルがアップロードされたらNext
をクリックします。
yamlファイルから読み取れるToolの一覧をここで表示しています。今回は全てのToolを使用しますので、全てチェックを入れてDone
をクリックします。
Toolが入った後には、以下のようにToolsetが含まれていることがわかります。今回は合計9つのToolを入れています。
Toolが入ったら次はKnowledge
を入れていきます。ここでいうKnowledge
とは、ユーザーの質問に対してそのAgentが回答するために必要な参考情報のことを示します。
Knowledge
カテゴリーをクリックし、Documents
→Upload files
をクリックします。
Knowledgeファイルをアップロードする画面が表示されたら、Drag and drop files here or click to upload
をクリックし、ファイルをアップロードします。今回はToolと同様、事前にKnowledgeファイルもPDFファイルとして用意したものを使っています。
また、Knowledgeの説明も適宜記載します。
“This document covers key healthcare benefit policies—eligibility, coverage, claims, exclusions, and post-employment options. Use it to answer employee questions related to health benefits”
ここまで設定が完了したら、うまく動くかどうかの確認を行います。
wxOはコンソール右側にプレビュー画面が表示されており、都度設定した内容をここに反映することで、調整を行うことができます。また設定した項目の反映速度がほぼリアルタイムに行われるため、非常に楽な仕様でした。
簡単な質問を投げてみたら、以下のように回答がしっかり戻ってきます。
なお、回答の上端にあるShow Reasoning
→Step 1
をクリックすることで、回答に使用されたyamlファイルの中の情報がjson形式に表示されます。質問となったコスト関連の情報を正しく読み取って理解し、コスト関連のデータを推論して表示させていることがわかります。
設定したToolやKnowledgeに問題がなければ、上端のDeploy
をクリックし、正式にエージェントを構築します。
エージェント画面に先ほど作成したAsk Benefits
が表示されていることがわかります。
wxOエージェントの追加
最初のAskbenefits
エージェントのデプロイが完了したら実際の画面で利用してみるために上端のAgent chat
をクリックします。
先ほどToolやKnowledgeの設定によりPreview画面で表示させることができる内容はこちらのチャット画面でも同じく表示されますが、インプットした情報以外の質問をした場合の回答についてはうまく回答が得られません。例としてCan you describe my Dental benefits?
とDental benefitsについて質問したところ、Dental benefitsは前段階のKnowledgeにない情報のため、回答が得られませんでした。
追加で情報をインプットするために、Manage Agent
をクリックします。
先ほど作成したAskBenefits
エージェントをクリックします。
前段階と同様、Toolsetのadd agent
をクリックします。
冒頭での前提の通り、事前に追加のファイルは手元にあることを想定し、Add from local instance
をクリックします。
事前に用意されているAskDental
エージェントをチェックし、Add to agent
をクリックします。
エージェントが追加されたことを確認し、Deploy
をクリックします。
最後に、再度Can you describe my Dental benefits?
と質問をすると、新しく追加したエージェントから情報を引き出し、しっかり回答が戻ってくることがわかります。
このようにwatsonx Orchestrateを利用することで、一般的に時間や手間がかかるファインチューニングの作業がたださまざまなエージェントを追加するだけの作業となるため非常に楽になります。また、エージェントを追加して適用するまでの時間もほぼリアルタイムで実現できましたので、一度試していただけたらと思います。