Logo
Published on

第一次學 Kotlin Koog AI 就上手 Day 02:動手建立你的第一個 Koog AI 應用

昨天我們認識了 Koog 框架的強大特色,今天讓我們立刻動手實作!我們將用最簡單的方式建立第一個 AI 應用,只需要簡單的程式碼,就能讓你體驗到與 AI 對話的神奇魅力。準備好了嗎?讓我們開始這趟實作之旅!

快速準備

讓我們用最簡單的方式準備開發環境

你需要的東西

  1. Java 17+(大多數電腦都已安裝)
  2. IntelliJ IDEA(免費的 Community 版本即可)
  3. OpenAI API 金鑰(到 platform.openai.com 註冊並取得)

就這麼簡單!其他複雜的設定我們之後再說

建立專案

1. 使用 IntelliJ IDEA 建立專案

  1. 開啟 IntelliJ IDEA
  2. 新增一個新的 Project,類型選擇 Kotlin
  3. 專案名稱設為 my-first-ai-app
  4. Build system 選擇 Gradle,DSL 選擇 Kotlin
  5. 其它的選項隨自己的喜好填寫,或是維持預設值

2. 簡單的 build.gradle.kts 配置

build.gradle.kts 加入 Koog 套件

//... 其它程式碼
dependencies {
    // 只需要這個 Koog 套件
    implementation("ai.koog:koog-agents:0.3.0")
}
//... 其它程式碼

3. 同步專案

點擊 IntelliJ 右上角的 Gradle 圖示同步專案即可

設定 IntelliJ 中設定 API 金鑰

  1. 在預設的 MainKt Run 裡面,編輯 Configurations
  2. Environment variables 欄位中點擊編輯圖示
  3. 加入:OPENAI_API_KEY=你的API金鑰

就這樣!不用建立複雜的配置檔案

簡單的程式碼的魔法 ✨

現在見證 Koog 的強大!建立 src/main/kotlin/Main.kt 檔案

如果原本已經有 Main.kt 檔案,請替換檔案的內容

suspend fun main() {
    // 建立執行器(負責與 OpenAI 溝通)
    val executor = simpleOpenAIExecutor(System.getenv("OPENAI_API_KEY"))

    // 建立 AI Agent(你的 AI 助手)
    val agent = AIAgent(
        executor = executor,
        systemPrompt = "你是一個友善的 AI 助手,用正體中文回答問題",
        llmModel = OpenAIModels.CostOptimized.GPT4_1Mini
    )

    // 開始對話!
    val response = agent.run("你好!請介紹一下自己")
    println("AI 回答:$response")
}

執行程式

點擊 IntelliJ IDEA 中 main 函數旁的綠色箭頭 (或是右上角的綠色箭頭)

執行 AI 回應內容

AI 回答:你好!我是你的 AI 助手,可以協助你解答各種問題、提供資訊、協助學習或解決生活上的大小事。不論你想討論科技、旅遊、語言學習、時事,或者只是想找人聊天,都歡迎隨時找我。有任何需要,請直接告訴我吧!

每個人得到的回應可能會不一樣

就這樣!你的第一個 AI 應用誕生了!🎉

理解三個核心概念

讓我們理解剛才程式碼中的三個核心概念

1. Executor(執行器)

val executor = simpleOpenAIExecutor(System.getenv("OPENAI_API_KEY"))
  • 作用:負責與 AI 模型(如 OpenAI)溝通的橋樑
  • 簡單理解:就像手機的通訊模組,讓你的 App 能打電話給 AI

2. AIAgent(AI 代理)

val agent = AIAgent(executor, systemPrompt, llmModel)
  • 作用:你的 AI 助手,具備特定的個性和能力
  • 簡單理解:就像聘請了一個有特定專長的員工

3. System Prompt(系統提示)

systemPrompt = "你是一個友善的 AI 助手,用正體中文回答問題"
  • 作用:告訴 AI 要扮演什麼角色、如何回答
  • 簡單理解:就像給員工的工作說明書

試試看不同的提示

現在你已經掌握基本用法,試試修改 systemPrompt 看看會發生什麼不一樣的變化

// 換個角色試試
val agent = AIAgent(
    executor = executor,
    systemPrompt = "你是一個幽默的海盜船長,說話要有海盜的風格,用正體中文回答",
    llmModel = OpenAIModels.CostOptimized.GPT4_1Mini
)

val response = agent.run("介紹一下你自己")
println("海盜船長說:$response")

你會發現 AI 的回答風格完全不同了!這就是 systemPrompt 的魔力。

總結

我們建立了第一個 AI 應用

  • 使用簡單的程式碼就能建立一個會說話的 AI
  • Koog 讓複雜的 AI 開發變得簡單
  • 修改 systemPrompt 就能改變 AI 的行為風格

下一篇文章們將學習如何與 AI 進行更進階的對話,包括多輪對話和更複雜的提示技巧

參考文件


支持創作

如果這篇文章對您有幫助,歡迎透過 贊助連結 支持我持續創作優質內容。您的支持是我前進的動力!


圖片來源:AI 產生