Koog

Koog,JetBrains 出品

为 JVM(Kotlin 或 Java)、Android、iOS、JavaScript 和 WebAssembly 构建容错、可扩缩的企业级 AI 智能体。

Koog 用于 Java

使用企业级 AI 智能体增强您的 Java 后端

了解详情

智能体为何重要?

  • 更智能、更快速的决策

    智能体可以持续学习、解读上下文并实时调整。它们能重新安排任务顺序、重置优先级,还能及早发现问题,帮助团队快速且从容地响应。

  • 减少重复性

    通过自动执行常规和低价值任务,智能体可让人们专注于最重要的事务:战略思考、创造力与协作。

  • 更高效率

    并行任务执行可以简化工作流。与依赖于顺序移交的传统工作流不同,智能体可以同时协调多个步骤,从而确保工作快速推进。

从简单入手

当下就需要一个快速可用的智能体?借助我们默认的通用策略立即创建一个,即时获得效率提升。

增加复杂性

借助我们的图形策略设计高级工作流,并解锁专为复杂场景打造的强大功能。

在规模扩大时仍保持掌控

随着您的自主系统不断演进,借助 Koog 的跟踪、监测与测试工具实现全面可见性。在每个阶段快速调试、优化行为,并维持系统可靠性。
  • 使用 Kotlin 和 Java

    使用具有表现力的 Kotlin DSL 构建 AI 智能体,或者在现有 Java 服务中采用具有对 Java 友好的 API 的 Koog。

  • 自动执行规划

    让智能体使用类型严格限定的 GOAP 规划器或基于 LLM 的规划器以迭代方式规划、执行和改进多步骤解决方案,以实现自适应策略。

  • 具有类型安全精度的模型

    使用类型安全、数据驱动的方式构建智能体流。每个操作的类型都严格限定,因此您依赖的是结构,而不是脆弱的提示。

  • 享受开放、可扩展的设计

    Koog 是开源和模块化的 – 透明、适应性强,您可以根据自己的需求混搭和扩展各种功能。

  • 接入自有工具

    将智能体连接至外部系统或 API,或者借助现有的 MCP 或 A2A 服务器增强其能力。

  • 推动开发

    使用预构建的组件快速交付,实现企业级持久性、历史记录压缩以优化成本等,帮助您避免常见的 AI 工程陷阱。

  • 跟踪每一个步骤

    借助详细且可配置的可观测性工具,调试并监控智能体执行。

  • 将逻辑图形化

    借助直观的图形化工作流,设计复杂的智能体行为。

  • 在任何地方运行

    通过 Kotlin 或 Java 在现有 Spring 或 Ktor 后端内部署智能体,并通过 Kotlin Multiplatform 在 JS、WasmJS 和 iOS 之间共享逻辑。

常见问题及解答

Koog 是一个开源框架,用于构建具备容错能力、可扩缩且可投入生产环境的 AI 智能体。该框架支持多种平台,包括 JVM、Android、iOS、JavaScript 和 WebAssembly,这使其适用于企业级应用和跨平台应用场景。

AI 智能体(有时也被称作“智能体化 AI”)是指能够自主运行、制定决策、明确所需步骤,并采取行动达成目标的系统。与遵循固定规则或仅响应直接输入的传统 AI 不同,AI 智能体可以适应不断变化的环境,协调多个环节,并与外部工具或服务进行交互。

您不需要 Kotlin 即可开始。Koog 为 JVM 后端提供了一个对 Java 友好的 API。Kotlin 仍为头等公民,当您希望通过 Kotlin DSL、协程和 Kotlin Multiplatform 目标获得最具表现力的创作体验时,可以使用 Kotlin。

Koog 的设计使其可以自然融入 Java,API 专为常见工作流量身定制。您可以直接在 Java 中使用 Koog,无需为所有可能的用例编写 Kotlin 封装模块。Koog 现在可以在 Kotlin 与 Java 之间实现完全的功能对等。

如果遇到 Java API 缺口,仍然可以与 Kotlin 核心进行互操作。

与 LangChain/LangGraph 等热门 Python 或 JavaScript 框架不同,Koog 提供专为 JVM 和 Kotlin 开发者设计的 Kotlin 领域特定语言 (DSL)。这确保其能顺畅集成到基于 Kotlin 和 Java 的应用程序中,显著提升效率并改善整体开发者体验。

除此之外,Koog 还包含预构建的可组合解决方案,用于简化和加速智能体化系统的开发,这使其有别于那些仅提供基础组件的框架。

借助 Koog 的多平台支持,您可以在 JVM、JS、WasmJS 和 iOS 目标平台上部署智能体化应用程序。

Koog 还提供与 W&B WeaveLangfuse 等主流可观测性工具提供商的开箱即用型集成,方便对 AI 应用程序进行监测和调试。

您可以从各类 LLM 提供商和平台中进行选择,包括 Google、OpenAI、Anthropic、DeepSeek、OpenRouter、Ollama 与 Bedrock。点击此处了解详情。

您可以借助 Kotlin Multiplatform,在 JVM、JS、WasmJS、Android 和 iOS 目标平台上部署基于 Koog 的智能体。

Koog 提供智能体检查点功能,可让您在执行过程中的特定节点保存并恢复智能体状态。智能体持久性功能要求,智能体策略中的所有节点都必须具备唯一名称。要使用该功能,请将其添加至智能体的配置中。您可以在此处找到详细的操作指南

Koog 框架通过 MCP SDKagent-mcp 模块中的额外 API 扩展,实现与 MCP 的集成。此集成支持 Koog 智能体通过多种传输机制(stdio、SSE)连接至 MCP 服务器,从 MCP 服务器获取可用工具,将这些工具转换为 Koog 工具接口,在工具注册表中注册转换后的工具,以及使用 LLM 提供的参数调用 MCP 工具。您可以在 Koog 文档中找到更多信息。

可以。您可以借助 Google 的 Agent2Agent Protocol (A2A),通过 Koog 构建互联 AI 智能体。其中,Koog 负责提供核心智能体逻辑与工具集成,A2A 则保障智能体之间的标准化通信。

Koog 是开源的,根据 Apache 2.0 许可证进行授权。

加入我们的 Slack 社区 ,提问、分享反馈和提出想法。使用官方 Koog YouTrack 项目添加功能请求和 bug 报告。

Koog 和 Spring AI 在技术栈的不同层上运行。Spring AI 侧重于模型集成和基础架构,而 Koog 则提供智能体运行时和编排层。Koog 可以基于 Spring AI 使用(也可以独立使用,具体取决于您的架构)。

Spring AI 为您提供与 LLM、嵌入向量和向量存储交互的原语。Koog 基于这些原语进行构建,以帮助您设计和运行结构化、可靠的智能体系统。

当您的应用程序开始在复杂性方面进行扩缩时就需要引入 Koog,复杂性扩缩需要更完善的协调、状态管理、持久的执行(容错)以及对执行的掌控。

有了 Koog,您可以:

  • 通过分支逻辑、防护机制以及定制的可控步骤编排复杂工作流。
  • 通过持久状态和可恢复性运行长效智能体。
  • 通过内置的消息历史记录压缩策略,优化存储和 LLM token 使用。
  • 通过重试、容错和受控执行提高可靠性。
  • 并发执行 AI 工作流以获得更好的性能。
  • 通过支持 OpenTelemetry、Langfuse、W&B Weave 和 Datadog 等工具,为智能体执行添加可观测性。

简单来说,Spring AI 可以帮助您连接到 AI 功能,而 Koog 则帮助您将这些功能转化为可投入生产、可靠的智能体系统。