Observed since 20 Oct, 23:16 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
LangGraphによるワークフロー構築を支援するエージェントツール agentsarcadia
Agents Arcadia は、LLM(Large Language Model)を活用した柔軟なワークフロー自動化フレームワークです。
本プロジェクトは、LangGraph と langchain-openai を活用し、ユーザーのリクエストに基づいた動的な処理やツール呼び出しを実現します。
例えば、足し算、割り算(ゼロ除算エラーチェック付き)、数値比較といった基本的なツールを組み合わせることで、記事自動投稿やその他自動化シナリオへの応用が可能です。
モジュール化された構成:
nodes, prompts, states, tools, workflows などのディレクトリに機能が分割され、拡張性と保守性を向上。
LLM による動的判断:
langchain-openai を利用して、ユーザーリクエストに応じたツールの呼び出しや分岐処理を自動化します。
ツールの統合:
足し算、割り算、数値比較などのツールを標準装備。各ツールは柔軟に拡張可能です。
柔軟なワークフロー設計:
LangGraph を用いた分岐やエラーハンドリングを含む複雑なワークフローの構築が容易です。
PyPI で公開されている場合、以下のコマンドでインストールできます:
pip install agentsarcadia
以下は、簡単なワークフローを実行する例です。
この例では、ユーザーリクエストに基づき、LLM の判断を経て適切なツール(例:足し算)が呼び出されます。
import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
from agentsarcadia.tools.add import add_tool
from agentsarcadia.tools.divide import divide_tool
from agentsarcadia.tools.compare_num import compare_tool
from agentsarcadia.tool_registry import ToolRegistry
from agentsarcadia.workflows.simple_flow import create_simple_workflow
from agentsarcadia.prompts.calculate import get_prompt
# .envファイルから環境変数を読み込む
load_dotenv()
# ChatOpenAIの初期化(temperature=0 で決定的な応答)
# 環境変数からAPIキーを取得
llm = ChatOpenAI(temperature=0, model_name="gpt-4o-mini", api_key=os.environ.get("OPENAI_API_KEY"))
# プロンプトを取得
prompt = get_prompt()
def setup_tools():
"""利用可能なツールを設定する"""
tool_registry = ToolRegistry()
tool_registry.register_tools({
"足し算": add_tool,
"割り算": divide_tool,
"数値比較": compare_tool,
})
return tool_registry
if __name__ == "__main__":
# ユーザーからのリクエスト例
# user_request = "3.11と3.9はどちらが大きいですか?"
# user_request = "3と5を足してください"
user_request = "10と3で割り算してください"
# ツールの設定
tool_registry = setup_tools()
# ワークフローの構築
graph = create_simple_workflow(llm, prompt, tool_registry)
graph.get_graph().draw_mermaid_png(output_file_path="workflow.png")
# 初期状態の作成
initial_state = {"user_request": user_request}
# ワークフローの実行
result = graph.invoke(initial_state)
print("最終結果:", result["result"])
詳細なサンプルコードは、sample ディレクトリ内のコードもご参照ください。
本プロジェクトへの貢献を歓迎します。
詳細は CONTRIBUTING.md をご確認ください。
このプロジェクトは MIT License の下で公開されています。
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.4 | 23 Mar 2025 | 3 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 23:16 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:1a7af0ab1e78d9e3c90e9ee96519fb16a8c1e8c1baf27806d9232204c1f30ce1