2017年07月

28

【Watson基礎】ビジネスに活かせる「AI」「ディープラーニング」とは?

座談会:画像認識だけじゃない!ディープラーニングの「使いどころ」とは?

 

AI、ディープラーニングが注目を集めているが、AI のビジネス活用は、「何ができるのか」から、具体的に「何をするか」という実践のフェーズに入ってきた。とはいえ、多くの企業は必要性は感じつつも、「使いどころ」が明確にイメージできていないのが現状だろう。

そこで今回は「ディープラーニング」にフォーカスし、日本IBM の ITスペシャリストの藤岡 英典 氏、頼 伊汝(らい・いる)氏とエヌアイシー・パートナーズの久田 修央 氏に、ビジネスのユースケースや活用のポイントについて聞いてみた。

713Webinar_1
右から日本アイ・ビー・エム システムズ・ハードウェア事業本部 先進テクノロジー・センター 頼 伊汝氏、藤岡 英典氏、
エヌアイシー・パートナーズ 企画本部 企画推進部 久田 修央氏、ビジネス+IT編集部 松尾 慎司氏

ディープラーニングは「人間の認識レベル」を超えている

 

まず、AI の現状について、企業における認識の変化などで感じることを教えてください。

藤岡氏我々がお客さま先に訪問して感じるのは、「AI で何ができるのか」「何に使えるのか」がまだ明確になっていないケースです。AI は注目されているものの、自社の業務にすぐに活用できるというイメージを持っている企業はまだまだ多くないと感じます。

久田氏AI という言葉が社会に浸透してきて、企業は取り組む必要性を感じています。一方で、高かった期待値の反動というか、「自分たちに今できることは何か」を冷静に見極めようと考える企業が多いように感じます。

では、AI で何ができるのかについて、改めて現状を整理してください。

頼氏人工知能は「汎用型人工知能」と「特化型人工知能」に分かれます。汎用型は、人と同じような知能を備えた人工知能で、残念ながらこれはまだ実現できていません。 一方、特化型は、ある特定の領域、分野において人間より優れた知能を持ったテクノロジーのことです。コンピューター囲碁や将棋、自動運転、画像認識といった先端事例を目にする方も多いでしょう。 ルールが決まっている、プログラミングできる特定の領域で、大量のデータを学習することで、人間よりも高いパフォーマンスで正解を導き出そうというテクノロジーといえます。

AI というと、テクノロジーの変化が早く、また、マーケットにはさまざまな用語が飛び交い、そこが混乱を招いている側面もあります。そのあたりを整理していただけますか。

頼氏人工知能は、1960 年代に提唱され、人間の知能を再現するためのソフトウェアや、ロボティクスなども含む幅広い学問の分野です。その中の 1 つのテクノロジーが機械学習。これは大量のデータからパターンをみつけて、未来を予測していくものです。そして、機械学習の 1 つの手法がディープラーニングで「IBM Watson」(Watson)は、機械学習とディープラーニングの双方にまたがっています。

AI 関連の用語の整理
713Webinar_2

Watson は PaaS としての「IBM Bluemix」上で動作し、自然言語処理、画像認識などの技術を用いて、様々な機能を API として提供しています。ディープラーニングは Watson の基礎技術の 1 つです。 

ディープラーニングについて、もう少し詳しく教えてください。

藤岡氏次の写真を見て欲しいのですが、この中で、写っているのが「唐揚げ」でないのはどれだか分かりますか?

唐揚げでないのはどれか?
713Webinar_3

ぱっと見たところでは難しいですね。どれも唐揚げに見えます。

藤岡氏実は、唐揚げでないのは2なのです。写っているのは犬(トイプードル)ですが、このように人が誤認識してしまうかもしれない画像を、正しく認識できることが期待されています。

最先端の画像認識技術を競う世界的なコンテストがありますが、2011 年までは、画像認識のアルゴリズムは機械学習のロジックを用いるのが主流で、誤認識率は 25 % あたりが限界値だと思われていました。

これが、2012 年のコンテストでディープラーニングが登場し、一気に 15 % くらいまで、誤認識率が 10 % ほど改善したのです。その後、さらにテクノロジーが洗練され、2015 年の段階で、誤認識率は 5 % 未満に達しました。

人間の誤認識率は平均で 5 % といわれます。すでにディープラーニングは人間の認識レベルを超えるところまで進化しているのです。

AI のがそう認識率は人間を越えている
713Webinar_4

 

すでに製造業の工場や、サービス業などでディープラーニングの活用事例が出てきた

 

では、実際に、ディープラーニングで何ができるのか、もう少し詳しく教えてください。

藤岡氏AI のゴールは「人間の知能の代わりになること」にあり、特に、知覚、ビジュアルに関する領域でユースケースが広がってきています。たとえば、画像や映像の中に何が映っているかを検出し、それをカテゴリー分けする技術などがあります。

人が物体を見て「何か」を認識、判断するプロセスは、それまで経験してきた膨大なデータ(記憶)から照らし合わせて判断しています。これが 1 つの学習です。AI も同じで、膨大な画像データから、ものの色や大きさ、形状などさまざまな要素を照合し、「これが リンゴ である」と区別しています。

また、画像の一部が欠損している場合に、人間は頭の中で「そこに何が写っているか」を補うことができますが、機械も同じようなことができます。

そうしたことが実現できると、どんなメリットがあるのですか。

藤岡氏これまでの機械学習は、たとえば、「目が 2 つあって鼻と口があるのは人間ですよ」というように、正解(特徴)を人間が定義する必要がありました。正解を人が機械に教える必要があるという意味で、これを「教師あり学習」といいます。ディープラーニングはそれをしないで、人工知能自身が記憶を洗練させていくことができる特徴があります。

頼氏これまでの機械学習とディープラーニングの大きな違いは、扱えるデータ量です。従来の機械学習な得意な領域は数値データ。たとえば、小売店でこういう商品が売れた、その傾向から、このお客さまにはこの商品も売れるのではないか、と予測することです。

過去のデータから予測するので、入力する特徴量がシンプルなのです。

一方、ディープラーニングは、画像や音声、テキストといった非構造化データを扱うことが得意です。たとえば、画像は同じ犬の写真でも、複雑で、1 つとして同じ画像がありません。そうしたデータから正解を予測するのは難しく、上述した通り、これまでは誤認識率が高かったのです。

ディープラーニングにより、煩雑なデータに対しても、高い正解率が期待できるようになりました。

では、実際の事例について教えてください。

頼氏画像認識については、ディープラーニングを用い、半導体などの製造ラインで、傷やゴミ、汚れなどを判別し、不良品を検出する事例や、工場に限らず、高層ビルやダムなど、人が立ち入りにくい場所にある構造物のひび割れなども、ドローンなどと組み合わせることで、より高精度で効率よく検出できるような事例が出てきています。

実際に、国内企業でディープラーニングの取り組みは進んでいるのですか?

藤岡氏国内でも徐々に事例が出てきました。ある損保企業では、自動車保険を乗り換える顧客が保有するさまざまな保険証、車検証などを画像データでもらい、色んな会社の書式をディープラーニングで学習することで、契約時の手入力を省力化する業務効率化のツールとして活用しています。

別の会社では、人の視覚を肩代わりして、熟練したエンジニアの作業を代わりに行うとか、熟練エンジニアの作業を学んで、スキル移転のツールに使うといった事例もあります。

企業にディープラーニング活用を提案する立場として感じることはありますか?

久田氏ディープラーニングには大きな可能性を感じます。今は代表的な分野として画像認識に注目が集まっていますが、ビッグデータの時代に、データの組み合わせで色々な発想、可能性が広がってくるでしょう。

ユーザー企業に提案する立場としては、お客さまのビジネスに今、何が求められているかを考えることが、AI のユースケースを広げていくことにつながると考えます。

導入には「正しい教師データ」が不可欠。ハードウェアの整備とあわせて進めたい。

では、企業がAI活用をうまく進めていくためのポイントはどこにありますか?

頼氏正しい教師データがあるかどうかがポイントです。一般的な数値データであれば、既存の機械学習の手法で、いいスコアが出ることが期待できます。しかし、ディープラーニングは、先のクイズの”唐揚げ”のような画像や動画といったこれまで分析対象ではなかった非構造化データが必要です。

教師データを整備するには、大量の非構造化データをどう溜め、整理するかという課題もあります。

頼氏分析の精度に関わるのはデータ量で、画像であれば枚数が多ければ多いほどよいです。

久田氏そう考えると、データを溜める「器」が重要で、サーバやストレージといったデータセンターの整備が欠かせません。

ディープラーニングを取り入れるに際して、導入ステップというか、環境作りをどう進めるかを教えてください。

頼氏サーバやストレージの他にはポイントは 3 つ あります。 1 つ は「GPU マシン」で、ビッグデータ解析が可能なコンピューティングパワーが必要です。

2 つ目は「フレームワーク」。ここでいう「フレームワーク」とは、ディープラーニングの分析モデルをパーツ化したもので、これを組み合わせる知識が必要です。そして、3 つ目はそのための「プログラミング」スキルです。

最近は、サービス化されたフレームワークも出てきており、分析モデルを指定してデータを投入すれば、学習結果を出力してくれるサービスが出てきています。その意味で、昔に比べると非常に環境構築はやりやすくなりました。

とはいえ、導入のハードルはかなり高いように感じます。

藤岡氏IBM では、上述したフレームワークを使いこなせるスキルがなくても、画像を入れれば学習結果を返してくれるサービスを開発しています。これが、ノンプログラミングで、既成の学習パターンで学習してくれるサービス「AI Vision」です。これは「データの準備」「モデルの作成」「モデルの学習」「モデルの利用」の 4 ステップで活用できます。

今はディープラーニングも簡単に活用できる!
713Webinar_5

画像をアップロードして、学習モデル(例えば、鳥の画像を分類するというような「タスク内容」)を作成すれば、学習結果が得られ、さらにそれを API として利用できるようになるものです。 API は Web で広く使われているREST API に対応しており、例えば、モバイルアプリと連携することも可能です。

ハードウェアのコスト感はどの程度でしょうか?

藤岡氏IBM では、GPU を積んだディープラーニング専用のハードウェアを推奨しており、ディープラーニング用のサーバとして「Minsky」を用意しています。

ディープラーニング用のサーバー「Minsky」
713Webinar_6

GPU を搭載し、画像等のデータを大量に処理する場合に、GPU と RAM の通信を高速化する「NVLink」に対応しています。提供価格 400 万円からで、Minsky と相性のいいストレージ」「ESS (Elastic Storage Server)」を組み合わせれば、並列に分散処理を行う環境を構築することもできます。

「Minsky」と相性の良いストレージ
713Webinar_7

最後に、今後、AIやディープラーニングはどう進化していくと思いますか?

藤岡氏画像以外の領域としては、IoT のセンサーデータから機器のメンテナンスタイミングを予測する予兆分析などにディープラーニングが活用されるようになるでしょう。

あるいは、音声データから文章を要約、テキストを自動生成することや、広告のキャッチコピーを学習して、コピー文案を考えるといった領域での活用が期待されます。

頼氏これまではロボティクスと AI を結びつけるのは難しいことでした。今後は、例えばディープラーニングの画像認識でモノを認識し、そのモノにあったつかみ方を判断することで、ロボットアームが最適なピッキングをする、というように、AI が現実世界に対してインタラクションするケースが増えてくるでしょう。

久田氏こうした先端事例が増えていく中で、まずは「AI Vision」のように、お客さまにはディープラーニングに実際に触れる体験をしていただき、弊社でも新しい技術、製品に習熟していくことで、パートナーと一緒に、お客さまのビジネスに最適な提案、ユースケースを考えていきたいです。

 

本日は、貴重なお話をありがとうございました。

 


当セミナーの”動画”は、以下にて公開中です。あわせてご視聴ください。

[ダイジェスト動画公開] 7月13日【NI+C P主催】Webセミナー「Watson の基礎技術 今のビジネスに活かせる AI / ディープラーニング とは?」 ~ 繰り返しますが”今”です ~

[動画・資料公開]7月13日【NI+C P主催】「Watson の基礎技術 今のビジネスに活かせる AI / ディープラーニングとは?」~ 繰り返しますが”今”です ~(MERITひろば)
※ビジネスパートナー専用サイト(MERITひろば)のコンテンツです。ログイン or  新規会員登録が必要となります。

 

ご参考情報

◆製品発表情報
【新製品発表】 HPC 用 Linux モデルIBM Power System S822LC (8335-GTB)
◆技術情報
“Minsky” POWER8 NVLink Server (日本情報通信株式会社サイト)

その他の記事

2025年12月25日

“AI を学習用ではなく事業の現場に馴染ませる”
本格的なAI時代に誕生したIBM Power11の覚悟とは?

公開日:2025-12-25 本格的なAI時代の到来で、企業にとってIT基盤の存在感はこれまで以上に重みを増しています。IBM Power11は、そうした時代の要請に応えるべく誕生した真のエンタープライズ・サーバーです。堅牢な信頼性と高い処理性能に加え、外付けカードIBM Spyre Acceleratorによって、地に足がついたAIワークロードをすぐに実装できる実用性を備えるに至っています。既に先行ユーザーは、大きな業務効率化の効果を体感しており、このサーバーは単なるハードウェアを超えて、次世代の標準基盤となる期待を集めています。 今回は、日本アイ・ビー・エム(以下、IBM)テクノロジー事業本部 Powerテクニカル・セールス部長 釘井 睦和 氏をお迎えし、AI時代をリードするべくして誕生したIBM Power11の“覚悟”について伺いました。 出席者 ゲスト 日本アイ・ビー・エム株式会社テクノロジー事業本部Powerテクニカル・セールス部長釘井 睦和 氏 インタビュアー エヌアイシー・パートナーズ株式会社技術企画本部テクニカル・サポート部部長 広橋 稔 本格的なAI時代の到来で、さらに重みの増すIT基盤 広橋: 経営とITが不可分となった今日、企業のお客様が直面している課題としてどのようなものがあると考えておられますか。 釘井氏: 本格的にAIの時代が到来したことが非常に大きいと思います。企業競争力の維持を図る上で、もはや、AI活用を抜きに戦略を立てられないというところまで来ています。実践段階に入ってきたこともあり、アナリスト機関IDCによれば、これからはAIエージェントが自らアプリケーションを書くようになると予測されています。その結果、アプリケーションの数は爆発的に増加し、今後10億もの新しいアプリケーションが出現すると予測され、そのうち3分の1はAIによって開発される見込みです。こうなってくると、アプリケーションを支えるインフラは、これまでにないスピードと規模でアプリケーション増加への対応と高い可用性を求められます。計画停止すら許されないミッションクリティカルな業務が増えていくことでしょう。そのような世界では、油断をするとシステムのサイロ化やデータ爆発も起きやすくなるため、その対策も必要です。 その一方で、ランサムウェア攻撃を筆頭に、セキュリティリスクも劇的に高まっており、対策強化も喫緊の課題です。だからといって、ITばかりに予算を使うわけにはいきませんから、そこはコスト最適化を図る目線も要求されます。さらに、少子高齢化社会の進行で、IT人材も確保しづらい状況が続いているため、より少ない人員でより多くのことをカバーできるかといった観点での運用効率化も恒常的なテーマとなっています。つまり、今日の企業が対峙している課題は文字どおり山積しているといえます。 広橋: 確かに、日ごろパートナー企業やエンドユーザー企業のお悩みを聞く中で、こうしたお話はよく伺います。特にAI活用については、意欲を持ちつつも、プレッシャーも感じておられるようです。 AI時代のニーズに応える真のエンタープライズ・サーバー 釘井氏: こうした中、今年登場したIBM Power11は、本格的なAI時代のニーズに応える、真のエンタープライズ・サーバーとして位置づけられています。このサーバーは、単なるハードウェアを超えたまさに“企業の中枢を支える基盤”として設計されており、Powerとして従来から定評のある堅牢性と可用性をさらに進化させつつ、計画停止をほぼ不要とする自律的な運用機能や強靭なセキュリティを標準装備しました。また、最新のDDR5メモリと強化されたI/Oアーキテクチャにより、高負荷のトランザクション処理や大規模データ解析なども余裕を持ってこなすとともに、AI推論も得意とします。IBM Power11は、企業がAI時代に向けて加速できるようIBMが考え抜いたフルスタックのイノベーションです。 広橋: IBM Power11を特徴づけるキーワードをいくつか挙げていただけますか。 釘井氏: 一つは、「0」(ゼロ)です。これは、エンドツーエンドの自動化を実現し、計画的なダウンタイムを0にする、つまり、無停止運転を可能にすることを意味します。 従来はメンテナンスウィンドウを設けて実施していたファームウェア更新、I/Oアダプタ更新、仮想化ソフトウェア更新などを、IBM Power 11ではAutomated Platform Maintenance(APM、プラットフォーム自動保守)機能として、管理コンソールであるIBM Hardware Management Console(HMC)からワンクリックまたは準自動で実行可能です。環境をチェックする更新前準備、パッチ配布、ワークロードの退避・復帰を一連のフローで自動化できるため、停止せずに更新できるというわけです。 また、運用データを横断的に集約し、watsonxですぐに実行できる提案と自動化を結びつける、アプリケーション運用向けのAIオートメーション基盤 IBM Concertがあります。Concert for Powerでは、Powerインフラの脆弱性を検出して、現行バージョンに照らして優先度をAI算定、その後に推奨手順を提示し、必要に応じて更新をゼロ計画停止で実行するところまで担います。ここでいう実行とは、HMC/PowerVMが担う処理をConcertが呼び出して一気通貫に自動実行することを意味しています。 広橋: サーバー停止は業務に支障を及ぼしかねず、利用部門や経営層からの圧力も大きいため、情報システム部門としてはなるべく回避したい運用ですから、安定して動き続けてくれるならそれに越したことはないですね。 釘井氏: はい。もう1つのキーワードは「

2025年12月24日

【イベントレポート】Automation テクニカルワークショップ第一回 開催しました

公開日:2025-12-24 こんにちは。てくさぽBLOGメンバーの和田です。 2025年11月26日に「Automation テクニカルワークショップ」第一回を開催しました。 本ワークショップは、2025年7月および9月に実施した「watsonx Orchestrate ハンズオンセミナー」に続く取り組みとして、IBM Automation製品群の中で弊社が注力しているAIOpsソリューションを中心に企画検討し、利用イメージがつきやすいInstanaのハンズオンを実施しました。 ハンズオンだけでなくワークショップ形式でのセッションを通じて、ITシステム運用の現場で直面する課題をどのように解決できるのか、Instanaを活用した具体的な方法を参加者同士が議論しました。また、セッションの最後には各チームごとに成果を発表・共有する場を設け、Instanaに対する理解を深めるとともに、参加者間の交流を促進することを目的としました。 本ブログでは、このテクニカルワークショップの内容について簡単にご紹介いたします。 目次 ワークショップアジェンダ Instana概要 Instanaハンズオン グループワーク まとめ お問い合わせ ワークショップアジェンダ ワークショップのアジェンダについては以下の通り実施いたしました。 IBM AIOpsソリューション概要 Instana 座学 Instana ハンズオン Instana最新情報 グループワーク IBM AIOpsソリューション概要では、IBMが取り揃えているAIOpsソリューションのラインナップと利用シーンをご紹介し、その中でもお客様のROIが高いお勧めのソリューションをピックアップしてご紹介しました。 また、Instana最新情報ではIBM様にご登壇いただき、DBMarlinとの連携やAIでの監視支援、LLMのトークン数を収集できる機能など最新アップデート情報をご紹介いただきました。 Instana概要 Instanaについては過去にこちらの記事でご説明しております。 今回はInstanaのAgentを導入することからハンズオンで実施しますので、Instana Agentがどのようにデータを収集するかについてご説明します。 InstanaはAgentのセンサー機能が監視対象を自動検出してデータ収集します。 Agent自体がセンサー機能を持っているわけではなく、Agentインストール後にセンサー機能をインストールし、そのセンサー機能で各コンポーネントを検出しデータを収集しています。 Instana Agentは収集したデータをInstana バックエンド(SaaSもしくは自己ホスト)に送信します。   Instanaハンズオン Instana Agentの導入からInstanaでの情報確認、障害発生時のエラー発生箇所確認をハンズオンで体験頂きました。 実施内容 環境の説明/ログイン Instana Agentのインストール インフラストラクチャー情報確認 アプリケーション設定/アプリケーション情報確認 アラートチャネル作成/アラート設定 障害注入/エラー発生箇所確認   今回のハンズオンではサンプルアプリケーションを導入してあるサーバーを参加人数分ご用意したので、参加者の方々全員がInstana Agentの導入を体験いただけました。 ハンズオンではInstana Agentの導入を行うためCLIでサーバーにログインいただきました。 普段CLIを利用されないかたもいらっしゃったのでログインに苦戦された方もいましたが、AgentのインストールはLinuxの場合ワンライナーで導入できるため、Agent導入はスムーズに行えてました。 実際にAgent導入したサーバの情報やアプリケーションの情報をみていただくことで、Instanaではどういった情報が表示されるのか、どういった操作感なのかを体験していただけました。 また、サンプルアプリケーションにエラーを発生させるスクリプトもご用意しましたので、実際にエラーが起きた場合正常時と比較しどのように見えるか、アラート設定をした場合、どのような通知がくるのかを体験いただきました。 その他のハンズオンについて詳しく知りたい方は、ブログの最後に記載している「お問い合わせ」までお気軽にご連絡ください。 グループワーク 今回、ハンズオンだけでなくITシステム運用の現場における課題を洗い出し、それらの課題を解決する手段としてInstanaがどう使えるかという観点でチームに分かれてグループワークを行いました。 1チーム4,5人の合計3チームに分かれてNI+C Pメンバーがファシリテートしながらアイディア出し・ディスカッションを行いました。 当日上がった課題及びInstanaを活用することで改善できることをいくつかピックアップします。 運用の属人化がおきている 障害原因の特定までをInstanaがガイドしてくれるためどんな人でも対応できる ログの分析に時間がかかる Instanaの画面上でログの確認・分析ができるため時間短縮できる ご参加して頂いたパートナー様が携わっていらっしゃる業務や、業務の経験年数が異なることより多様な意見が出ておりました。 アドバイザーで参加いただいたIBM様も含め、各チーム貴重な意見交換をできるグループワークとなりました。 グループワークの感想について、「他の会社の意見が聞けてよかった」や、「Instanaを利用するシーンがより理解できた」といったような意見をいただきました。 まとめ このたび、Automation製品に関する初めてのワークショップを無事に開催することができ、安堵しております。 ご参加いただいた皆様からのアンケートでは、「はじめてInstanaに触れましたが、実際に障害が発生した際の挙動を見ることができたうえ、他社の方々との交流や意見交換の機会もあり、大変有意義な時間となりました」とのご意見をいただきました。このようなお声をいただけたことで、準備を重ねてきた甲斐があったと感じ、心より嬉しく思っております。 今後も、製品を実際に体験いただけるハンズオンや、参加者同士が交流・情報共有を行えるワークショップを継続的に開催してまいります。ご興味ある方は是非ご参加いただけますと幸いです。 また、「こんなことをやってほしい」「この製品を使ったワークショップをお願いしたい」といったご要望がございましたら、ぜひお気軽にお聞かせください。 お問い合わせ この記事に関するご質問は以下の宛先までご連絡ください。 エヌアイシー・パートナーズ株式会社 技術企画本部 E-mail:nicp_support@NIandC.co.jp   .bigger { font-size: larger; } .highlighter { background: linear-gradient(transparent 50%, #ffff52 90% 90%, transparent 90%); } .anchor{ display: block; margin-top:-20px; padding-top:40px; } .btn_A{ height:30px; } .btn_A a{ display:block; width:100%; height:100%; text-decoration: none; background:#eb6100; text-align:center; border:1px solid #FFFFFF; color:#FFFFFF; font-size:16px; border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; box-shadow:0px 0px 0px 4px #eb6100; transition: all 0.5s ease; } .btn_A a:hover{ background:#f56500; color:#999999; margin-left:0px; margin-top:0px; box-shadow:0px 0px 0px 4px #f56500; } .table { border-collapse: collapse; border-spacing: 0; width: 100%; } .td { padding: 10px; vertical-align: top; line-height: 1.5; } .tbody tr td:first-child { font-weight: bold; width: 20%; } .tbody tr td:last-child { width: 80%; } .ul { margin: 0 !important; padding: 0 0 0 20px !important; } .ol { margin: 0 !important; padding: 0 0 0 20px !important; } .tr { height: auto; } .table { margin: 0; } *, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; } .html { -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 62.5%; } .btn, a.btn, button.btn { font-size: 1.6rem; font-weight: 700; line-height: 1.5; position: relative; display: inline-block; padding: 1rem 4rem; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: all 0.3s; transition: all 0.3s; text-align: center; vertical-align: middle; text-decoration: none; letter-spacing: 0.1em; color: #212529; border-radius: 0.5rem; } a.btn--orange { color: #fff; background-color: #eb6100; border-bottom: 5px solid #b84c00; } a.btn--orange:hover { margin-top: 3px; color: #fff; background: #f56500; border-bottom: 2px solid #b84c00; } a.btn--shadow { -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3); box-shadow: 0 3px 5px rgba(0, 0, 0, .3); }

2025年12月24日

【てくさぽBLOG】IBM watsonx OrchestrateでAIエージェント開発してみた(Part1)

こんにちは。てくさぽBLOGメンバーの高村です。 8月は「【てくさぽBLOG】IBM watsonx OrchestrateのADKを使ってみた」でADKの操作感や感想をご紹介しました。今回は、2025年6月のアップデート後のwatsonx OrchestrateのUIからエージェントを開発し、操作感や感想を2回に分けてご紹介いたします。なお、Part2ではエージェントのデモ動画もご紹介する予定ですのでぜひご期待ください! 目次 はじめに サンプルエージェントのシナリオ サンプルエージェント開発 さいごに お問い合わせ はじめに 6月のアップデートで、watsonx Orchestrateはメニュー構成・操作方法・機能名称が変更されました。例えば、従来「Skill」と呼ばれていたものが「Tool」に変更されています。Toolとは、AIエージェントが呼び出して実行するアクションの部品と考えて頂ければと思います。ユーザーがチャットへ自然言語で問い合わせると、AIエージェントは内容に応じて適切なツールを選択して実行します。これにより、生成AIによる要約や抽出などのテキスト処理だけでなく、外部システムやサービスと連携した処理も行うことができます。 その他の変更点については、「【イベントレポート】watsonx Orchestrate テクニカルワークショップ第一回 開催しました」内でもご紹介していますのをご参照ください。 サンプルエージェントのシナリオ サンプルエージェントのシナリオは、企画担当者が在庫商品を参照し、在庫情報に基づいて顧客へキャンペーンメールを送信する作業を想定しています。 通常は、担当者が在庫情報を確認するためにデータベースへログインし、目視でキャンペーン対象商品を選定したうえでメールの文面を作成することが想定されます。キャンペーンメール送信対象はSFAなどのシステムで確認し、メールツールを利用して送信します。振り返ると、データベース・SFA・メールツールと複数のシステムを利用し、対象商品の選定やメール内容を人力で考える必要があるため、作業は煩雑で時間と労力を要します。 watsonx Orchestrateを導入すると、AIエージェントが在庫情報と顧客情報の取得し、在庫の多い商品のキャンペーンメール文面をAIが作成し、メールの作成・送信までを一気通貫で実行することが可能です。 サンプルエージェントの開発 それではサンプルエージェントを開発します。開発ではIBM Cloud 上の watsonx Orchestrate、メールツール(Brevoに弊社アカウントを紐づけて利用)、SFA の Salesforce(弊社 Sandbox 環境)を利用します。 本記事Part1では図のピンクで囲った部分「Salesforceから顧客情報を取得」と「在庫情報の取得」をご紹介いたします。 watsonx Orchestrateへログイン・環境のご紹介 watsonx Orchestrateへのログイン方法は「【てくさぽBLOG】IBM watsonx Orchestrateを使ってみた(Part1)」をご参照ください。ログインすると下記のチャット画面に入ります。作成したAIエージェントをデプロイすると、このチャット画面から問い合わせをすることができます。 左上のメニューバーをクリックします。一番上の「Chat」をクリックすると前述のチャットインターフェース画面に遷移します。「Discover」をクリックするとwatsonx Orchestrateに事前定義されたエージェントやツールのカタログをみることができます。 「Discover」内の事前定義エージェント、ツールを簡単にご紹介します。TypeをAgentsに絞ります。事前定義エージェントとは、特定のシステムとの接続が定義されたエージェントが提供されており、環境接続設定を行うとすぐ利用することが可能です。(watsonx Orchestrateのプランによっては追加費用がかかるエージェントがございます。) TypeをToolsに絞ると特定システムで利用できるツールが提供されています。下記画面はSalesforceで利用できる事前定義ツールの一覧です。今回はSalesforceから顧客情報を取得するため「List accounts in Salesforce」と「List contacts in Salesforce」のツールを使用します。ツールの機能は下記になります。 List accounts in Salesforce:ユーザーの入力に基づき、Salesforceからアカウント情報を表示 List contacts in Salesforce:ユーザーの入力に基づき、Salesforce からアカウントの連絡先を表示 Salesforceとの接続設定 Salesforceの事前定義ツールを用いてエージェントが顧客情報を取得できるようにするため、はじめにSalesforceとの接続設定を行います。 1. Salesforce側設定(コンシュマー鍵と秘密鍵の生成) Salesforceへログインし、設定>外部クライアントアプリケーション>外部クライアントアプリケーションマネージャーをクリックします。コールバックURLは「https://ご使用リージョン/mfe_connectors/api/v1/agentic/oauth/_callback」と設定します。OAuth範囲は下記画面の通りを設定します。 コンシュマー鍵と秘密鍵をクリックし、生成されたコンシュマー鍵と秘密鍵をメモをしておきます。Salesforceの設定は以上です。 2. watsonx Orchestrate側設定(接続設定と接続確認) watsonx OrchestrateのメニューからManage>Connectionsをクリックします。 接続設定の一覧が表示されるのでSalesforceを探し、鉛筆マークをクリックします。 下記画面が表示されます。Draft環境、Live環境と環境を分けて設定することができます。今回はDraftで設定します。各項目には以下を値を入力します。 Server URL:Salesforce環境のURL TokenURL:Salesforce環境のURL/services/oauth2/token Authorization URL:Salesforce環境のURL/services/oauth2/authorize ClientID:Salesforceで取得したコンシュマー鍵 Client Secret:Salesforceで取得した秘密鍵 下にスクロールし、Credential typeを選択します。Member credentialsにするとユーザーは個人の認証情報を使用してアプリケーションにアクセスできます。ここではTeam credentialsにし、チームメンバーが資格情報を使用してアプリケーションにアクセスできるようにします。最後にConnectをクリックします。 Webブラウザが開き、Salesforceのログイン画面が表示されます。ユーザ名、パスワードを入力してログインします。 watsonx Orchestrateの画面に戻り、Connectedとなっていることを確認しSaveします。 下記の様にConnectされている状態で緑のチェックがついていることを確認します。 Salesforceとwatsonx Orchestrateの接続設定は完了です。 Salesforceの事前定義ツール構成 それではエージェントを作成し、Salesforceから顧客情報を呼び出すツールをエージェントに構成していきます。 メニューのBuildをクリックします。 Create agent +をクリックしてエージェント作成画面に入ります。 Nameには任意のエージェント名、Decriptionはエージェントの説明を入力します。最後にCreateをクリックします。 下記画面が表示されます。エージェントが使用するモデルを選択します。2025年12月時点はllama-3-2-90b-vision-instruct(Default)、llama-3-405b-instruct、GPT-OSS 120B-OpenAI(via Groq)が利用できます。Agent Development Kitからは外部のLLMを紐づけることも可能です。弊社環境はgpt-oss-120bを紐づけています。今回はGPT-OSS 120B-OpenAI(via Groq)を指定します。 下にスクロールします。Welcomeメッセージとクイックスタートプロンプトを設定することができます。今回はデフォルトのままにします。 Agent Styleを設定することができます。Agent styleとはユーザの要求に対してどのように理解、決定、タスクを完了するか定義するものです。現在は DefaultとReActの2種類から選択することができます。今回はDefaultを指定します。 なお、Voice modalityではユーザとのコミュニケーションに音声を利用することができますが、今回は利用しません。 KnowledgeはエージェントでRAGを実装することができます。後程設定します。 エージェントが使用するツールを設定します。Toolset欄のAdd tool+をクリックします。 以下画面が表示されるのでCatalogをクリックします。 Appsの中からSalesforceにチェックを入れます。右側にエージェントが使用できるSalesforceのツール一覧が表示されます。 List accounts in Salesforceを選択しAdd to agentをクリックします。同様にList contacts in Salesforceも追加します。 Toolsetの画面に戻ると以下の様にツールが登録されています。 Behaviorのセクションまで下にスクロールします。Behaviorではエージェントがユーザの要求に対してどのように反応し、応答するか振る舞いを定義します。以下のように振る舞いを定義します。 ここまで設定したところでエージェントの動きを確認します。検証ではデプロイはせず右画面のPreviewから確認したいと思います。 チャットに「アカウントリストを教えて」と入力します。しばらくするとエージェントが登録したList accounts in Salesforceを使用してSalesforceからアカウント情報を取得、回答してくれました。(企業名は検証用に疑似的に作成しています) 次に担当者の連絡先を知りたいので、チャットへ「D&Gソリューションのコンタクトリストを表示して」と問い合わせます。しばらくすると、エージェントが指定した企業名をキーに「List contacts in Salesforce」を実行し、担当者名と連絡先を回答してくれました。このように、ツール自体はSalesforceからアカウント情報やコンタクトリストを取得する機能ですが、チャットで指定した企業名をキーとして、エージェントが絞り込んで回答することができます。 Salesforceの事前定義ツールの構成は完了です。 Knowledgeの構成 エージェントが在庫データから情報検索できるようにKnowledgeを構成します。2025年12月時点、構成できるデータソースはwatsonx.dataのMilvus、Elasticserch、AstraDB、カスタムサービス、watsonx Orchestrateへ直接アップロードの6つです。ここではサンプルのCSVファイルを用意し、直接watsonx Orchestrateへアップロードします。 Knowledgeセクションまでスクロールし、Add source +をクリックします。 New knowledgeをクリックします。 Select sourceからUpload filesを選択してNextをクリックします。 CSVファイルをドラッグアンドドロップしてNextをクリックします。 NameにはKnowledgeの任意の名前を、Descriptionにはユーザーからどのような要求でKnowledgeを使用するかを入力します。最後にSaveをクリックします。 下記画面の通り、Knowledgeが作成されました。 PreviewからエージェントがKnowledgeを使用して回答できるか確認します。チャットから「在庫情報を表形式で回答して」と問い合わせると下記画面のようにKnowledgeのCSVファイルデータを参照して表形式で回答されました。 矢印をプルダウンすると参照先を確認することができます。 行数が多いため、「在庫の多い上位5件を表形式で回答して」と問い合わせます。しばらくすると数量の多い上位5件の商品を表形式で回答してくれました。在庫一覧の提示だけでなく、ユーザーの要求から、情報を絞り込んだ回答も可能であることが確認できました。 Knowledgeの構成は完了です。 さいごに Part1ではAIエージェントを作成し、Salesforce環境へ接続して事前定義ツールを用いて顧客情報を取得。さらに、在庫データをKnowledgeに構成してRAGを実装しました。 今回はSalesforceの事前定義ツールとして「List accounts in Salesforce」と「List contacts in Salesforce」を構成しました。各ツールはアカウントやコンタクト情報をリストする機能ですが、List accountsの結果をAIが受け取り、ユーザーが特定の企業を指定すると、その企業のコンタクト情報を回答できることが確認できました。また、Knowledgeでは在庫データを表形式で提示するだけでなく、在庫の多い上位5件の抽出などの絞り込みも可能で、エージェント的な振る舞いを確認できました。 Part 2では、在庫の多い商品を基にAIがキャンペーンメールを作成し、コンタクト宛に送信する機能をエージェントへ実装したいと思います! お問い合わせ この記事に関するご質問は以下の宛先までご連絡ください。 エヌアイシー・パートナーズ株式会社 技術企画本部 E-mail:nicp_support@NIandC.co.jp     .bigger { font-size: larger; } .highlighter { background: linear-gradient(transparent 50%, #ffff52 90% 90%, transparent 90%); } .anchor{ display: block; margin-top:-20px; padding-top:40px; } .btn_A{ height:30px; } .btn_A a{ display:block; width:100%; height:100%; text-decoration: none; background:#eb6100; text-align:center; border:1px solid #FFFFFF; color:#FFFFFF; font-size:16px; border-radius:50px; -webkit-border-radius:50px; -moz-border-radius:50px; box-shadow:0px 0px 0px 4px #eb6100; transition: all 0.5s ease; } .btn_A a:hover{ background:#f56500; color:#999999; margin-left:0px; margin-top:0px; box-shadow:0px 0px 0px 4px #f56500; } .table { border-collapse: collapse; border-spacing: 0; width: 100%; } .td { padding: 10px; vertical-align: top; line-height: 1.5; } .tbody tr td:first-child { font-weight: bold; width: 20%; } .tbody tr td:last-child { width: 80%; } .ul { margin: 0 !important; padding: 0 0 0 20px !important; } .ol { margin: 0 !important; padding: 0 0 0 20px !important; } .tr { height: auto; } .table { margin: 0; } *, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; } .html { -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 62.5%; } .btn, a.btn, button.btn { font-size: 1.6rem; font-weight: 700; line-height: 1.5; position: relative; display: inline-block; padding: 1rem 4rem; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-transition: all 0.3s; transition: all 0.3s; text-align: center; vertical-align: middle; text-decoration: none; letter-spacing: 0.1em; color: #212529; border-radius: 0.5rem; } a.btn--orange { color: #fff; background-color: #eb6100; border-bottom: 5px solid #b84c00; } a.btn--orange:hover { margin-top: 3px; color: #fff; background: #f56500; border-bottom: 2px solid #b84c00; } a.btn--shadow { -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3); box-shadow: 0 3px 5px rgba(0, 0, 0, .3); }

back to top