2023年12月

26

「watsonx」が切り拓くAIの新時代

生成AI の利用や導入が進む中、日本でも業務効率化や生産性の向上、課題解決、成長につなげられるなど、様々なメリットをもたらす AI活用の重要性が認識されるようになってきました。

そこで今回は、生成AI の利用における現状と課題に対して有効な解決策となるエンタープライズ向けの AIモデルの利用サイクルにおいて、データの準備、モデルのチューニング、信頼性やパフォーマンス監視にいたる範囲をカバーする企業向けの AIモデル作成・運用プラットフォーム「IBM watsonx(ワトソンエックス)」を紹介します。

生成AIを取り巻く世の中の動向

ChatGPTの急速な広がり

OpenAI から2022年11月30日にリリースされた大規模言語モデル「ChatGPT」は、従来の大規模言語モデルよりも高度な会話を行うことができるその性能の高さから、全世界で「異次元のAI」として話題となりました。

リリース時の ChatGPT は GPT-3 および GPT-3.5 をベースとし、ユーザーが入力したテキストに AI が返答をするというシンプルなツールでしたが、それでも爆発的な勢いで世界中に普及し、リリースからわずか2ヵ月でユーザー数は1億人に到達しました。
改良版の GPT-4 は高度な論理的思考力を持ち、その精度の高さはアメリカの司法試験に合格できるレベルに達するとされているだけではなく、日本語をはじめとする多くの言語にも対応しており、GPT-3.5 を英語で利用する場合の精度を凌駕しています。

2023年11月に発表された GPT-4 Turbo では、従来の16倍となる300ページを超える長い文書を扱えるほかトークンの料金も引き下げられ、連携するソフトが作りやすくなっています。

ChatGPT の利用は日本でも急速に広がり、生成AI の驚異的な進化が、私たちの生活だけでなくビジネスの仕組みさえも変えようとしています。

AIはデータを燃料に競争優位性を確立するためのエンジン

大量のデータを学習することにより要約や分析、提案などの業務で高い能力を発揮する生成AI は、今後ビジネス予測や調整・問題解決・テクノロジーデザイン・プログラミングなど、分野を問わず様々なスキルに影響をおよぼすことが見込まれています。

経済産業省のデジタル時代の人材政策に関する検討会がまとめた「生成AI時代のDX推進に必要な人材・スキルの考え方(令和5年8月)」*1 では、以下の様に述べられています。
“ゴールドマン・サックスの調査によると、今後、米国の業務の 1/4 は AI により自動化される可能 性があると予測されている。また Access Partnership の調査によると、今後、日本の全労働 力のうち、約 70%の労働人口層が AI の影響を受けると予測されている”

これらの予測が示すように、企業視点で見る生成AI は DX推進を後押しするとともに企業全体の価値を高め、データを燃料に競争優位性を確立するためのエンジンとしてビジネスでの活用が期待されているのです。

Icon

*1「生成AI時代のDX推進に必要な人材・スキルの考え方(令和5年8月)」(経済産業省/デジタル時代の人材政策に関する検討会)

ダウンロード(PDF 0.2MB)

企業における生成AI活用の課題

大規模言語モデルは時に“嘘”をつく

ビジネス活用でも大きく期待されている生成AI ですが、解決しなければならない大きな課題があります。

その1つが、ChatGPT に代表される大規模言語モデル(LLM)が、時に幻覚を見ているかのようにもっともらしい “嘘” をつく(事実に基づかない情報を生成する)「生成AIの幻覚(ハルシネーション)」と呼ばれる現象です。

LLM は「言葉と言葉のつながり」を学習し、その学習結果に基づいてある単語に続く単語を確率として算出し、可能性が高い「つながりそうな」単語(正確には「トークン」と呼ばれる文字のつながりを細かく区切ったもの)を続けます。

この仕組みにおいては個々の単語が持つ意味は考慮されません。
そのため、LLM のハルシネーションが発生してしまいます。

これが、LLM の生成する回答の信頼性に「検証が必須」とされる理由でもあります。

生成AIのセキュリティ・コンプライアンスリスク

生成AI を企業が活用する上で解決しなければならない課題はもう1つあります。
それは「生成AI経由の情報漏えいリスク」です。

例えば、ChatGPT による情報漏えいリスクには「入力内容(機密情報)がAIの学習に利用され、第三者に情報が渡ること」が挙げられます。

また、生成AI の学習に使われているデータ(具体的には、著作物を無断で学習データとして利用している場合)にもリスクの考慮が必要です。
このケースでは生成AI でのアウトプットに著作物が含まれてしまい、そのまま利用すると著作権違反に繋がってしまいます。

入力内容(社内情報)の利用

ChatGPT の開発企業である OpenAI社は、プライバシーポリシーに以下の目的での個人情報利用の可能性を明記しています。

  • 本サービスの提供、管理、維持、分析
  • 本サービスの改善・調査
  • お客様とのコミュニケーション
  • 新しいプログラム及びサービスの開発
  • 本サービスの詐欺、犯罪行為、不正使用を防止し、当社(OpenAI)のITシステム、アーキテクチャ、及びネットワークのセキュリティ確保
  • 事業譲渡
  • 法的義務及び法的手続の遵守、当社および当社の関連会社、お客様またはそのほかの第三者の権利・プライバシー・安全・財産の保護

ChatGPT に入力した機密情報が社外サーバーに保存されるだけでなく、他のユーザーが ChatGPT を利用した際に機密情報が返答に使われる可能性も否定できません。
また法律上の要請のほか特定の条件下では、顧客への通知なしに第三者に個人情報を提供する可能性があることも明示されています。

ChatGPT を利用する際には、Opt Out すると共にリスクの低いデータを使うことが、情報漏えいリスクを低減するための対策の一つとなります。

※出典:プライバシーポリシー(https://openai.com/ja/policies/privacy-policy)

企業のユースケースやコンプライアンス要件を満たす「IBM watsonx」

エンタープライズ向け次世代AIプラットフォーム「IBM watsonx」

単なる AI の使用だけにとどまらず、AIモデルの学習、調整、展開を管理し、それらが生み出す価値すべてを企業が保有し、ビジネスへの活用を可能にするのが「IBM watsonx」です。

先進のオープン・テクノロジーで様々な AIモデルが作成可能な AI基盤を提供します。
企業のユースケースやコンプライアンス要件を満たし、基盤モデル(ファウンデーションモデル)ベースでの企業固有AIモデルの作成を支援します。

watsonx は企業向けのビジネス分野を対象とした AIモデル作成・運用プラットフォームで、「AI学習・生成・チューニング」「学習データ管理」「ライフサイクル管理」の3つの機能で構成されています。
これらを組み合わせることで、ユーザーによる AIモデルのトレーニング、チューニング、デブロイを支援し、データがある場所に関係なくワークロードのスケーリングとより信頼できる AIワークフローを設計できるだけではなく、AI を業務に取り入れる際の課題を解消します。

さらに、学習済みの汎用の基盤モデルには IBM の信頼できるデータ・セットに基づいて学習しているモデルも用意しているため、透明性が高く責任ある AI 実現のために担保すべきガバナンスも備えており、法律、規制、倫理、不正確さに関する懸念も排除できます。

ビジネスでの AI活用を想定して設計された watsonx は、単なる AI の使用にとどまらず、AI の価値を創出するエンタープライズ向けの次世代AIプラットフォームと言えるでしょう。

基盤モデルをはじめとしたAIモデルを活用・構築し、企業独自の価値創造を支援する「watsonx」
図1. 基盤モデルをはじめとしたAIモデルを活用・構築し、企業独自の価値創造を支援する「watsonx」

watsonxの3つの機能

watsonx は次の3つの機能により、「AIモデルの利用サイクルにおけるデータの準備」「モデルの開発やチューニング」「信頼性やパフォーマンス監視」にいたる範囲をすべてカバーします。

これらの AI支援機能によって、カスタマー・サービスの自動化やコードの生成、人事などの主要ワークフローの自動化など、様々なビジネス・プロセスやアプリケーション開発において、専門知識がなくても業務の遂行が可能になります。

AI作成スタジオ(AI学習・生成・チューニング)「watsonx.ai」

watsonx を構成する3機能の中核をなすのが、AIモデルのトレーニングや検証、チューニングを担う AIモデル作成スタジオ「watsonx.ai」です。

watsonx.ai は、IBM独自のファウンデーションモデルを活用した AI構築のためのオープンな企業向けスタジオ(ツール・機能群)で、企業独自の競争力と差別化を保持するために基盤モデルを活用・構築することができます。

IBM が作成したファウンデーションモデル「Granite」もしくは Hugging Face *2 ライブラリーからのオープンソースモデルで使用を開始し、学習、評価、チューニング、展開にわたり、基盤モデルや生成AIビジネスでの本格利用を支えます。
また独自のデータで追加学習する機能により、カスタマイズされた独自のファウンデーションモデルの構築も可能です。

自社固有モデルを開発し利用できるため、共有モデルと比べセキュリティリスクは大幅に低減できます。

Granite は、モデルの学習に使用されたすべてのデータ・セットが IBM内で定義されたガバナンス、リスク、コンプライアンス(GRC)のレビュー・プロセスを経た監査可能な信頼できるモデルであるため、企業向けとして最適です。

さらに、後ほど紹介するライフサイクル管理ツール「watsonx.governance」と連携し、AIライフサイクルにわたる統制やリスク・コンプライアンス管理を含めた維持・運用を実現します。

*2. Hugging Face(ハギングフェイス):
機械学習モデルを「構築」「トレーニング」「デプロイ」できる開発プラットフォーム。
AI研究者や開発者が機械学習リファレンスオープンソースを活用して、機械学習モデルの「訓練」「共有」「利用」を容易にするためのツールやライブラリを提供している。

企業固有データの管理プラットフォーム(学習データ管理)「watsonx.data」

AI をビジネスのあらゆる領域で活用するために加工する仕組みを提供するのが、IBM の次世代型データ・ストア(データ管理プラットフォーム)「watsonx.data」です。

watsonx.data は、散在する企業の固有データを一元管理し複数のクエリエンジンとストレージ層に対するワークロードを最適化するとともに、自社の業務用途に合わせた AIモデルを watsonx.ai で作る際に必要となる自社固有の学習データ(基盤モデルに対する少量の追加学習データなど)を供給します。

watsonx.data はオープン・レイクハウス・アーキテクチャー上に構築されています。
データレイクの柔軟性にデータウェアハウスのパフォーマンスを組み合わせることで、オープンでハイブリッド、ガバナンスに対応したデータ・ストアとして、あらゆるデータを分析しあらゆる場所に AIワークロードを拡張することが可能です。

ライフサイクル管理ツール「watsonx.governance」

日常のワークフローへの AI導入が進むほど、ビジネス全体で責任ある倫理的な意思決定を推進するための「事前対応型ガバナンス」の必要性が高まります。
AIモデルのライフサイクルを管理し、データと AI双方のガバナンスを保つためのツールキットが「watsonx.governance」です。

watsonx.governance はサード・パーティー製のモデルに対しても、ソフトウェアによる自動化でデータサイエンス・プラットフォームの変更にともなう過剰な費用負担なしに、リスクの軽減や規制要件の管理、倫理的懸念への対処能力を強化します。

これにより、「どのようなデータを学習させたのか」「誰がデプロイしたのか」など各種のメタデータを管理し、AI のライフサイクルを統制します。

さらに、実際に本番で使っている AIモデルの挙動を監視することで、AIモデルの精度や公平性を確認できます。

基盤モデルで迅速かつ容易にカスタマイズ

従来の AI開発のアプローチは、翻訳や分類などの目的ごとのタスクに対し、これらに応じたターゲットの回答がすでにわかっている「ラベル付きの学習データ」を大量に集め学習させそれぞれの用途に応じた AIモデルを作るため、別の用途に転用できずコストがかかっていました。

watsonx はファウンデーションモデルを用意しており、これをベースに追加学習でチューニングすることで、ゼロから機械学習モデルを作成するよりも迅速かつ容易にカスタマイズして用途ごとの AIモデルを作成できます。

さらに、1つの基盤モデルで多様なタスクに適応できるため大幅に工数と期間を削減し、学習の負荷やコストが大きいという従来の問題を解消します。

まとめ:企業経営の最適化を目指すIBMの「AI+」データ/AI戦略

昨今、様々なベンダーが企業の業務やサービスのデータに AI要素を追加する「+AI」(AIファースト)を支援し始めています。

IBM においては、お客様の「業務・サービスの自動化」「業務・サービスの見直し」「企業のコア業務改善」などの課題を AI+ で解決しています。

企業経営の最適化を目指す AI+ の戦略を体現する IBM watsonxシリーズは、AI の活用を進める企業に最適なソリューションだと言えるでしょう。

エヌアイシー・パートナーズにお任せください

エヌアイシー・パートナーズは、IBMソフトウェア/ハードウェアの認定ディストリビューターとして、watsonxシリーズをはじめとする IBM製品に関するパートナー様のビジネスを強力にサポートいたします。

「お客様のニーズや要件に合わせてIBMのSWとHWを組み合わせた最適な提案がしたい」
「IBM製品の機能や適用方法についての問い合わせに適切に対応したい」
「IBM製品の特長や利点を活かしたお客様ビジネスへの最適な提案をしたい」

といったお悩みをお抱えの方は、お気軽にエヌアイシー・パートナーズへご相談ください。

お問い合わせ

この記事に関するお問い合せは以下のボタンよりお願いいたします。

 

その他の記事

2025年09月03日

レノボのファンレス常温水冷サーバーって?

公開日:2025-09-03 こんにちは。ソリューション企画部 柳澤です。 みなさま「水冷サーバー」と一言聞いて、何を思い浮かべますか? オフィスに置いてあるドリンク用ウォーターサーバーを思い浮かべる方もいらっしゃいますでしょうか? 弊社のお客様のみなさまはIT業界の皆様ですので、水冷サーバーというとサーバーを特殊な液体のタンクで冷やす「液浸」を思い浮かべる方も多いかと思います。 しかし、この液浸は、タンク設置場所の確保やサーバーを重ねられないといった課題があり、大規模な投資や、床面積の拡大を避けられませんでした。 そこで、液体をサーバー内部の管に通して冷却する「直接液冷」が近年注目されています。 今日のサーバーはかつてないほどの計算能力を要求されており、人工知能(AI)、機械学習(ML)、高性能コンピューティング(HPC)といったワークロードの台頭は、より強力なサーバーと、それに伴うより高度な冷却ソリューションの必要性を浮き彫りにしています。 この状況を受け、各メーカーは水冷サーバーに注力し始めており、今後のサーバー選択において冷却効率が新しい基準として加わることになりそうです。 本日ご紹介するレノボのファンレスの常温水冷サーバーは、革新的な水冷技術を搭載しており、その冷却効率が注目されています。 目次 レノボのファンレス常温水冷サーバーとは 水冷サーバーの導入を検討するお客様の例 関連情報 お問い合わせ レノボのファンレス常温水冷サーバーとは レノボの水冷は「直接液体冷却」技術を採用しています。これらのソリューションは、GPUやCPUのような発熱量の多いコンポーネントを直接冷却しています。 サーバートレイ、シャーシにはファンがない設計なので、とても静かなサーバーです。またファンがないことで電力消費量を削減することにも役立っています。 採用されている液体は99%の純水で、ほぼサラサラの液体となり、環境にもやさしい設計です。 また、この液体が常温から45度の温水でも排熱効果を発揮するので、液体を氷のように冷たくはしなくても効果を発揮する設計になっています。 主な製品と特徴 レノボの水冷サーバーのシリーズのLenovo Neptune™ は、HPC、ミッションクリティカルサーバーはもちろんのこと、従来のラック型サーバーに加え、エッジコンピューティングなどの筐体でも構成できる柔軟な構成オプションが準備されています。 そのためお客様の特定のニーズに合わせてカスタマイズや拡張ができます。 水冷サーバーの導入を検討するお客様の例 Lenovo Neptune™ は、以下のようなお客様にご利用いただくことで特に大きな価値を発揮します。 高性能コンピューティング(HPC):科学研究、シミュレーション、モデリングなど、膨大な計算能力を必要とするHPC環境では、水冷が不可欠です。 人工知能(AI)と機械学習(ML):AIトレーニングや推論は、GPUに大きな負荷をかけるため、効率的な冷却はパフォーマンスを維持するために重要です。 高密度データセンター :限られたスペースに多くのサーバーを詰め込む必要がある場合、水冷は高密度化を可能にします。 エネルギー効率の重視 :持続可能性と運用コストの削減を重視する企業にとって、水冷は魅力的な選択肢です。 エッジコンピューティング :コンパクトで効率的な冷却ソリューションが必要なエッジ環境でも、水冷の利点は大きいです。 どうでしょうか。レノボの水冷サーバーのイメージが変わりましたでしょうか。 ここまでざっと簡単にレノボの水冷サーバー製品をご紹介させていただきましたが、もっと詳しく知りたい、などのご興味ございましたら、ぜひ弊社へお問い合わせいただければと思います。 関連情報 Lenovo サーバー/ストレージ 製品(NI+C Pサイト) 【参加レポート】Lenovo TechDay @ Interop Tokyo 2025(NI+C Pサイト) 第6世代のLenovo Neptune液体冷却が AI 時代を牽引(Lenovoサイト) 【AI電力消費40%削減事例も】レノボの「直接水冷」Lenovo Neptune™(YouTube) お問い合わせ エヌアイシー・パートナーズ株式会社E-mail:voice_partners@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年08月21日

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

公開日:2025-08-21 こんにちは。てくさぽブログメンバーの佐野です。 2025年7月17日に「watsonx Orchestrate テクニカルワークショップ」第一回を開催しました。 2024年12月にもwatsonx Orchestrate(以下wxO)のハンズオンセミナーを開催しておりますが、6月にwxOの大幅なアップデートが入り使い方・作り方が大きく変更になったため、最新情報と基本的な使い方をいち早くお届けするべく企画・開催しました。 また、ハンズオンだけでなくワークショップの時間を設け、wxOがどのように使えるのかを参加者同士でディスカッションし、最後に各チーム毎に発表・共有をすることでwxOの理解を進めるとともに参加者同士のコミュニケーションを図りました。 本ブログではこのテクニカルワークショップについて簡単ですがご紹介します。 目次 watsonx Orchestrate概要 watsonx Orchestrateハンズオン ワークショップ まとめ お問い合わせ watsonx Orchestrate概要 旧wxOと比べて新wxOはAgentの開発方法が変わっています。画面が変わったのはもちろんのこと、エージェントで実行部分を示す用語も「Skill」から「Tool」へ変更となっています。他に大きく変わったのは以下の点になります。 新しく「Knowledge」機能が追加され、Agent内にファイルを添付することができ、簡易的なRAGの構成をNo-Codeで実現 Agent内で定義しているToolを呼び出す際に、LLMが自動でチャットに入力されたテキストから必要な情報を抜き出し、Toolへ渡す Agentから他のAgentを呼び出せる(wxO以外のAgentも呼び出せる)Multi-Agent Orchestration機能 「Behavior」に日本語で返答させたりAgentの挙動を定義 人事業務や購買業務、営業業務といった特定業務向けの事前定義Agentを提供 AgentやToolをPythonで実装するためのAgent Development Kit (ADK)および開発者向けのDeveloper Editionを提供 モニタリング機能でAgent処理履歴のトレース情報を参照可能 自社で開発したエージェントを提供する”Agent Connect”というAIエージェントのエコシステム上でマーケットプレイス環境 wxOの各エディション内の機能の変更と課金対象の変更 このように大きな機能追加や使い方の変更が入ったことをご紹介し、理解頂きました。 watsonx OrchestrateでAgentを作成する時の主な設定項目は以下のようなものがあります。 watsonx Orchestrateハンズオン 概要でお伝えしたように、用語も変わった上に画面も新しくなっています。 そのため、AI Agentを動作させるための以下の基本的な操作をハンズオンで体験頂きました。 wxO環境の説明や基本的な操作 Agentの新規作成 Toolの作成・利用 Knowledgeを利用した簡易的なRAG Agent Tool Builderを利用しFlowやCodeblockの作成 Agentから他のAgentを呼び出し これらのハンズオンはCodeblockを除きNo-CodeでWebブラウザ上の操作で実行できるため、プログラミングやシステム開発の知識・経験が無くてもAI Agentを動かすことができます。Codeblock機能はAgentの動作・処理順を定義する”Flow”の中でPythonを使ってデータを操作するための機能であり、簡易的なETLを実現するものです。 今回のハンズオンでは、サンプルとその手順をご用意したので、参加者の方々が一通りのことを体験頂くことができました。実際にハンズオンで体験頂いた内容のサンプルをいくつかご紹介します。 Agentのサンプル1:都市名からお天気情報を返答するAgent APIで他サービスを呼び出し、都市名を入力すると天気と気温を回答してくれます。 複数の都市名を入力し、表形式で回答してもらうこともできます。 Agentのサンプル2:簡易的なRAG Agent ファイルを添付し、そのファイルの内容から回答をしてくれる機能です。 ハンズオンではIBMの2024年度の年次レポートを添付し、その内容を元に財務パフォーマンスのサマリーを回答させました。 ファイルの該当箇所が参照できるので、根拠を確認できるのがよいところです。 ファイルは事前にAgentに添付しておくこともできますし、ユーザー自身がファイルを添付する使い方もできます。 ワークショップ 今回、ハンズオンだけでなくwxOを自社または自社のお客様がどのように利用すると効率化できるか?という観点でチームに分かれてワークショップを行いました。 1チーム4人の合計3チームに分かれてNI+C Pメンバーがファシリテートしながらアイディア出し・ディスカッションを行いました。 最後に各チームのディスカッション結果を発表いただき、「こんなことできたらいいな」というアイディアを全員で共有し合いました。 ワークショップで上がった意見の中からいくつかピックアップします。 市役所の窓口業務を実施するAI Agent チャットだけでなく音声対応もできる 個別業務を処理するTool/Agentと情報参照のRAGを併用してユーザーへの問い合わせへ回答 ブログを書いてくれるAI Agent 過去のブログを参考にして文体や言い回しを自分流に ドラフト書くAgent、推敲Agent、ファクトチェックAgentなど組み合わせ 薬局の在庫予測や自動発注にAI Agentを活用 まとめ 新しくなったwxOのハンズオンを1か月とちょっとで実施するというチャレンジングなワークショップでしたが、無事終えることができてホッとしています。 ご参加頂いた方々からのアンケートで「最新情報を知り、その環境で動作させられたのがよかった」とご意見を頂いており、準備した甲斐があったと嬉しく思っております。 wxOテクニカルワークショップの第二回も企画しておりますし、他の製品についても企画中ですので、この記事をご覧の皆様のお役に立てるよう、今後も企画・実現していきます。 「こんなことやって欲しい」というご意見ありましたら是非ご意見お願いいたします。 お問い合わせ この記事に関するご質問は以下の宛先までご連絡ください。 エヌアイシー・パートナーズ株式会社技術企画本部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年08月04日

【てくさぽBLOG】IBM watsonx OrchestrateのADKを使ってみた

こんにちは。 てくさぽBLOGメンバーの高村です。 早速ですが、今年5月に開催されたIBMの年次イベント「Think2025」で、watsonx Orchestrateの新機能が発表されました!その中の一つとして、開発者向けの「Agent Development Kit(以下、ADK)」があります。今回はこのADKを活用し、watsonx Orchestrate環境への接続やエージェントの追加といった操作を行い、その使用感をご紹介します。  なお、watsonx Orchestrateについては、今年2月、3月に公開した「watsonx OrchestrateやってみたBLOG」でご紹介しておりますので、是非こちらもご一読ください。 【てくさぽBLOG】IBM watsonx Orchestrateを使ってみた(Part1) 【てくさぽBLOG】IBM watsonx Orchestrateを使ってみた(Part2) 目次 はじめに ADKとは? ADK使ってみた さいごに お問い合わせ はじめに Think2025で発表された新機能は、6月に環境へ追加されました。それ以前の環境とは、メニュー構成や操作方法、機能名称に変更があります。 例えばこれまで「Skill」と呼ばれていたものが「Tool」へと名称変更されています。 アップデート後の環境につきましては、別ブログにて改めて詳しくご紹介させていただく予定ですので、ぜひご期待ください! ADKとは? まずはADKについてご紹介します。ADKとは開発者向けにwatsonx OrchestrateのAgentやToolをスクラッチ開発するための開発キットになります。ローカル端末などに導入し、pythonベースで開発を行うことができます。 また、ADKとは別に、watsonx Orchestrate Developer Editionをローカル端末に導入することで、ADKで開発したAgentやToolのテストが可能になります。なお、watsonx Orchestrate Developer EditionはDockerコンテナ上で動作し、現時点のハードウェア要件はCPUは最小8コア、メモリは最小16GBが必要です。詳細はInstalling the watsonx Orchestrate Developer Editionをご確認ください。   ADKとwatsonx Orchestrate Developer Editionを利用することで、コードの迅速な作成・修正や柔軟なカスタマイズに加え、環境へのデプロイ前にローカルでテスト・修正が可能となり、作業効率の向上が期待できます。 ADK使ってみた 前述ではADKでAgent開発し、watsonx Orchestrate Developer Editionで動作確認、SaaS watsonx Orchestrateへインポートする構築の流れをお話しましたが、今回の検証における動作確認は検証環境として利用しているIBM Cloud 上のwatsonx Orchestrate利用します。よって前述したwatsonx Orchestrate Developer Editionは利用せず、ADKからwatsonx Orchestrate検証環境へAgentとToolを直接インポートし、動作確認を行いたいと思います。また、ADKのインストール先は自分の端末ではなく、IBM Cloud上に構築したUbuntuのVirtual Server Instance(以下、VSI)を使用します。検証環境の構成イメージは下記の図の通りです。 尚、ADKのインストール要件はPython 3.11以上、Pip、そして仮想環境(以下venv)が必要です。詳細については、Getting started with the ADKをご確認ください。 それでは早速使ってみましょう! VSIのプロビジョニング まずはADKをインストールするVSIをプロビジョニングします。本ブログではプロビジョニング方法について詳しく記載いたしませんが、手順は「【てくさぽBLOG】IBM Power Virtual ServerのAIX環境とIBM Cloud Object Storageを接続してみた(Part1)」のVSI for VPCの作成をご参考ください。 OSはUbuntu 22.04 LTS Jammy Jellyfish Minimal Install、リソースは2vCPU,4GB RAMで作成しました。VSI作成時にSSH鍵が必要なるので作成を忘れないようにしてください。 作成すると数分で起動します。端末からSSHログインするため浮動IPが必要になります。赤枠で囲った浮動IPを作成しインスタンスに紐づけします。以上でVSIの作成は完了です。 Ubuntuの設定 ターミナルを開きsshでUbuntuにログインします。私はWindowsのコマンドプロンプトを使用しました。Ubuntuユーザでログイン後、rootパスワードを設定し、スイッチできるようにします。 ubuntu@nicptestvsi:~$ sudo passwd root New password: Retype new password: passwd: password updated successfully ubuntu@nicptestvsi:~$ su - pythonのバージョンを確認したところ3.10.12でした。ADKの要件は3.11以上ですので、バージョンアップが必要になります。最初は3.13にバージョンアップしてみたのですが、後続作業と最新バージョンではパッケージが合わなかったのかうまく動かず…仕切り直して3.11を利用することにしました! root@nicptestvsi:~# apt install python3.11 バージョンアップ後、デフォルトバージョンとして3.11を指定します。 root@nicptestvsi:~# sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 2 sudo update-alternatives --config python3 update-alternatives: using /usr/bin/python3.10 to provide /usr/bin/python3 (python3) in auto mode update-alternatives: using /usr/bin/python3.11 to provide /usr/bin/python3 (python3) in auto mode There are 2 choices for the alternative python3 (providing /usr/bin/python3).Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/python3.11 2 auto mode 1 /usr/bin/python3.10 1 manual mode 2 /usr/bin/python3.11 2 manual modePress <enter> to keep the current choice[*], or type selection number: 2 root@nicptestvsi:~# root@nicptestvsi:~# python3 --version Python 3.11.13 次に下記コマンドを実行して任意のvenvを作成します。 python3 -m venv /path/to/nicpse/project/your-venv-adktest <環境のパスを指定 venvを活性化してログインします。下記コマンド結果のようにvenvに入れましたらUbuntuの設定は完了です。 root@nicptestvsi:~# source /path/to/nicpse/project/your-venv-adktest/bin/activate (your-venv-adktest) root@nicptestvsi:~# ADKのインストール 以下コマンドを実行してADKをインストールします。ADKは6月時点で1.5.1が最新バージョンです。 (your-venv-adktest) root@nicptestvsi:~# pip install ibm-watsonx-orchestrate Collecting ibm-watsonx-orchestrate Downloading ibm_watsonx_orchestrate-1.5.1-py3-none-any.whl.metadata (1.4 kB) Collecting certifi>=2024.8.30 (from ibm-watsonx-orchestrate) Downloading certifi-2025.6.15-py3-none-any.whl.metadata (2.4 kB) Collecting click<8.2.0,>=8.0.0 (from ibm-watsonx-orchestrate) Downloading click-8.1.8-py3-none-any.whl.metadata (2.3 kB) Collecting docstring-parser<1.0,>=0.16 (from ibm-watsonx-orchestrate) Downloading docstring_parser-0.16-py3-none-any.whl.metadata (3.0 kB) Collecting httpx<1.0.0,>=0.28.1 (from ibm-watsonx-orchestrate) Downloading httpx-0.28.1-py3-none-any.whl.metadata (7.1 kB) ----中略---- (your-venv-adktest) root@nicptestvsi:~# orchestrate --version ADK Version: 1.5.1 ADKの環境設定 次にADKの環境設定を行います。watsonx OrchestrateのインスタンスIDが必要になるため、watsonx OrchestrateのSetting画面に入り確認します。下記画面をご参考にしてください。 環境設定コマンドはこちらになります。-nの後はvenv名を指定し、-uの後はインスタンスIDを指定します。 (your-venv-adktest) root@nicptestvsi:~# orchestrate env add -n <仮想環境名> -u <環境のインスタンスID> [INFO] - Environment 'my-name' has been created [INFO] - Existing environment with name 'nicpse' found. Would you like to update the environment 'nicpse'? (Y/n)y [INFO] - Environment 'nicpse' has been created 以下コマンドを実行して、IBM Cloud上のwatsonx Orchestrateと認証設定をします。APIキーの取得方法は「【てくさぽBLOG】IBM watsonx.aiを使ってみた(Part2)」のAPIキーの取得をご確認ください。尚、リモート環境に対する認証は2時間ごとに期限切れになります。期限が切れた場合は再度認証する必要があります。 (your-venv-adktest) root@nicptestvsi:~# orchestrate env activate nicpse --apikey <APIキー> [INFO] - Environment 'my-ibmcloud-saas-account' is now active [INFO] - Environment 'nicpse' is now active 下記コマンドを実行してCLIから利用できる環境のリストを表示します。IBM Cloud上のwatsonx Orchestrateがactiveとなっていました! (your-venv-adktest) root@nicptestvsi:~# orchestrate env list nicpse https://api.us-south.watson-orchestrate.cloud.ibm.com/instances/XXXXXXXX (active) local http://localhost:XXXX Toolとagentのインポート 次にToolとAgentのインポートを行います。ToolとはAgentがタスクを実行する際に利用する機能です。今回は、IBM様より共有いただいたyfinanceを活用したToolおよびAgentのコードを、ADKを用いてインポートします。なお、yfinanceはヤフーファイナンスから株価などの金融データを取得するためのPythonライブラリです。 最初にToolのインポートを行います。下記の様に、scpなどでToolファイルとrequirements.txtをディレクトリにアップロードしておきます。requirementsファイルは他のモジュールと依存関係がある場合使用します。 (your-venv-adktest) root@nicptestvsi:~/orchestrate_tool/py/source_02# ls -l total 12 -rw-r--r-- 1 root root 0 Jun 24 04:42 __init__.py drwxr-xr-x 2 root root 4096 Jun 24 04:38 __pycache__ -rw-rw-r-- 1 ubuntu ubuntu 8 Jun 24 03:02 requirements.txt -rw-rw-r-- 1 ubuntu ubuntu 1778 Jun 24 02:46 yfinance_agent.py 下記コマンドを実行してToolファイルとrequirementsファイルをインポートします。企業情報を取得するstock_infoと株価を取得するstock_quoteの2つのToolがインポートされました。 (your-venv-adktest) root@nicptestvsi:~/orchestrate_tool/py/source_02# orchestrate tools import -k python -f "./yfinance_agent.py" -r "./requirements.txt" [INFO] - Using requirement file: "./requirements.txt" [INFO] - Tool 'stock_info' imported successfully [INFO] - Tool 'stock_quote' imported successfully listコマンドを実行するとインポートされたToolを確認できます。 (your-venv-adktest) root@nicptestvsi:# orchestrate tools list ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━┳ ┃ Name ┃ Description ┃ Permission ┃ Type ┃ Toolkit ┃ App ID ┃ ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━╇ │───────────┼────────────┼── │ send_mail_brevo │ send a meil using Brevo. │ write_only │ python │ │ │ │ │ │ │ │ │ │ ├─────────────────────────────────┼──── │ stock_quote │ 企業のTickerSymbolを用いて株価… │ read_only │ python │ │ │ ├─────────────────────────────────┼──── │ Untitled_6160RC │ No description │ read_only │ openapi │ │ │ ├─────────────────────────────────┼──── │ stock_info │ 企業のTickerSymbolを用いて企業… │ read_only │ python │ │ │ └─────────────────────────────────┴──── 次にAgentをインポートします。下記コマンドを実行します。 (your-venv-adktest) root@nicptestvsi:~/orchestrate_tool/py/source_02# orchestrate agents import -f ./yfinance_agent.yaml agent listコマンドでインポート済みのAgentを確認できました。Agentが使用するToolも表示されています。 (your-venv-adktest) # orchestrate agents list ┏━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━ ┃ Name ┃ Description ┃ LLM ┃ Style ┃ Collaborators ┃ Tools ┃ Knowledge Base ┃  ┡━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━ │ yfinance_age… │ 企業の会社情… │ watsonx/meta- │ react │ │ stock_info, │ │ │ │ │ llama/llama-3 │ │ │ stock_quote │ │ ││ │ │ -2-90b-vision ││ │ -instruct │ │  IBM Cloud上のwatsonx Orchestrateで動作確認 インポートしたAgentとToolをIBM Cloud上のwatsonx Orchestrateで確認します。 watsonx Orchestrateへログインし、BuildからAgent Builderを選択します。 yfinanceエージェントが表示されているので、クリックします。 クリックすると、Agent作成画面に入ります。UIから基盤モデルを変更したり、Agentの振る舞いなど変更することができます。 スクロールして、Toolsetを確認するとADKからインポートしたToolが登録されています。 右のPreviewからAgentの動きを確認することができます。今回はDeployせずPreviewで確認します。入力欄には「IBMの株価は?」と質問してみます。しばらくすると本日の株価が回答されました。Show Reasoningを開くと推論過程を確認することができます。株価を取得するTool「stock_quote」を使用し、AIがユーザの入力から自動的にTicker symbolを入力していることがわかります。 次に「IBMの企業情報」と質問をします。しばらくするとAIがユーザの入力からTicker symbolを入力し、Tool「stock_info」を利用して企業情報を取得、回答されました。ユーザの入力内容からAgentが使用するToolを選択し、実行していることがわかります。   さいごに ADKのご紹介とADKを使ってToolとAgentのインポートを行いました。 ADKのインストールおよび設定について、Pythonバージョンの設定やvenvの作成でつまずく部分はありましたが、venvが作成できればその後の設定はスムーズに進められました。 今回はVSI上のUbuntuサーバにADKをインストールしましたが、ご自身の端末に導入することで、より気軽にAgent開発を行えるかと思います。なお、今回は検証対象外でしたが、watsonx Orchestrate Developer Editionを利用する場合は、インストール要件としてやや高めのスペックが必要になる点にご注意ください。 検証時のADKのバージョンは1.5.1でしたが、7月末では1.8.0が最新バージョンとなっています。比較的頻繁にアップデートされますので適宜Release Notesをご確認ください。バージョンアップでコマンドオプションも変更される場合があるため、マニュアルを確認するかコマンドに`--help`を付与してパラメータを確認することをおすすめします。   お問い合わせ この記事に関するご質問は以下の宛先までご連絡ください。 エヌアイシー・パートナーズ株式会社 技術企画本部 E-mail:nicp_support@NIandC.co.jp   .anchor{ display: block; margin-top:-20px; padding-top:40px; }

back to top