Koog是JetBrains开源的一个用于LLM集成的框架。与langchain4j和spring-ai类似,但是Koog专为 JVM 和 Kotlin 开发人员设计, 可以使用模块化功能系统自定义代理功能,并使用 Kotlin Multiplatform 部署到 JVM、JS、WasmJS、Android 和 iOS 目标平台。
本文将带你快速上手 Koog,展示如何在 Java 或 Kotlin 项目中 集成 OpenAI API ,并介绍如何使用 Koog Agents 构建智能代理。
Java17+
Gradle 或 Maven
LLM提供的API密钥
dependencies {
implementation("ai.koog:koog-agents:0.5.0")
}下面是一个最简单的 Koog 调用示例。我们将使用 OpenAI 的 GPT-4o 模型。首先,你需要配置 Gradle 依赖,然后通过 simpleOpenAIExecutor 快速创建一个 AI 代理。这个示例展示了 Koog 极其简洁的 API 设计。
import ai.koog.agents.core.agent.AIAgent
import ai.koog.prompt.executor.clients.openai.OpenAIModels
import ai.koog.prompt.executor.llms.all.simpleOpenAIExecutor
import kotlinx.coroutines.runBlocking
fun main() = runBlocking {
// 从环境变量获取 API 密钥
val apiKey = System.getenv("OPENAI_API_KEY")
?: error("The API key is not set.")
// 创建 agent
val agent = AIAgent(
promptExecutor = simpleOpenAIExecutor(apiKey),
llmModel = OpenAIModels.Chat.GPT4o
)
// 运行 agent 并打印结果
val result = agent.run("say hello lhDream!")
println(result)
} 如果你需要使用国内的大模型(如智谱 GLM、DeepSeek 等)或第三方中转服务,可以通过自定义 Base URL 的方式来实现。Koog 提供了 OpenAILLMClient 来完美支持兼容 OpenAI 协议的接口。
下面的示例展示了如何配置 LLModel,包括设置支持 JSON Schema、函数调用 以及 Temperature 等高级功能:
Koog 的最大优势在于其对 Kotlin Multiplatform 的原生支持。如果你需要跨平台开发(例如同时在 Android 和后端共享 LLM 逻辑),Koog 是比基于 Java 的框架更合适的选择。
更多关于 Koog 的高级用法和模块化功能,请查阅官方文档:
* Koog 官方文档: https://docs.koog.ai