2 ポイント 投稿者 GN⁺ 2023-11-10 | 1件のコメント | WhatsAppで共有
  • GPT-4Vのビジョン機能だけでWebブラウジングが可能かを実験するプロジェクトで、マルチモーダルモデルにWebとやり取りするためのインターフェースを提供
  • ブラウザのDOMをテキストとして渡さないと、モデルが何をクリックしようとしているのか判断しにくいという問題を扱う
  • Vimium Chrome拡張を使ってキーボードだけでWebを探索できるようにし、それを通じてモデルがWebとやり取りする方法を実験
  • 実行フローは、Python要件のインストール、Vimiumのローカルダウンロード、Playwright実行時の拡張機能の手動ロード、python main.pyの実行で構成
  • python main.py --voiceVoice Modeを実行し、音声コマンドで目標を伝えてブラウザ操作をリアルタイムに行わせることが可能
  • 現在のVision APIはJSON modeやfunction callingをサポートしていないため、より原始的なプロンプト方式に依存せざるを得ないという制約がある
  • 低解像度ではモデルが何も検出できない場合があり、より高解像度の画像を使えば改善される可能性はあるが、より多くのトークンが必要になる

1件のコメント

 
GN⁺ 2023-11-10
Hacker News のコメント
  • いまやこんなことが可能になっているのは本当に驚き: https://github.com/ishan0102/vimGPT/blob/682b5e539541cd6d710...
    プロンプトが「ユーザーの目標を助けるために navigate、type、click、done のうちどの動作をするかを選び、黄色い文字列でクリック対象を指定し、JSON だけを返せ」というような形でブラウザ操作をさせている

    • この分野が動くスピードは、気が遠くなるほどだ。ドットコム・ブームよりもさらに狂った流れになるかもしれない
  • 職場には、レガシープログラム同士の間で手作業のデータコピーだけをしている人がかなりいる。政府系なので技術的負債が大きすぎて、システム同士をつなぐ方法を見つけられていない
    こういうツールがいつか、こうした問題の上で動くレイヤーになれるなら期待できる。計算資源の観点では奇妙な解法ではある

    • かなり昔、大手多国籍食品小売チェーンの小さなプロジェクトをやったことがある。特定の構造の Excel ファイルをパースして、社内システムのエンドポイントを呼び出し、データを送信するツールを作った
      既存のやり方が気になって尋ねると、オフィス奥のコンピュータまで連れて行かれ、壁紙には MS EXCELINTERNET EXPLORER と書かれた 2 つの四角形があった。担当者は 2 つのアプリを開いてウィンドウを正確にその四角形に合わせ、それから RuneScape のチーターが使いそうな自動クリッカーを走らせて、Excel の値を Web サイトのフォームにコピーしていた。すごかった
    • ここでは「古いソフトウェア」のせいにしているが、実際にはインターネットを使うほぼすべての人が同じデータ入力問題に常に直面している。画面の片側にあるフォームデータを別の Web フォームにコピーしたり、もっと悪い場合は打ち直したりしている
      ユーザー名、パスワード、メールアドレス、実住所、クレジットカード情報などが全部そうで、入力を助けようとする拡張機能もあるが、きちんと継続的に動くものはない。ユーザー名とパスワードだけを一貫して入力してくれることすら期待しづらい。インターネット利用において広告よりも大きな最大の苛立ちで、LLM があろうとなかろうと、いまだに解決されていないのは驚きだ。これを完全に解決するソフトウェアなら、月額料金を払ってもいい
    • 業界用語ではロボティック・プロセス・オートメーション(Robotic Process Automation)で、この製品群は従来型のスクリーンスクレイピングに加え、さまざまな形の機械学習/AI でこうしたものを共通かつ構造化された方法でつなぎ合わせることに注力してきた
      これまでこうした製品はかなり壊れやすかったが、最近の AI 技術の爆発的進展はこの領域にとって大きな追い風に見える
    • レガシーシステムからのデータ抽出を人が手作業でやっているという話を聞くたびに、「まともな」解決策の見積もりを取ったうえで、結局は複数人にタイピングさせるほうが安いと判断したのではないかと気になる
      ChatGPT のようなものを統合するとしても、ちゃんと分かっている人がレビューする必要があるだろうし、その人たちが最初にする助言が「そこに ChatGPT は使わないでください」だったとしても驚かない
    • 以前 Ghost in the Shell で、ロボットが高速にタイピングするために指の上にさらに指が付いている場面を見て変だと思った。USB に直接挿せるのでそのままにはならないだろうが、それでも時々は画面とキーボード入力を使うことになりそうだ
  • vim は意図せずして、ChatGPT にとって素晴らしい実装された身体になっているように思う。テキストストリームでできないことはなく、インターネットにはすでに vimscript があふれている
    似た実験を始めたので、同じ方向を考えている人がいれば参考にしてもよい: https://github.com/LachlanGray/vim-agent

  • 作った者です。気になることがあれば聞いてください。コントリビューションも歓迎します。README に可能な次のステップをいくつか残してあります

    • 今日これより少し前に、ほぼ同じものを公開しました: https://github.com/Jiayi-Pan/GPT-V-on-Web。ただ、あまり注目されませんでした
    • Open Interpreter も Selenium を自然言語制御で自動化しようとしており、HN にも似たプロジェクトが最近かなり投稿されています。Vimium アプローチはずっと軽量に見えるので有望です
      何らかの形で、公開された World Wide Web が独自の動的 API オーバーレイサーバーへと変わりつつあります
    • 現在 ChatGPT が Web を閲覧する方法とはどう違うのか?
    • サイトごとのパーサを書かずに、Web サイトを訪問して関連情報を抽出・分析するボットを作るのに使えるだろうか?
  • GPT-4 Vision でスクリーンショットとアクションを使ってブラウジングする似たアイデアを試してみたが、スクリーンショット上に情報を重ねて表示しようとして失敗したあと、結局 Playwright からアクセシビリティツリーを取得してテキストとして一緒に送った
    そうするとモデルがインタラクション可能な選択肢を把握できるので、自分の場合はよりうまく動いた。作者がここにいて今後のアイデア一覧もあるので、よければこれをリストに追加してもよさそうだ

    • 良いアイデアです。もともとは視覚データだけを使おうとしていましたが、これならエージェントがずっと強力になりそうです。近いうちに試してみます
    • 1 画面に収まるものだけでなく、全コンテンツをキャプチャするほうがよさそうだ。新しく拡張されたトークンウィンドウなら、ほとんどのページはテキストや HTML として入れられると思う
  • この数週間、ChatGPT インターフェースでこれをいじっていた。いくつかコツがある
    CSS を変えてグラデーションと角丸をなくし、太い白文字に赤色が最も一貫していた。フォントサイズを大きくし、ラベルが 2 つ重なったら互いに押しのけたうえで要素を指す矢印を追加するとよい。API には注釈付き画像と注釈なし画像の両方を送るほうがよかった

  • ブラウザ用のオートパイロットを作れる
    これが大規模に展開されると、今後ボットトラフィックを見分けるのがものすごく難しくなるだろう。ただ短期的には、安価または許容可能なコストにはなりにくいという問題が見える

    • llava や cogvlm のようなオープンソースモデルをファインチューニングすれば、コストを下げられそうだ。このデモも約 6 セントなので狂ったように高いわけではないし、プロンプトを賢く組めばさらに良くできる
  • こうしたツールは、ウェブトラッキングやインターネット広告全般にどんな影響を与えるのだろう? エージェントが代わりにウェブを巡回し、広告やポップアップを見ず、トラッキングも避けながら、正確に探しているものだけを持ってこられるなら、優れた広告ブロッカーになり得る。
    もしかするとSEOを無意味にして、インターネットの品質を高めるかもしれない。逆に、広告が取得されたコンテンツの中に何らかの形で「紛れ込む」副作用も起き得るのか気になる。

    • ページのスクリーンショットをGPTに送る方式なら、広告も一緒に見ることになるのでは?
  • オランダの多くの会社は給与をこのように支払っている。1) 会計士から給与明細を受け取り、2) 各従業員にその明細の金額分だけ銀行振込を手動で開始し、3) 源泉徴収した給与税を税務当局に送る銀行振込も手動で開始する。
    まったく無駄な手作業で、手動プロセスである理由がない。ところが自動化はほぼ不可能だ。会計ポータルにはAPIがないか、あってもデータをPDFでダウンロードさせるだけだったり、API費用がかなりかかったりする。銀行にもAPIがないか、単に社内手続きを自動化したいだけなのに、公開アプリを出すかのように開発者アカウント登録を求めてくる。だから給与と税金を支払う最も簡単な方法は、今でも人を雇って手動で処理してもらうことだ。AIに実際の銀行振込を開始させることは信頼しないだろうが、取引を準備しておいて、人間が送信承認だけする形なら可能かもしれない。

    • これはAIとはあまり関係がないように見える。英国にはPentoのような解決策がすでにあり、オープンバンキングで従業員と税務当局への支払いを自動化し、税務申告も自動提出している: https://www.pento.io/la/payroll-software
    • それは単に銀行の問題だ。大企業の給与処理はそんなふうには回っていない。銀行は通常、SWIFT支払いのバッチを定義したXMLファイルのアップロードを許可しており、小規模企業の給与もその方法で処理する。会計士もXMLファイルを提供していて、おそらく生成アプリを持っているはずだ。
    • 私の国でも似たような状況で、一部のデータは政府機関のサイトにアップロードしなければならない。今年初めだったと思うが、ウェブサイト上で操作を実行するソフトウェアを使う人はブロックされる可能性があるという発表があった。
    • 反復的なGUIワークフローの自動化が https://github.com/OpenAdaptAI/OpenAdapt の目標だ。
  • Adeptのコンセプトとかなり似ているのだろうか? ただ、製品はまだ準備できていないようだ: https://www.adept.ai/

    • Adeptが3億ドル超の投資を受けて何年も作っていると言われているものを、今ではOpenAI APIで1日で作れるというのは、ちょっとすごい。
      Adeptは途中で方向転換したようではあるが、元のコンセプトはこれと非常に似ていた。
    • https://www.adept.ai/blog/experiments :)
    • その通り。Adeptとほかのいくつかのスタートアップから着想を得た。
    • まさに私が思い浮かべたデモがこれだ。