Upsonicサンプル:Upsonicを使用したAIニュース分析の実装解説

AI開発

Upsonicとは

Upsonicは、企業向けのLLM(大規模言語モデル)オーケストレーションフレームワークです。以下の特徴を持っています:

主要な特徴

  1. Production-Ready設計

    • AWS、GCP、またはDockerを使用したローカル環境での展開が可能
    • ステートレスな企業向けアーキテクチャ
  2. タスク中心の設計

    • 基本的なLLM呼び出し
    • V1エージェントによる高度なタスク
    • MCPを統合したV2エージェントによる複雑な自動化
  3. 統合機能

    • MCPサーバーサポート(マルチクライアント処理)
    • ツール呼び出しサーバー
    • Computer Use統合(Anthropicの機能を使用)

サンプルコードの基本構造

from upsonic import UpsonicClient, Task, AgentConfiguration
from upsonic.client.tools import Search

# クライアント設定
client = UpsonicClient("localserver")
client.set_config("ANTHROPIC_API_KEY", api_key)
client.default_llm_model = "claude/claude-3-5-sonnet"

# タスクとエージェントの定義
task = Task(description="AnthropicとOpenAIの最新ニュースを調査する", tools=[Search])
product_manager_agent = AgentConfiguration(
    job_title="プロダクトマネージャー",
    company_url="https://upsonic.ai",
    company_objective="人々がタスクを完了するのを助けるAIエージェントフレームワークを構築する",
)

処理フローの詳細

Step 1: サーバー接続の確立

╭─────────────── Upsonic - Server Connection ────────────────╮
│  Server Type:                  Local(LocalServer)          │
│  Connection Status:            ✓ Established               │
╰────────────────────────────────────────────────────────────╯
  • ローカルサーバーに接続
  • APIキーの設定を確認

Step 2: 企業情報の分析

╭────────────────── Upsonic - Call Result ─────────────────╮
│  LLM Model:          claude/claude-3-5-sonnet            │
│  Company Objective:  Enterprise AI市場での展開           │
│  Estimated Cost:     ~0.0045$                            │
│  Time Taken:         4.34 seconds                        │
╰──────────────────────────────────────────────────────────╯
  • エージェントが会社の目的と文脈を理解
  • プロダクトマネージャーとしての視点を設定

Step 3: タスクの分解

╭────────────────── Upsonic - Call Result ─────────────────╮
│  Total Subtasks:   3                                     │
│  Subtask 1:        Anthropicニュース検索                 │
│  Subtask 2:        OpenAIニュース検索                    │
│  Subtask 3:        比較分析                             │
│  Time Taken:       6.16 seconds                         │
╰──────────────────────────────────────────────────────────╯
  • メインタスクを3つのサブタスクに分解
  • 各サブタスクに必要なツールを割り当て

Step 4: ニュース収集と分析

Anthropicニュース分析:

╭────────────────── Upsonic - Agent Result ────────────────╮
│  Result:           Anthropicの最新動向:                  │
│                    - Claude 3の発表                      │
│                    - 新機能の追加                       │
│  Time Taken:       26.05 seconds                        │
╰──────────────────────────────────────────────────────────╯

OpenAIニュース分析:

╭────────────────── Upsonic - Agent Result ────────────────╮
│  Result:           OpenAIの最新動向:                     │
│                    - GPT-4の更新                         │
│                    - 新サービスの展開                    │
│  Time Taken:       40.64 seconds                        │
╰──────────────────────────────────────────────────────────╯

Step 5: 最終レポート生成

╭────────────────── Upsonic - Agent Total Cost ────────────╮
│  Estimated Cost:                ~0.1825$                 │
│  Total Time Taken:              101.44 seconds          │
╰──────────────────────────────────────────────────────────╯

パフォーマンス分析

処理時間の内訳

  1. 企業情報分析: 4.34秒
  2. タスク分解: 6.16秒
  3. Anthropic分析: 26.05秒
  4. OpenAI分析: 40.64秒
  5. レポート生成: 17.73秒

コストの内訳

  • 企業情報: $0.0045
  • タスク分解: $0.0068
  • Anthropic分析: $0.0418
  • OpenAI分析: $0.1096
  • レポート生成: $0.0145
  • 総コスト: $0.1825

主な特徴

  1. 自動化されたワークフロー

    • タスクの自動分解
    • 並行した情報収集
    • 構造化されたレポート生成
  2. コスト効率

    • 必要な情報のみを収集
    • 効率的なAPI利用
    • リアルタイムのコスト追跡
  3. 品質管理

    • プロダクトマネージャーの視点での分析
    • 一貫した情報の構造化
    • 詳細なログ記録

このサンプルは、Upsonicを使用して複雑なニュース分析タスクを自動化する方法を示しており、企業のAI実装における実践的な例となっています。

リポジトリ

GitHub - Sunwood-ai-labs/upsonic-sample-001-news-digest-analyzer
Contribute to Sunwood-ai-labs/upsonic-sample-001-news-digest-analyzer development by creating an account on GitHub.

📚 参考資料

コメント

タイトルとURLをコピーしました