Skip to content

Latest commit

 

History

History
396 lines (284 loc) · 34.2 KB

README_JA.md

File metadata and controls

396 lines (284 loc) · 34.2 KB

English | 中文 | 日本語

AgentScope

agentscope-logo

LLMを活用したマルチエージェントアプリケーションをより簡単に構築する。

  • 私たちの仕事が役に立った場合は、論文を引用してください。

  • agentscope.ioにアクセスして、ドラッグアンドドロップでマルチエージェントアプリケーションを構築してください。

  • 私たちのコミュニティに参加してください
Discord DingTalk

ニュース

  • new[2024-09-06] AgentScopeバージョン0.1.0がリリースされました。

  • new[2024-09-03] AgentScopeはWebブラウザ制御をサポートしています。詳細については、を参照してください。

Web_broswing_demo.mp4
agentscope-logo agentscope-logo
  • new[2024-07-15] AgentScopeはMixture-of-Agentsアルゴリズムを実装しました。詳細については、MoAの例を参照してください。

  • [2024-06-14] 新しいプロンプトチューニングモジュールがAgentScopeに追加され、開発者がエージェントのシステムプロンプトを生成および最適化するのに役立ちます。詳細については、チュートリアルを参照してください。

  • [2024-06-11] RAG機能がAgentScopeに追加されました。エージェントに外部知識を装備するためのAgentScopeのRAGの簡単な紹介を参照してください。

  • [2024-06-09] AgentScope v0.0.5がリリースされました。この新しいバージョンでは、AgentScope Workstation(オンラインバージョンはagentscope.ioで実行されています)がリファクタリングされたAgentScope Studioとともにオープンソース化されました。

完全なニュース
  • [2024-05-24] AgentScope Workstationに関連する機能がまもなくオープンソース化されることをお知らせします。オンラインウェブサイトサービスは一時的にオフラインになっています。オンラインウェブサイトサービスはアップグレードされ、まもなく再開されます。お楽しみに...

  • [2024-05-15] フォーマットされた応答のための新しいパーサーモジュールがAgentScopeに追加されました。詳細については、チュートリアルを参照してください。DictDialogAgentおよび人狼ゲームの例も同時に更新されました。

  • [2024-05-14] 親愛なるAgentScopeユーザーの皆様、AgentScope Workstation & Copilotのユーザーエクスペリエンスに関するアンケートを実施しています。現在、AgentScopeのドラッグアンドドロップマルチエージェントアプリケーション開発とCopilotのエクスペリエンスを改善するために、貴重なフィードバックが必要です。フィードバックは貴重であり、アンケートには約3〜5分かかります。アンケート調査に参加するには、URLをクリックしてください。ご支援とご協力に感謝します。

  • [2024-05-14] AgentScopeはgpt-4oおよび他のOpenAIビジョンモデルをサポートしています。gpt-4oをモデル構成と新しい例Conversation with gpt-4oで試してください。

  • [2024-04-30] AgentScope v0.0.4がリリースされました。

  • [2024-04-27] AgentScope Workstationがオンラインになりました。ドラッグアンドドロッププラットフォームを使用してマルチエージェントアプリケーションを構築し、copilotにAgentScopeに関する質問をすることができます。

  • [2024-04-19] AgentScopeはLlama3をサポートしています。クイックセットアップのためのスクリプトモデル構成を提供しています。例でllama3を試してみてください。

  • [2024-04-06] AgentScope v0.0.3がリリースされました。

  • [2024-04-06] 新しい例五目並べReActエージェントとの会話RAGエージェントとの会話、および分散並列最適化が利用可能になりました。

  • [2024-03-19] AgentScope v0.0.2がリリースされました。この新しいバージョンでは、AgentScopeはollama(ローカルCPU推論エンジン)、DashScopeおよびGoogleGeminiAPIをサポートしています。

  • [2024-03-19] 新しい例「メンション付きの自律会話」および「LangChainライブラリを使用した基本的な会話」が利用可能になりました。

  • [2024-03-19] AgentScopeの中国語チュートリアルがオンラインになりました。

  • [2024-02-27] AgentScope v0.0.1がリリースされました。これはPyPIでも利用可能です。

  • [2024-02-14] 私たちは論文「AgentScope: A Flexible yet Robust Multi-Agent Platform」をarXivに発表しました。


AgentScopeとは?

AgentScopeは、開発者が大規模モデルを使用してマルチエージェントアプリケーションを構築する能力を提供する革新的なマルチエージェントプラットフォームです。 それは3つの高レベルの機能を備えています:

  • 🤝 使いやすさ:開発者向けに設計されており、豊富なコンポーネント包括的なドキュメント、および広範な互換性を提供します。さらに、AgentScope Workstationは、初心者向けのドラッグアンドドロッププログラミングプラットフォームcopilotを提供します。

  • 高い堅牢性:カスタマイズ可能なフォールトトレランス制御と再試行メカニズムをサポートし、アプリケーションの安定性を向上させます。

  • 🚀 アクターベースの分散:集中型プログラミング方式で分散マルチエージェントアプリケーションを構築し、開発を簡素化します。

サポートされているモデルライブラリ

AgentScopeは、ローカルモデルサービスとサードパーティのモデルAPIの両方をサポートするためのModelWrapperのリストを提供します。

API タスク モデルラッパー 構成 サポートされているモデルの一部
OpenAI API チャット OpenAIChatWrapper ガイダンス
テンプレート
gpt-4o, gpt-4, gpt-3.5-turbo, ...
埋め込み OpenAIEmbeddingWrapper ガイダンス
テンプレート
text-embedding-ada-002, ...
DALL·E OpenAIDALLEWrapper ガイダンス
テンプレート
dall-e-2, dall-e-3
DashScope API チャット DashScopeChatWrapper ガイダンス
テンプレート
qwen-plus, qwen-max, ...
画像生成 DashScopeImageSynthesisWrapper ガイダンス
テンプレート
wanx-v1
テキスト埋め込み DashScopeTextEmbeddingWrapper ガイダンス
テンプレート
text-embedding-v1, text-embedding-v2, ...
マルチモーダル DashScopeMultiModalWrapper ガイダンス
テンプレート
qwen-vl-max, qwen-vl-chat-v1, qwen-audio-chat
Gemini API チャット GeminiChatWrapper ガイダンス
テンプレート
gemini-pro, ...
埋め込み GeminiEmbeddingWrapper ガイダンス
テンプレート
models/embedding-001, ...
ZhipuAI API チャット ZhipuAIChatWrapper ガイダンス
テンプレート
glm-4, ...
埋め込み ZhipuAIEmbeddingWrapper ガイダンス
テンプレート
embedding-2, ...
ollama チャット OllamaChatWrapper ガイダンス
テンプレート
llama3, llama2, Mistral, ...
埋め込み OllamaEmbeddingWrapper ガイダンス
テンプレート
llama2, Mistral, ...
生成 OllamaGenerationWrapper ガイダンス
テンプレート
llama2, Mistral, ...
LiteLLM API チャット LiteLLMChatWrapper ガイダンス
テンプレート
litellmがサポートするモデル...
Yi API チャット YiChatWrapper ガイダンス
テンプレート
yi-large, yi-medium, ...
Post Request based API - PostAPIModelWrapper ガイダンス
テンプレート
-

サポートされているローカルモデルのデプロイ

AgentScopeは、次のライブラリを使用してローカルモデルサービスを迅速にデプロイするためのサポートを提供します。

サポートされているサービス

  • ウェブ検索
  • データクエリ
  • 検索
  • コード実行
  • ファイル操作
  • テキスト処理
  • マルチモーダル生成
  • Wikipedia検索と検索
  • TripAdvisor検索
  • ウェブブラウザ制御

例のアプリケーション

さらに多くのモデル、サービス、および例が近日公開予定です。

インストール

AgentScopeはPython 3.9以上が必要です。

注:このプロジェクトは現在アクティブに開発中であり、AgentScopeをソースからインストールすることをお勧めします。

ソースから

  • AgentScopeを編集モードでインストールします:
# GitHubからソースコードを取得
git clone https://github.com/modelscope/agentscope.git

# パッケージを編集モードでインストール
cd agentscope
pip install -e .

pipを使用

  • pipからAgentScopeをインストールします:
pip install agentscope

追加の依存関係

さまざまなデプロイメントシナリオをサポートするために、AgentScopeはいくつかのオプションの依存関係を提供します。オプションの依存関係の完全なリストは、チュートリアルを参照してください。分散モードを例にとると、次のように依存関係をインストールできます:

Windowsの場合

# ソースから
pip install -e .[distribute]
# pypiから
pip install agentscope[distribute]

Mac & Linuxの場合

# ソースから
pip install -e .\[distribute\]
# pypiから
pip install agentscope\[distribute\]

クイックスタート

構成

AgentScopeでは、モデルのデプロイメントと呼び出しはModelWrapperによってデカップリングされています。

これらのモデルラッパーを使用するには、次のようなモデル構成ファイルを準備する必要があります。

model_config = {
    # 構成の識別子と使用されるモデルラッパー
    "config_name": "{your_config_name}",          # 構成を識別する名前
    "model_type": "{model_type}",                 # モデルラッパーを識別するタイプ

    # モデルラッパーを初期化するための詳細なパラメータ
    # ...
}

OpenAI Chat APIを例にとると、モデル構成は次のようになります:

openai_model_config = {
    "config_name": "my_openai_config",             # 構成を識別する名前
    "model_type": "openai_chat",                   # モデルラッパーを識別するタイプ

    # モデルラッパーを初期化するための詳細なパラメータ
    "model_name": "gpt-4",                         # OpenAI APIで使用されるモデル名(例:gpt-4、gpt-3.5-turboなど)
    "api_key": "xxx",                              # OpenAI APIのAPIキー。設定されていない場合、環境変数OPENAI_API_KEYが使用されます。
    "organization": "xxx",                         # OpenAI APIの組織。設定されていない場合、環境変数OPENAI_ORGANIZATIONが使用されます。
}

ローカルモデルサービスのセットアップ方法やモデル構成の準備方法の詳細については、チュートリアルを参照してください。

エージェントの作成

次のように組み込みのユーザーエージェントとアシスタントエージェントを作成します。

from agentscope.agents import DialogAgent, UserAgent
import agentscope

# モデル構成を読み込む
agentscope.init(model_configs="./model_configs.json")

# ダイアログエージェントとユーザーエージェントを作成する
dialog_agent = DialogAgent(name="assistant",
                           model_config_name="my_openai_config")
user_agent = UserAgent()

会話の構築

AgentScopeでは、メッセージはエージェント間の橋渡しであり、dictであり、2つの必要なフィールドnamecontent、およびローカルファイル(画像、ビデオ、またはオーディオ)またはウェブサイトへのオプションのフィールドurlを含みます。

from agentscope.message import Msg

x = Msg(name="Alice", content="Hi!")
x = Msg("Bob", "What about this picture I took?", url="/path/to/picture.jpg")

次のコードを使用して、2つのエージェント(例:dialog_agentとuser_agent)間の会話を開始します:

x = None
while True:
    x = dialog_agent(x)
    x = user_agent(x)
    if x.content == "exit":  # ユーザーが"exit"と入力して会話を終了する
        break

AgentScope Studio

AgentScopeは、テキスト、画像、オーディオ、ビデオなどのマルチモーダル出力をフロントエンドで表示できる使いやすいランタイムユーザーインターフェースを提供します。

詳細については、チュートリアルを参照してください。

agentscope-logo

チュートリアル

ライセンス

AgentScopeはApache License 2.0の下でリリースされています。

貢献

貢献は常に歓迎されます!

公式バージョンと比較して、追加のプリコミットフックを使用してチェックを実行する開発者バージョンを提供します:

# Windowsの場合
pip install -e .[dev]
# Macの場合
pip install -e .\[dev\]

# プリコミットフックをインストール
pre-commit install

詳細については、貢献ガイドを参照してください。

出版物

私たちの仕事があなたの研究やアプリケーションに役立つ場合は、私たちの論文を引用してください。

  1. AgentScope: A Flexible yet Robust Multi-Agent Platform

    @article{agentscope,
        author  = {Dawei Gao and
                   Zitao Li and
                   Xuchen Pan and
                   Weirui Kuang and
                   Zhijian Ma and
                   Bingchen Qian and
                   Fei Wei and
                   Wenhao Zhang and
                   Yuexiang Xie and
                   Daoyuan Chen and
                   Liuyi Yao and
                   Hongyi Peng and
                   Ze Yu Zhang and
                   Lin Zhu and
                   Chen Cheng and
                   Hongzhu Shi and
                   Yaliang Li and
                   Bolin Ding and
                   Jingren Zhou}
        title   = {AgentScope: A Flexible yet Robust Multi-Agent Platform},
        journal = {CoRR},
        volume  = {abs/2402.14034},
        year    = {2024},
    }