agentscope-ai / agentscope-ai/agentscope-java

引入AgentScope A2a后nacos需要重复配置问题

Aperta
#1,381 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
area/ext/integration bug
Lingua principale
Java
Stelle
5.6k
Fork
1.3k
Merge medio
4g 12h
PR unite (30g)
77

Descrizione

这个配置类AgentscopeA2aNacosAutoConfiguration
里面调用a2aNacosProperties.getNacosProperties()导致我需要配置两遍nacos的信息
`
private AiService a2aService(
AgentScopeNacosProperties nacosProperties,
AgentScopeA2aNacosProperties a2aNacosProperties)
throws NacosException {
Properties nacosClientProperties = nacosProperties.getNacosProperties();
// 用于getNacosProperties方法里面会设置默认值,调用putAll方法后会把nacosProperties里面的SERVER_ADDR和NAMESPACE配置覆盖掉
nacosClientProperties.putAll(a2aNacosProperties.getNacosProperties());
return AiFactory.createAiService(nacosClientProperties);
}
`

`
public Properties getNacosProperties() {
Properties result = getExplicitNacosProperties();
result.putIfAbsent(PropertyKeyConst.SERVER_ADDR, DEFAULT_ADDRESS);
result.putIfAbsent(PropertyKeyConst.NAMESPACE, DEFAULT_NAMESPACE);
return result;
}
`

`
agentscope:
nacos:
prompt:
enabled: true
sys-prompt-key: ceair-ai-master-sys-prompt
version: 1.0
label: latest
server-addr: ${NACOS_ADDRESS}
namespace: ${NACOS_NAMESPACE}
username: ${NACOS_USERNAME}
password: ${NACOS_PASSWORD}
properties:
logAllProperties: true
a2a:
server:
enabled: true
card:
name: test-agent
description: 测试智能体。
nacos:
server-addr: ${NACOS_ADDRESS}
namespace: ${NACOS_NAMESPACE}
`

解决方案:参考AgentscopeNacosPromptAutoConfiguration将调用.getNacosProperties()方法替换成getExplicitNacosProperties()方法。

`
public AiService agentscopePromptAiService(
AgentScopeNacosProperties nacosProperties,
AgentScopeNacosPromptProperties promptNacosProperties)
throws NacosException {
Properties result = nacosProperties.getNacosProperties();
result.putAll(promptNacosProperties.getExplicitNacosProperties());
return AiFactory.createAiService(result);
}
`

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.