© 2026FindAgent  · @simprr
返回列表
a

agentscope-ai/agentscope-java

AgentScope Java: Agent-Oriented Programming for Building LLM Applications

agentagenticagentic-aiaillm
⭐

2.3k

Stars

🔱

461

Forks

👁

21

Watchers

📋

248

Issues

Java创建于 2025/9/23更新于 今天
在 GitHub 上查看访问主页
README
由 Gemini 翻译整理

AgentScope Java: 面向智能体(Agent)编程,构建 LLM 应用


📖 文档  |  中文  |  Discord

AgentScope Java 是一个面向智能体(Agent-Oriented)的编程框架,旨在构建基于大语言模型(LLM)的应用程序。它提供了创建智能 Agent 所需的一切:ReAct 推理、工具调用、记忆管理、多智能体协作等。

核心亮点

🎯 智能 Agent,全面掌控

AgentScope 采用了 ReAct(推理-行动)范式,使 Agent 能够自主规划并执行复杂任务。与僵化的基于工作流的方法不同,ReAct Agent 可以动态决定使用哪些工具以及何时使用,从而实时适应不断变化的需求。

然而,在生产环境中,缺乏控制的自主性会带来风险。AgentScope 提供了全面的运行时干预机制:

  • 安全中断 (Safe Interruption) - 在保留完整上下文和工具状态的同时,随时暂停 Agent 执行,实现无数据丢失的平滑恢复。
  • 优雅取消 (Graceful Cancellation) - 终止长期运行或无响应的工具调用,且不会损坏 Agent 状态,允许立即恢复和任务重定向。
  • 人在回路 (Human-in-the-Loop) - 通过 Hook 系统在任何推理步骤中注入修正、附加上下文或指导,确保人类对关键决策的监督。

🛠️ 内置工具

AgentScope 包含生产级的工具,解决了 Agent 开发中的常见难题:

  • PlanNotebook - 一种结构化的任务管理系统,将复杂目标分解为有序、可追踪的步骤。Agent 可以创建、修改、暂停和恢复多个并发计划,确保多步工作流的系统化执行。

  • 结构化输出 (Structured Output) - 一种自修正输出解析器,保证类型安全的响应。当 LLM 输出偏离预期格式时,系统会自动检测错误并引导模型生成有效输出,直接映射到 Java POJO,无需手动解析。

  • 长期记忆 (Long-term Memory) - 具有跨会话语义搜索能力的持久化存储。支持自动管理、Agent 控制记录或混合模式。为企业级部署提供多租户隔离,使 Agent 能独立为多个用户提供服务。

  • RAG (检索增强生成) - 与企业知识库无缝集成。支持基于 Embedding 的自托管检索以及阿里云百炼等托管服务,使 Agent 的回答基于权威数据源。

🔌 无缝集成

AgentScope 的设计初衷是与现有的企业基础设施无缝集成,无需进行大量修改:

  • MCP 协议 - 与任何兼容 MCP 的服务器集成,即刻扩展 Agent 能力。无需编写自定义代码,即可连接日益增长的 MCP 工具和服务生态(从文件系统、数据库到 Web 浏览器和代码解释器)。

  • A2A 协议 - 通过标准的服务发现机制实现分布式多智能体协作。将 Agent 能力注册到 Nacos 或类似注册中心,使 Agent 能够像调用微服务一样自然地发现和调用彼此。

🚀 生产级别

为企业级部署需求而构建:

  • 高性能 - 基于 Project Reactor 的响应式架构确保了非阻塞执行。GraalVM 原生镜像编译实现了 200ms 的冷启动时间,使 AgentScope 适用于 Serverless 和自动扩缩容环境。

  • 安全沙箱 (Security Sandbox) - AgentScope Runtime 为不可信的工具代码提供隔离的执行环境。包含用于 GUI 自动化、文件系统操作和移动设备交互的预构建沙箱,防止对系统资源的未经授权访问。

  • 可观测性 - 原生集成 OpenTelemetry,实现整个 Agent 执行流水线的分布式追踪。AgentScope Studio 为开发和生产环境提供可视化调试、实时监控和全面的日志记录。

快速入门

要求: JDK 17+

<dependency>
    <groupId>io.agentscope</groupId>
    <artifactId>agentscope</artifactId>
    <version>1.0.9</version>
</dependency>
ReActAgent agent = ReActAgent.builder()
    .name("Assistant")
    .sysPrompt("You are a helpful AI assistant.")
    .model(DashScopeChatModel.builder()
        .apiKey(System.getenv("DASHSCOPE_API_KEY"))
        .modelName("qwen-max")
        .build())
    .build();

Msg response = agent.call(Msg.builder()
        .textContent("Hello!")
        .build()).block();
System.out.println(response.getTextContent());

更多示例,请查阅 文档。

贡献

我们欢迎贡献!请查看 CONTRIBUTING.md 了解准则。

社区

Discord钉钉微信
(图标)(图标)(图标)

许可证

Apache License 2.0

贡献者
AdLfgsJKAq
项目信息
默认分支main
License未指定
创建时间2025/9/23
最近更新今天
GAI 中文摘要

AgentScope Java 是一个基于代理导向编程理念的框架,旨在帮助开发者构建生产级的 LLM 应用程序。它通过提供一套完整的工具与机制,解决智能体在推理、工具调用、记忆管理及多智能体协作等方面的开发难题。

采用 ReAct 范式实现智能体的自主规划与执行,支持在复杂任务中动态决策并使用工具。 提供包括安全中断、优雅取消及人工干预在内的运行时控制机制,确保生产环境下的操作可控与稳定。 内置结构化任务管理系统 PlanNotebook,能够将复杂目标分解为可追踪、可执行的有序步骤。 支持输出内容的自动解析与纠错,确保模型响应符合预期格式并直接映射为 Java 对象。 提供支持语义检索的持久化记忆管理系统,能够满足多租户隔离及跨会话的信息存储需求。

适用于希望在 Java 技术栈中快速开发复杂、高性能 AI 智能体的开发者及企业团队,特别适合需要严格的人工审核、系统稳定性保障及长期记忆支持的业务场景。