[OSS紹介#27] Suna:AIアシスタントが日常業務を効率的にサポートする方法

この記事について

この記事では、オープンソースソフトウェア(OSS)の新星「Suna」を紹介します。この記事はシリーズの第27回にあたります。最近のデジタル環境においては、効率的なタスク処理が求められる場面が増えており、その中でAIアシスタントの役割はますます重要になっています。特に、手軽に利用できるOSSのAIツールは、ユーザーがニーズに応じた柔軟な対応を行う上で大きな助けとなります。

「Suna」は、自然な会話を通じてユーザーの様々なタスクをサポートする、オープンソースのAIアシスタントです。リサーチからデータ分析、日常の課題解決まで、幅広い機能を持つSunaは、わかりやすいインターフェースを通じて、求める結果を素早く提供します。業務の効率化やプロジェクト管理をサポートし、特に小規模なチームや個人にとっては、リソースを最適化する強力なツールとなるでしょう。

このブログ記事では、Sunaの機能や活用方法を具体的なユースケースを交えながら解説していきます。どのようにして日常の業務を軽減し、より生産的な活動につなげられるのかを探っていきましょう。

リンク:https://github.com/kortix-ai/suna


本コンテンツは、弊社AI開発ツール「IXV」を用いたOSSツール紹介です。情報の正確性には努めておりますが、内容に誤りが含まれる可能性がございますのでご了承ください。

1. Sunaでできること

Sunaは、日常のタスクを簡単にこなすための完全なオープンソースAIアシスタントです。自然な会話を通じて、調査やデータ分析、日々の課題を解決するためのデジタルコンパニオンとなります。以下は、Sunaの主な機能です。

  • ブラウザ自動化: ウェブをナビゲートし、データを抽出するためのシームレスなブラウザ自動化機能を提供します。
  • ファイル管理: 文書の作成や編集を行うためのファイル管理機能を利用できます。
  • ウェブクロールと検索機能: 拡張された検索能力を活用して、必要な情報を迅速に見つけ出します。
  • コマンドライン実行: システムタスクを効率的に実行するためのコマンドラインインターフェースを提供します。
  • ウェブサイトのデプロイ: ウェブアプリケーションを簡単にデプロイする機能があります。
  • APIとの統合: さまざまなAPIやサービスと統合することで、複雑な問題を解決し、ワークフローを自動化します。

2. セットアップ手順

Sunaは、自分のインフラでセルフホスティングすることができます。以下の手順に従って、自分のインスタンスを設定してください。

2.1 要件

  • Supabaseプロジェクト(データベースおよび認証用)
  • Redisデータベース(キャッシュとセッション管理用)
  • Daytonaサンドボックス(安全なエージェント実行用)
  • Python 3.11(APIバックエンド)
  • LLMプロバイダー用のAPIキー(Anthropicなど)
  • Tavily APIキー(検索機能向上用)
  • Firecrawl APIキー(ウェブスクレイピング用)

2.2 前提条件

  1. Supabase:
    • 新しいSupabaseプロジェクトを作成します。
    • プロジェクトのAPI URL、anonキー、サービスロールキーを保存します。
    • Supabase CLIをインストールします。
  2. Redis:
    • /backendフォルダに移動し、docker compose up redisを実行します。
  3. Daytona:
    • Daytonaにアカウントを作成し、APIキーを生成します。
    • Imagesでkortix/suna:0.1.2を追加します。
  4. LLM APIキー:
    • AnthropicからAPIキーを取得します。
  5. 検索APIキー(オプション):
    • Tavily APIキーを取得します。
  6. RapidAPI APIキー(オプション):
    • 各サービスをRapidAPIで有効化します。

2.3 インストール手順

  • リポジトリをクローンします。
git clone https://github.com/kortix-ai/suna.git
cd suna
  • バックエンド環境を設定します。

.envファイルを編集し、必要な資格情報を入力します。

cd backend
cp .env.example .env
  • Supabaseデータベースを設定します。
supabase login
supabase link --project-ref your_project_reference_id
supabase db push
  • フロントエンド環境を設定します。

.env.localファイルを編集します。

cd ../frontend
cp .env.example .env.local
  • 依存関係をインストールします。
    フロントエンドの依存関係をインストールします。
cd frontend
npm install
  • バックエンドの依存関係をインストールします。
cd ../backend
poetry install
  • アプリケーションを開始します。

別々のターミナルで、フロントエンドとバックエンドをそれぞれ起動します。

  • Sunaにアクセスします。
    ブラウザで`http://localhost:3000`に移動し、Supabase認証を使用してアカウントを作成します。

3. 簡単な使い方

Sunaを使用するためには、インターフェースから自然な言葉で命令を入力します。以下は、一般的な使用例です。

  • 競合分析: 市場の主要プレイヤーを特定し、PDFレポートを生成します。
  • 候補者探し: LinkedInから条件に合った候補者を探索します。
  • 旅行計画: 旅行のルートやアクティビティを提案します。

これらの機能を通じて、Sunaは複雑な問題を解決し、効率的なワークフローを実現します。

4. 結論

Sunaは、オープンソースのAIアシスタントとして、多様なタスクを簡単にこなすための強力なツールです。ブラウザ自動化、ファイル管理、API統合などの機能を駆使し、ユーザーは自分のニーズに応じた解決策を得ることができます。セルフホスティングの手順も明確で、エンジニアリングに精通したユーザーにとって、非常に魅力的な選択肢となるでしょう。