agentscope-ai / agentscope-ai/agentscope-java

[Bug]:Agent As Tool + A2A形式调用远程子智能体时,Msg中的metadata信息丢失。

オープン
#680 コメント 6 件 リアクション 0 件 担当者 1 名 @Wzy19930507 が担当を希望しています GitHub で見る
area/core/agent area/ext/integration bug
主要言語
Java
スター
5.6k
フォーク
1.3k
平均マージ
4日 12時間
マージ済み PR(30日)
77

説明

Agent As Tool + A2A形式调用远程子智能体时,Msg中的metadata信息丢失。但如果客户端直接A2A调用时,Msg中的metadata信息可以正确传输。
客户端代码
Agent As Tool + A2A形式调用
```
Toolkit toolkit = new Toolkit();
toolkit.registration()
.subAgent(() -> A2aAgent.builder()
.name("timeExpert")
.agentCardResolver(resolver)
.build())
.apply();
ReActAgent mainAgent = ReActAgent.builder()
.name("Coordinator")
.sysPrompt("你叫 Tom ,是一个智能助手。当遇到时间相关问题时,调用 call_timeexpert 工具咨询 Jarvis。")
.model(model)
.memory(new InMemoryMemory())
.toolkit(toolkit)
.build();
Msg userMsg = Msg.builder()
.textContent("请告诉我今天的日期。")
.metadata(Map.of("useriId", "1234567890"))
.build();
Msg response = mainAgent.call(userMsg).block();
```
服务端收到的请求中metadata无内容
Image

如果客户端直接A2A调用
```
A2aAgent agent = A2aAgent.builder()
.name("remote-agent")
.agentCardResolver(resolver)
.build();
Msg msg = Msg.builder()
.textContent("今天的日期是什么?")
.metadata(Map.of("userId", "1234567890"))
.build();
Msg response = agent.call(msg).block();
```
Image

这导致在主智能体调用远程子智能体时,无法通过Msg传输一些特定参数。

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。