メインコンテンツへスキップ

仮想コンピュータをコントロール Mendix Gen AIを使用したアプリ

仮想コンピュータをコントロール Mendix Gen AIを使用したアプリ

重要なポイント

  • コンピュータを使用すると、 Mendix アプリは単に応答するだけでなく、さまざまな処理を実行します。 LLM と統合することで、アプリは仮想コンピューターを制御し、ユーザー入力に基づいてクリック、入力、アプリのナビゲーションなどの実際のアクションを実行できるようになります。
  • Mendix コンピュータの使用セットアップが驚くほどスムーズになります。 GenAI Commons、Amazon Bedrock コネクタ、REST 統合などの構成要素を使用すると、大量のカスタム コードを書かずに実用的な例を実行できます。
  • 慎重に設定することで、パフォーマンスが向上し、より安全な結果が得られます。 適切なプロンプト、モデル選択、ガードレールを導入することで、LLM がコンピューター使用の可能性を最大限に引き出し、コストとリスクを抑えながら、効率的かつ安全に行動できるように導くことができます。

もしあなたのアプリが、尋ねるだけで実際にコンピューターを使用でき、ファイルを開いたり、ボタンをクリックしたり、作業を完了したりできたらどうなるでしょうか?

GenAIと便利なツールのおかげで Mendix ツールを使えば、それは単に可能であるだけでなく、驚くほど実現可能です。この記事では、 Mendix 仮想コンピュータと対話して様々なことを実現するアプリ。大規模言語モデル(LLM)をプラグインし、適切なコネクタを設定する方法を学び、ユーザーが人間の言語を使ってアプリを操作するだけでアクションを起こせるようにします。

コンピュータの使用とは何ですか?

コンピュータ利用は、生成型AI(GenAI)とアプリ開発の世界における、新しく強力なアイデアです。これにより、開発者は、ユーザーの指示に基づいてタスクを実行するために、通常は仮想のコンピュータを制御するアプリを構築できます。

簡単に言うと、コンピューター使用設定は、コンピューター使用行動を予測するようにトレーニングされた特殊な大規模言語モデル(LLM)に接続するアプリで構成されています。ユーザーがアプリに「来月の第2週末のアムステルダム行きの航空券を検索できますか?」などと入力すると、LLMはチャット履歴とコンテキストを考慮しながら、その実行に必要な手順を計算します。

これらのステップは、ブラウザを開く、検索ボックスに入力する、ボタンをクリックするなど、多岐にわたります。LLMは、マウスをどこに動かすか、何を入力するか、何をクリックするかといった具体的な指示を返します。アプリはこれらの指示を用いて仮想コンピュータを制御します。場合によっては、アプリはコンピュータ画面のスクリーンショットをLLMに送信し、LLMが状況を把握して次に何をすべきかを判断します。

自律的AI Mendixでは、コンピューター機能を活用してユーザーを支援し、ビジネスプロセスをサポートする「スマートアプリ」をすでに構築できます。プラットフォーム対応のコンポーネントを使用すれば、簡単に始めることができます。 Mendix マーケットプレイスのような GenAIコモンズ, 会話型 UI、そしてセットアップで動作するLLMコネクタも付属しています。アプリを仮想コンピュータに接続するのにかかる時間はわずかです。アプリは、REST APIなどの使い慣れたツールを使ってコンピュータと通信できます。 Mendix プロジェクト。

コンピュータを実際に活用する Mendix

この例では、 Mendix このアプリはチャットインターフェースを使用しており、ユーザーはそこで操作したいことを入力できます。すると、アプリは仮想デスクトップ上で必要な操作を実行します。この設定は、 GenAIショーケースアプリ開発者がGenAIパターンを学び、よりスマートな開発を行うのに役立つ、多数の小さな実用的な例が含まれています。 Mendix アプリです。特にGenAIを初めて使う方にとって、刺激と学びの両方を与えることを目的としています。

LLMの選択と設定

Amazon BedrockでホストされているLLM、Anthropic Claude Sonnet 3.7を使用します。 Mendix- サポート Amazon Bedrock コネクタコンピュータ使用が有効になっている場合(バージョン20250124を選択)、LLMは、関数呼び出しパターンで処理できるツール呼び出しオブジェクトとして送信されたコンピュータ使用命令で応答します。 Mendix アプリ。

エージェントループによる関数呼び出し

AIマーケティング業界は、 Mendix アプリは関数呼び出しパターンに従っており、LLMのツール呼び出しをマイクロフロー内のロジックで処理します。また、仮想デスクトップのスクリーンショットをLLMに送信することで、LLMは現在の画面を確認し、次のステップを判断できます。このやり取りはエージェントループと呼ばれます。

GenAI Commonsモジュールのおかげで、これはすぐに使える。 チャット完了アクションLLM の指示 (何をクリックするか、どこに入力するかなど) をマッピングし、それをコマンドとして仮想コンピューターに送信するには、1 つの関数マイクロフローだけが必要でした。

仮想コンピュータへの接続

仮想マシンがアプリの指示通りに動作するように、ローカルのDockerコンテナとのREST統合を設定しました。コンテナに使用されているイメージは以下に基づいています。 Anthropic の Computer Use デモリポジトリコマンドを実行する Python コードが含まれています。

このコードを シンプルなHTTPサーバー コンテナ内で公開しました。こうすることで、 Mendix アプリは、マイクロフロー内の REST サービス呼び出しアクティビティを使用してアクションをトリガーできます。

実際に動作を観察する

仮想コンピュータのデスクトップはローカルポート(例: localhost:6080)なので、ブラウザでリアルタイムに何が起こっているかを見ることができます。チャットインターフェースと仮想デスクトップを並べて配置すると、 Mendix アプリでは、たとえばユーザーがフライト情報のリクエストを入力した場合、システムがどのように応答するかを明確に確認できます。

コンピュータを使用する際に留意すべき点

コンピュータの使用は強力ですが、考慮すべき重要な点がいくつかあります。

1 – モデルの品質が重要

LLMによって(同じLLMでもバージョンによって)得られる結果は異なります。スクリーンショットの理解に優れているものもあれば、効率的な手順を計画することに優れているものもあります。回答を簡潔にまとめてくれるものもあれば、何か問題が発生した場合の復旧に優れているものもあります。

覚えておいてください:コンピュータの使用は、ほとんどの主要なLLMプロバイダーにとってまだベータ版です。 OpenAI および アマゾンの岩盤、物事は急速に変化しています。

2 – 遅くて費用がかかる可能性がある

モデルのプロンプト方法、使用されているモデルとツールセットのバージョン、ビジョン機能の性能など、多くの要因に応じて、アプリは1回のリクエストに対してLLMを何度も呼び出す必要がある場合があります。これらの呼び出しにはトークンが使用されるため、コストが増加する可能性があります。また、LLMが正しい答えを得られないまま試行を続けると、トークンまたは時間制限に達するまでループし続ける可能性があります。

また、このプロセスは遅くなる場合があります。各ステップには数秒かかり、すべてのスクリーンショットを作成して送信する必要があります。人間が同じタスクを実行するよりも時間がかかる場合もありますが、特に反復的なタスクを自動化したり、多数のリクエストを一度に処理したりする場合は、それでも価値があります。これらの退屈なタスクや反復的なタスクを自動化することで、特に同時に実行できる場合は、より重要で詳細な作業に集中できるようになります。

3 – セキュリティと安全性は重要

コンピューターを使用すると、アプリが仮想マシンを完全に制御できるようになるため、制限を設けることが重要です。安全対策を講じないと、システムが不要なコマンドを実行する可能性があります。

あなたがすべき:

  • 仮想マシンで利用可能なソフトウェアとシステムへのアクセスを制限する
  • LLM プロンプトとガードレールを設定して、アクションが実行される前にチェックします。
  • 許容できるリスクのレベルを決定する
  • 慎重にテストし、システムが期待通りに動作することを確認します

コンピューターの使用が重要な理由

コンピュータの使用は、スマートで役立つアプリを構築する全く新しい方法を生み出します。 MendixLLMを仮想デスクトップと適切に配置されたロジックと組み合わせることで、ユーザーに応答するだけでなく、ユーザーに代わって動作するアプリケーションを作成できます。パフォーマンス、コスト、安​​全性など、まだ課題はありますが、その可能性は非常に大きいです。反復的なタスクを自動化する場合でも、ワークフローを効率化する新しい方法を模索する場合でも、これは試してみる価値のある強力なパターンです。

言語を選択してください