📚

Claude APIを活用した究極のPCリモート制御ツール - Computer Use - OOTB

2024/11/19に公開

リポジトリ概要

このリポジトリは、Anthropic社のClaude API を利用して、コンピュータをリモートで制御できるOut-of-the-Box (OOTB) ソリューションを提供しています。Docker を必要とせず、WindowsmacOS の両方をサポート。Gradio をベースとしたユーザーフレンドリーなインターフェースが特徴です。高解像度スクリーンショットにも対応しており、コストを抑えながら快適なリモート操作を実現します。モバイルデバイスからの操作も可能で、アプリのインストールも不要です。

🎯 主要機能

  • リモートコンピュータ制御: インターネットに接続された任意のデバイスから、コンピュータをリモートで制御できます。
  • モバイル対応: モバイルブラウザから操作可能。アプリインストール不要。
  • 高解像度スクリーンショット対応: Anthropic社のAPIの解像度制限を克服し、高解像度スクリーンショットでも低コストを実現。
  • クロスプラットフォーム対応: WindowsとmacOSの両方をサポート。
  • GradioベースのUI: 直感的で使いやすいインターフェースを提供。
  • Anthropic Claude API 統合: Claude 3.5 Sonnet を利用し、自然言語コマンドによる操作を実現。

💻 技術スタック

  • Python (>= 3.11): プログラミング言語
  • Gradio: ユーザーインターフェースライブラリ
  • Miniconda: Python環境管理ツール
  • Anthropic Claude API: AIモデルとAPI
  • Git: バージョン管理システム

🚀 ユースケース

  • リモートワークでのPC操作
  • モバイルデバイスからのPC操作
  • アクセシビリティ支援
  • AIアシスタントによる自動化タスクの実行

📦 インストール方法

  1. Minicondaのインストール: 公式ウェブサイトからMinicondaをインストールします。(Python 3.11以上が必要です)
  2. リポジトリのクローン: Conda Terminal を開き、以下のコマンドを実行します。
    git clone https://github.com/showlab/computer_use_ootb.git
    cd computer_use_ootb
    
  3. 依存関係のインストール: 以下のコマンドを実行します。
    pip install -r dev-requirements.txt
    
  4. インターフェースの起動: 以下のコマンドを実行します。
    python app.py
    
    ターミナルにローカルURLとパブリックURLが表示されます。パブリックURLは他者と共有しないように注意してください。

🔧 使用方法

  1. ローカルURL (http://127.0.0.1:7860) またはパブリックURLをブラウザで開きます。
  2. Anthropic APIキーを入力します。( Anthropicコンソール で取得できます)
  3. 自然言語コマンドを入力して、AIにタスクを実行させます。

📈 パフォーマンスと特徴

  • 高解像度対応: 従来の解像度制限を克服し、高解像度スクリーンショットでも低コストを実現しています。
  • クロスプラットフォーム: WindowsとmacOSの両方で動作します。
  • モバイルフレンドリー: モバイルデバイスからの操作も容易です。
  • コスト効率: 高解像度対応により、スクリーンショットのコストを抑えることができます。(ただし、タスクによっては高額になる可能性もあります)
  • 安全性: モデルの出力は常に監視する必要があります。予期せぬ動作や有害な出力の可能性があることに注意してください。

🌟 まとめ

Computer Use - OOTB は、Claude API を活用した革新的なPCリモート制御ツールです。Gradio の直感的なインターフェースとクロスプラットフォーム対応により、誰でも簡単に利用できます。高解像度スクリーンショットへの対応とコスト効率の高さも大きな魅力です。ただし、AIモデルの潜在的なリスクを理解し、適切な監視を行うことが重要です。今後の開発では、より多くのLLMへの対応や、プロンプトエンジニアリングの最適化などが予定されています。

リポジトリ

https://github.com/showlab/computer_use_ootb

<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Discussion