
Java代理开发工具包的最新版本0.2.0集成了大语言模型框架 LangChain4j,显著扩展了其功能,使其能够支持该框架所支持的所有大语言模型。
在集成 LangChain4j 之前,该 Java ADK 仅支持两个模型,谷歌的 Gemini 和 Anthropic 的 Claude。这与 Python ADK 形成了鲜明的对比,后者通过LiteLLM提供了更广泛的支持。有了 LangChain4j,Java 开发者现在可以使用来自 OpenAI、Anthropic、Mistral 的模型,以及 Ollama 或Docker Model Runner支持的所有模型,如 Gemma、Qwen、Phi等。
谷歌开发者关系工程师 Guillaume Laforge 是 LangChain4j 的贡献者之一,也是将其集成到 ADK 的幕后开发者之一。他解释说,LangChain4j使得在多代理场景中混合使用多种模型成为可能。这可以通过代理工具实现,它们允许一个代理像使用工具一样使用另一个代理。
在多代理场景中混合使用不同的模型非常有趣,因为你可以针对要完成的工作选择最佳模型。也许你需要使用一个速度超级快的模型来执行一个简单的分类任务,从而根据请求进行路由,或者你需要使用一个更为强大的模型来执行需要依赖于更高级思考的主任务(如 Gemini 2.5 思维模型)。
Laforge 还提供了一个基本实现,主代理基于 Claude,工具代理使用 OpenAI 提供天气信息。在将两个代理实例化之后,我们分别称之为 weatherAgent 和 claudeModel,就可以通过如下方式实例化一个代理来组合它们:
除了集成 LangChain4j 之外,ADK 0.2.0 还引入了一系列重大增强,旨在提高工具能力和代理性能。在代理工具方面,它增加了从对象实例创建 FunctionTools 的支持,改进了异步工具操作,并为代理执行提供了更精细的编程控制。在代理逻辑和内存方面,它通过回调链和新引入的内存管理原语加强了逻辑和内存处理,为控制代理存储、检索和处理信息的方式提供了更大的灵活性。
作为今年早些时候推出的更大的代理开发工具包的一部分,Java ADK 仍处于早期阶段。要开始使用 Java ADK,请查看入门指南,或在 GitHub 上创建Laforge模板项目的分叉。
原文链接:
评论