海外からのアクセス:www.kdjingpai.com
Ctrl + D このサイトをブックマークする

ZipAgentは、クリーンで効率的、そして容易に拡張可能な開発体験を提供することに重点を置いた、最新のPython AIエージェントフレームワークです。 軽量 "を念頭に設計されたこのフレームワークは、エージェントエンジン、ツールシステム、ダイアログ管理を含むフル機能のインテリジェンスシステムを、約700行のコアコードで実装しています。 これにより、開発者はわずか5分で独自のAIアシスタントを作り始めることができる。 ZipAgentはPythonバージョン3.10+をベースとし、非同期プログラミングをサポートし、ストリーミング出力、自動コンテキスト管理、Model Context Protocol (MCP)のネイティブサポートを含む最新の機能を提供します。 このプロジェクトには、コードの高い品質と安定性を保証する120以上のテストケースがあり、チャットボット、インテリジェントアシスタント、ワークフロー自動化、その他多くのアプリケーションシナリオの構築に適しています。

機能一覧

  • シンプルなAPIミニマリストの設計思想により、開発者はわずか数行のコードで基本的なAIエージェントを構築することができます。
  • ツーリングシステム強力な @function_tool 通常のPython関数をAIエージェントが呼び出せるツールに変換することで、その機能を簡単に拡張できるデコレーター。
  • ストリーミング出力ストリーミング・レスポンシブ・プロセッシングのフルサポートにより、タイプライターのようなリアルタイムのインタラクティブ体験が可能になり、ユーザー・エクスペリエンスが向上します。
  • コンテキスト管理複数の対話の履歴とステータスを自動的に管理・維持する機能により、開発者が複雑な対話ロジックを手作業で処理する必要がなくなります。
  • MCPインテグレーションモデル・コンテキスト・プロトコルのネイティブ・サポートにより、外部ツール(Goldmapなど)との統合が容易。
  • 近代化このプロジェクトはPython 3.10+をベースとしており、非同期プログラミングを全面的に採用することで、高いパフォーマンスと並行処理を実現しています。
  • 高品質のコードこのプロジェクトには120以上のテストケースがあり、コード・カバレッジは78%で、フレームワークの安定性と信頼性を保証しています。

ヘルプの使用

ZipAgentは、開発者がすぐに使用できるように設計されており、インストールと使用方法について以下に詳しく説明します。

1.環境の準備と設置

始める前に、開発環境にPython 3.10以降がインストールされていることを確認してください。

では pip コマンドを実行すると、ZipAgentのインストールが完了します:

pip install zipagent

2. 5分間のクイックスタート

一度インストールすれば、わずか3ステップで会話型AIアシスタントを作成できる。

ステップ1:ツールの定義
ZipAgent はシンプルなデコレータを使用します。 @function_tool Pythonの関数をツールに変えることができる。

例えば、数式を計算するツールを定義する:

from zipagent import function_tool
@function_tool
def calculate(expression: str) -> str:
"""这个工具用于计算一个数学表达式的值。"""
# 注意:eval函数有安全风险,这里仅为演示目的
return str(eval(expression))

関数内のドキュメント文字列(docstring)は非常に重要であり、エージェントはこの説明を使用して、ツールを使用するタイミングを決定します。

ステップ2:エージェントの作成
次に、エージェントインスタンスを作成し、それが誰であるか、タスクの指示、および使用できるツールを指示します。

from zipagent import Agent
agent = Agent(
name="MathAssistant",
instructions="你是一个非常厉害的数学助手,你需要使用工具来回答用户的数学问题。",
tools=[calculate] # 将刚才定义的工具列表传给Agent
)

ステップ 3: エージェントの実行とダイアログの開始
最後に Runner を実行し、結果を取得します。

from zipagent import Runner
# 向Agent提问
result = Runner.run(agent, "请帮我计算一下 (100 + 200) * 3 等于多少?")
# 打印Agent的回答
print(result.content)

実行すると、出力が表示される:

(100 + 200) * 3 的计算结果是900

この時点で、単純なAIエージェントが構築される。

3.コア機能の運用

A. ストリーミング出力の実現(タイプライター効果)

インタラクティブな体験を強化するには run_stream メソッドを使ってリアルタイムのストリーミング応答を得る。

from zipagent import Runner, StreamEventType
# 使用run_stream方法
stream = Runner.run_stream(agent, "简单解释一下什么是人工智能?")
# 遍历事件流
for event in stream:
if event.type == StreamEventType.ANSWER_DELTA:
# ANSWER_DELTA事件表示模型正在生成回答内容
print(event.content, end="", flush=True)
elif event.type == StreamEventType.TOOL_CALL:
# TOOL_CALL事件表示Agent正在调用工具
print(f"\n🔧 正在调用工具: {event.tool_name}...")

このコードは、モデルの答えをそのまま出力し、ツールを呼び出すときにエージェントにプロンプトを表示します。

B. 複数回の対話のコンテクストの管理

実際には、ユーザは通常エージェントと複数回の対話を行います。 Context このオブジェクトは、対話の履歴を自動的に管理する。

from zipagent import Context, Runner
# 创建一个上下文对象
context = Context()
# 第一轮对话
Runner.run(agent, "记住,我的名字叫小明。", context=context)
# 第二轮对话
result = Runner.run(agent, "现在,请问我叫什么名字?", context=context)
print(result.content) # 输出: "你叫小明"
# 你还可以查看对话的统计信息
print(f"当前对话轮数: {context.turn_count}")
print(f"累计使用的Token数量: {context.usage}")

同じ context で渡された run メソッドを使用すると、エージェントは前のダイアログの内容を記憶することができます。

C. 外部ツールの統合(MCP)

ZipAgentは エムシーピー プロトコルを使用して、外部で公開されているツールサービスに接続し、使用することができます。

import asyncio
from zipagent import MCPTool, Agent, Runner
async def main():
# 假设有一个高德地图的MCP服务在运行
# 这里使用npx启动一个示例服务
amap_tools = await MCPTool.connect(
command="npx",
args=["-y", "@amap/amap-maps-mcp-server"],
env={"AMAP_MAPS_API_KEY": "填写你的高德API密钥"}
)
# 将MCP工具和本地工具混合使用
map_agent = Agent(
name="MapAssistant",
instructions="你是一个地图和天气查询助手。",
tools=[amap_tools] # MCP工具的接口与本地工具完全一样
)
result = Runner.run(map_agent, "查询一下中国北京市今天的天气怎么样?")
print(result.content)
# 运行异步函数
asyncio.run(main())```
### **4. 高级功能**
**A. 自定义模型配置**
默认情况下,ZipAgent 使用 OpenAI 的模型。你也可以轻松更换成其他模型或自定义配置。
```python
from zipagent import OpenAIModel
# 自定义模型,例如使用gpt-4,并指定API地址
custom_model = OpenAIModel(
model="gpt-4",
api_key="你的API Key",
base_url="你的代理API地址或官方地址"
)
# 在创建Agent时传入自定义模型
custom_agent = Agent(
name="CustomAgent",
instructions="...",
tools=[],
model=custom_model
)

B. 例外処理
エージェントと対話するとき、ツールの実行に失敗したり、ダイアログがデッドループに陥ったりといった問題が発生するかもしれません。

from zipagent import ToolExecutionError, MaxTurnsError
try:
# 设定最大对话轮数为3,防止无限循环
result = Runner.run(agent, "计算 10 / 0", max_turns=3)
except ToolExecutionError as e:
# 捕获工具执行失败的异常
print(f"工具 '{e.details['tool_name']}' 执行失败: {e}")
except MaxTurnsError as e:
# 捕获超出最大轮次的异常
print(f"对话已达到最大轮次 {e.details['max_turns']},已自动终止。")

アプリケーションシナリオ

  1. インテリジェントなカスタマーサービス
    ユーザーからのよくある質問に自動で回答したり、注文状況を確認したり、アフターセールスの申し込みに対応したりするインテリジェントなカスタマーサービスロボットを構築することが可能です。社内のAPIをツールとして統合することで、Agentはより複雑なビジネスオペレーションを行うことができます。
  2. コード開発アシスタント
    コード・スニペットの生成、コード品質のレビュー、一般的なバグの修正、要件文書に基づくテストケースの自動生成などを支援するコーディング・パートナーを開発者に提供する。
  3. 自動データ分析
    データ照会、処理、視覚化のためのスクリプトは、エージェントがデータ分析タスクを自動化し、ユーザーの自然言語コマンドに基づいて分析レポートを生成することを可能にするツールにカプセル化されています。
  4. ワークフローの自動化
    複数のツールやサービスをスケジューリングして、電子メールから添付ファイルを抽出し、コンテンツを読み取り、分析し、最終的に指定されたオンラインドキュメントに結果をまとめるといった複雑なマルチステップタスクを自動化できるエージェントを設計する。
  5. エンタープライズ・ナレッジ・ベースQ&A
    社内のナレッジベースやデータベースに接続し、インテリジェントなQ&Aシステムを構築します。従業員は自然言語で質問をすることができ、エージェントは関連情報を検索し、正確な回答を提供します。

品質保証

  1. ZipAgentとは?
    ZipAgentはPythonで書かれた軽量のAIエージェントフレームワークです。シンプルなコードと拡張のしやすさが特徴で、開発者が数分でツールの呼び出しやダイアログの管理、その他の機能を備えた独自のAIアシスタントを素早く構築するのに役立ちます。
  2. ZipAgentを利用するのにお金はかかりますか?
    ZipAgentフレームワーク自体はオープンソースであり、MITライセンスの下でフリーであるため、自由に使用、修正、配布することができます。 しかしながら、Agentは内部的に大規模な言語モデル(例えばOpenAIのGPTファミリー)を呼び出す必要があり、これらのモデルサービスを利用するには通常APIコール料金が必要であることに注意してください。
  3. 使用するにはどのような技術的背景が必要ですか?
    Pythonプログラミングの基礎知識が必要です。関数、クラス、デコレータの概念を理解していると非常に役立ちます。外部ツールの統合など、より高度な開発を行いたい場合は、非同期プログラミング(async/await)を理解している方が良いでしょう。
  4. どのような言語モデルをサポートしていますか?
    ZipAgentはOpenAIモデルをビルトインでサポートしています。同時に、ZipAgentのモデルレイヤーは抽象化されており、モデルクラスをカスタマイズすることで、Google GeminiやAnthropicのような他の大規模言語モデルにアクセスすることができます。 クロード その他
0ブックマークに登録
0表彰される

おすすめ

AIツールが見つからない?こちらをお試しください!

キーワードを入力する アクセシビリティこのサイトのAIツールセクションは、このサイトにあるすべてのAIツールを素早く簡単に見つける方法です。

最新のAIツール

トップに戻る

ja日本語