更新时间:2024-08-29 GMT+08:00
实例化Agent
- Agent实例化过程包括注册LLM和注册工具两个部分。
import com.huaweicloud.pangu.dev.sdk.agent.ReactPanguAgent; import com.huaweicloud.pangu.dev.sdk.api.llms.LLMs; public static void initAgent() { LLM llm = LLMs.of(LLMs.PANGU, LLMConfig.builder() .llmParamConfig(LLMParamConfig.builder().temperature(0.01).build()) .llmModuleConfig( LLMModuleConfig.builder().systemPrompt("今天的日期为2024.7.30").moduleVersion("N2_agent_v2").build()) .build()); Agent panguAgent = new ReactPanguAgent(llm); agent.setMaxIterations(5); agent.addTool(new ReverseTool()); agent.addTool(new AddTool()); agent.addTool(new SearchTool()); }
- 静态工具和动态工具的注册方式相同,通过addTool接口进行注册。
- 通过setMaxIterations可以设置最大迭代次数,控制Agent子规划的最大迭代步数,防止无限制的迭代或出现死循环情况。
- Agent使用的模型必须为Pangu-NLP-N2-Default模型,或其衍生模型,使用通用模型或其他模型无法运行。当前的moduleVersion需要配置为“N2_agent_v2”,如上例所示,因此模型的url要配置为Pangu-NLP-N2-Default模型的地址。
- 支持注册开源模型,开源模型的定义可参考开源模型。
final LLM llm = LLMs.of(LLMs.OPENAI, LLMConfig.builder() .llmParamConfig(LLMParamConfig.builder().temperature(0.0).build()) .llmModuleConfig( LLMModuleConfig.builder().systemPrompt("今天的日期为2024.7.30").moduleVersion("expert_q4").build()) .build()); Agent agent = new ReactAgent(llm);
父主题: Agent(智能代理)