この『ナイメストタイムズ(以下:KT)』は、いつまで経ってもプログラム初心者のKNIMESTが、KNIME-Python-生成AI連携でどこまでできることが増やせたのかを、実際の体験談を元にシリーズでお伝えしていきます。
連載第3回目は、KNIMEがworkflowを作ってくれるK-AI Buildモードの体験をし、かつそのLimitationも、軽~く考えてみたいと思います。
この記事を読んでいただくことで、生成AIにどんなプロンプトを入力すれば、どんなノードのヒントを得られるかがわかるようになります。
KNIMEがworkflowを作ってくれる~ K-AI Buildモード~
K-AI (カイ) がKNIME活用支援に特化したChatGPTをベースとした生成AIであり、3つのモードがあると紹介しました。
- チャットでのQ&Aモード
- Buildモード
- 各種ノード内のK-AIアシスタント
そしてA.のQ&Aモードの体験までが前回の記事でした。
それぞれを使いわけてローコードでのworkflow構築でちょっとしたプログラム(ツール)を開発できるか試みているわけですが、実のところチャットで相談して自分でworkflowを作る部分はノーコード、まだコーディング技術は一切利用していないです。正確に言うとKNIMEのノードはJavaでコーディングされてますけども…
チャットで相談して自分でKNIME workflowを作るんだったら、K-AIだけじゃなくってCopilotとかPerplexityでも
「あなたはKNIMEの専門家です、KNIMEやプログラミングの初心者にもわかりやすいよう〇〇をを入力としてXXするworkflowをどう作ったらいいか教えてください。各ノードの設定に関しても提案をお願いします。」
とかプロンプトを書くと教えてくれるんですけど、この方法ではworkflowは必ず自分で手作業で構築しますよね。そりゃそうだ。
ところがK-AIのBuildモードだと、入力のデータテーブルは作っておく必要はあるものの、そこから先のworkflow構築を自動でしてくれるのです。まずは体験記録をご覧いただきますね。
K-AIにworkflowを作ってもらう準備
KNIME AP ver. 5.2.5を立ち上げ、workflow作成をある程度進めたという前提で話を始めます。
私は前の記事で「 K-AIでローコード開発」というワークフローを作っていましたのでそちらを使って進めます。
一般の生成AIではできないK-AIの「 Buildモード」の体験をするので、上図の右の二つのノードも削除したところから始めます。
なぜそこからかというと、Joinerでデータを統合してくるところまでは人間がお膳立てしてあげるほうが早いのです。ちゃんと検証できてはないですが、K-AIのBuildモードが強みを示せるのは一つのデータテーブルを示して、その先どうしたらいいかとプロンプトを書いた場合に限られているように思います。
ただしそれは2024年秋の時点での話。KNIME APのver.5.1系のころと比べて、5.2系のK-AIが格段に機能が強化されたのと同様に、今後のバージョンアップに期待していいのではないかと思います。ちなみにver. 5.3.1が現時点での最新版で、そちらはほかの機能強化に注力した様子です。このバージョンもおすすめなんですよね。いつか紹介します。
KNIME Analytics Platform 5.3の新機能 ~GenAIやGPT4関連アップデート、UI改善他~ | KNIME(インフォコム) (knime-infocom.jp)
いつもの寄り道癖が出てしまいました。繰り返しになりますが、K-AIにworkflowを作ってもらう準備としては、必要なデータを集めて、一つのデータテーブルにするところまでは人間が準備してからBuildモードを使うのがお勧めです。
K-AIのBuildモード体験レポート
今回は下記の状態から始めます。 皆さんにも再現してもらったほうがわかりやすいかなとworkflowをKNIME Community Hubに上げましたのでもしよろしければご一緒に。
K-AIでローコード開発_A_データ集め – KNIME Community Hub
上記のworkflowをKNIME AP ver.5.2.5で開いて、Buildモードにすると左側のウィンドウは下記のようになるはずです。
K-AIを起動させるところまでは前回書いたので割愛しますけど、続けて大事なのは下図で黄緑色で囲った「Build」ボタンを押してモードを切り替えるところです。
注意書きをPerplexityで和訳しておきます。
では言われた通りデータを提供する ノードを選択してみましょう。一番右端のJoinerノードを左クリックして選択しました。
左下の枠にプロンプトを入力してリターンキーもしくは紙飛行機のアイコンを押してBuildモード実行です。
K-AIが数秒考えてからworkflowの続きを作成してくれました。
一番右のGeneric ECharts ViewがK-AIが可視化を実装する際に利用するノードです。 こちらのノードはとんでもない高機能なんですがその紹介は後日に譲り、今回は実行結果を示すまでとします。
ノードを右クリックして「Execute and open view」 新しくViewウィンドウが開いて下記の通り2021年F1グランプリのTop5チームが表示されました。
日本語で指示していることで縦軸の単位やViewのタイトルに日本語表記までしてくれるので感心しました。各ノードの設定も自動でできているし、説明を日本語で簡潔にしてくれていますね。
その割には結果報告チャットは英語の定型文なのが面白かったです。
さて、もう少しだけ体裁を整えたらworkflowは完成します。そこは人間がやりましたけど。以下よろしければどうぞ。
K-AIでローコード開発_B_Buildモード体験 – KNIME Community Hub
ここまではK-AI Buildモードでできることの確認でした。
K-AIのBuildモードの2024年秋時点での限界
先に述べたとおり、下記が日本語で指示したら自動でworkflow作成してくれるというのは画期的な長所であると思います。
- テーブルのフィルタリング、結合、操作
- グループ化と集計
- ピボットと並べ替え
- 文字列置換と列名変更
しかしどのような技術もそうですが、そのScope & Limitationすなわちできることとできないことを把握しておくことはユーザにとって重要です。
どんなことができるかはすでに紹介したのですが、2024年秋の時点での限界に関してもコメントしておきます。
- データ前処理の必要性
Buildモードでのworkflow構築は、データを適切に前処理し、一つのデータテーブルにまとめないと難しいです。全自動化にはまだ限界があります。 - 既存workflowの改良が難しい
一度作成したworkflowを改良するのは困難で、異なるプロンプトを使ってゼロから試行錯誤する必要があります。 - プロンプト作成の手間
効果的なプロンプト作成は簡単ではなく、適切な表現を見つけるために工夫が求められます。曖昧なプロンプトは誤った結果を招くことが多いです。 - 試行錯誤に時間がかかることも
プロンプト作成に時間がかかり、場合によっては自分でworkflowを作るほうが早いこともあります。
KNIMEの可視化機能にはこれまで物足りなさを感じる場面もありましたが、Generic ECharts Viewノードによって大幅な強化が期待され、今後の展開に注目しています。
特に、私は従来の可視化ノードの扱いに苦労していたため、この新機能が大きな助けになると感じています。工夫したプロンプトを使うことで、より効率的に可視化を実現できる可能性もあります。
まとめ
K-AIのBuildモードは、KNIMEでのデータ処理を大幅に効率化する便利なツールです。データのフィルタリングや結合、可視化も簡単に行え、特に日本語でのプロンプト対応が特徴です。
ただし、全自動化には限界があり、データ前処理やプロンプト作成の工夫が必要です。また、一度作成したworkflowの改良が難しいという課題もあります。
KNIMEの可視化機能の進化にも注目が集まります。Generic ECharts Viewノードの登場で、さらなるデータ可視化の可能性が広がりました。
次回は、この新機能をについて学び、K-AIの「C.各種ノード内のK-AIアシスタント」機能を試した体験談をご紹介いたします。
コメント