ソフトウェアエンジニア必見!Koogで効率的なAI開発


ソフトウェアエンジニア必見!Koogで効率的なAI開発

JetBrains/koog

2025-09-02

この番組は、クイズに答えながら新しい技術を楽しく学んでいくクイズ番組。 司会の私(AIの知識はちょっとだけ…)と、解説員のKoogさんが、皆さんの疑問をコント形式で解決していきますよ!

司会
今日のテーマ、Koogさん!いったい何ができる方なんですか?

Koog
私は、KotlinでAIエージェントを作るための公式フレームワークです。 AIエージェントって聞くと難しそうに聞こえるかもしれませんが、簡単に言えば、人間のように思考し、行動できるプログラムのこと。 例えば、Webサイトのチャットボットや、自動でタスクをこなすプログラムなど、様々な用途で活躍できます。

司会
へえ、AIを動かすための骨組みみたいなものですね! でも、それって今までも作れたんじゃないですか?

Koog
もちろん!でも、私を使えば、もっと効率的に、信頼性高く、そしてスケール可能なAIエージェントが作れるんです! 具体的には、以下のようなメリットがあります。

クロスプラットフォーム対応
サーバーからAndroid、iOS、さらにはブラウザまで、1つのコードベースでAIエージェントを動かせます。もうプラットフォームごとにコードを書き直す必要はありません!

本番環境向けに最適化
JetBrainsのAI製品開発で培ったノウハウが詰まっているので、複雑なLLMやAIの問題を解決するための実績のあるソリューションを提供できます。 つまり、最初から堅牢でスケーラブルな設計ができるんです。

Kotlinとの相性抜群
もちろん、私自身がKotlinのために生まれたフレームワークですから、Kotlinの言語機能(コルーチンなど)を最大限に活かしたシンプルで読みやすいコードを書くことができます。

司会
なんだかすごそう!でも、どうやって私のプロジェクトにKoogさんを迎え入れればいいんですか?

Koog
簡単です!まずは、お使いのビルドシステム(Gradleなど)に私の依存関係を追加してください。 build.gradle.ktsに以下を追記するだけです。

// build.gradle.kts
dependencies {
    implementation("org.jetbrains.kotlinx.koog:koog-core:0.0.1")
}

これで準備完了!あとは、以下のようにAIエージェントの処理を書いていくだけです。

司会
あ、なんかすごくシンプルに見えますね! ちょっと具体的なコードを見せてください!

Koog
はい、承知いたしました! 例えば、質問に答えるだけのシンプルなAIエージェントを作ってみましょう。

import kotlinx.coroutines.runBlocking
import org.jetbrains.kotlinx.koog.Koog
import org.jetbrains.kotlinx.koog.core.llm.llm
import org.jetbrains.kotlinx.koog.core.llm.message

fun main() = runBlocking {
    // Koogのインスタンスを生成
    val aiAgent = Koog.create {
        // AIエージェントにLLM(大規模言語モデル)の機能を追加
        llm("my-llm-service") {
            // "Hello World"のようなメッセージのやりとりを定義
            message("Hello, World!")
        }
    }

    // AIエージェントに質問を投げる
    val response = aiAgent.query("Koogとは何ですか?")

    // 応答を表示
    println(response)
}

司会
「おおー!たったこれだけでAIが動くなんて、まさに魔法みたい!」 Koog
「魔法じゃありません!コードです!」

このコードでは、まずKoog.createでAIエージェントを生成しています。 次にllmブロック内で、使用するLLMサービス(例
OpenAI, Google Cloudなど)を指定し、messageでLLMに渡すプロンプト(質問や指示)を定義します。 そして最後にaiAgent.queryで、実際にAIエージェントに問い合わせを行い、応答を受け取っています。

司会
なるほど!じゃあ、このKoogさんを使って、具体的にどんなものが作れるんですか?

Koog
はい!ソフトウェアエンジニアの皆さんなら、以下のようなシーンで私を活用できるでしょう!

開発プロセス自動化

コードレビューアシスタント
新しいプルリクエストに対して、自動でコードの品質をチェックし、改善案を提案するAIエージェント。

テストケース自動生成
機能仕様書から、テストケースを自動で生成するAIエージェント。

ドキュメント自動生成
ソースコードからAPIドキュメントや利用ガイドを自動で作成するAIエージェント。

業務効率化ツール

カスタマーサポートチャットボット
FAQに自動で回答したり、複雑な問い合わせを適切な担当者に振り分けたりするAIエージェント。

データ分析アシスタント
自然言語で質問するだけで、データベースから必要な情報を取得し、グラフ化してくれるAIエージェント。

司会
すごーい!もはやKoogさんは、私たちソフトウェアエンジニアの最高の相棒ですね!

いかがでしたか?Koogさんとのクイズ、楽しんでいただけましたか? Koogさんを使えば、AIエージェント開発のハードルがグッと下がり、皆さんの日々の開発がもっと楽しく、もっと効率的になること間違いなしです!


JetBrains/koog




Kotlin/Javaで賢いAIエージェント作成!embabel-agent活用でゲームの達人に?コントの帝王に?

まず、embabel-agentを一言で言うと、「JVM上で動く、賢いエージェント(代理人)を作るためのフレームワーク」です。KotlinやJava、Springといった技術を使って、まるでAIが動いているかのようなアプリケーションを作ることができます。


ソフトウェアエンジニア必見!12-factor-agentsでLLMアプリの悪夢を打ち砕く方法

プロダクション環境で顧客に安心して使ってもらえるLLM(大規模言語モデル)搭載ソフトウェアを開発する…それは、まるで霧に包まれた夜の森を進むようなもの。一歩間違えれば、魑魅魍魎(ちみもうりょう)が跋扈するデバッグの沼に引きずり込まれ、悪夢のようなパフォーマンス問題に苛まれるだろう。しかし、恐れることはない。我々ソフトウェアエンジニアには、この暗闇を照らす灯台がある。それが「12-factor-agents」の原則だ!


【C++の力】Python不要!ネイティブコードでディフュージョンモデル推論を最速化する技術解説

このプロジェクトは、様々なディフュージョンモデル(Stable Diffusion, Flux, WN, Qwen Image, Z-Imageなど)の推論(インファレンス)を、C/C++のみで実行できるようにしたものです。stable-diffusion


AIアクセラレータ Tenstorrent/tt-metal 徹底解説

まず、tt-metalはTenstorrent社製のAIアクセラレータ、Tenstorrent Grayskullチップを動かすためのソフトウェアスタックだよ。チップの性能を最大限に引き出すためのツールキット、といったイメージだね。このtt-metalは、大きく分けて2つの「犯人」…じゃなくて、2つの重要な構成要素から成り立っているんだ。


ソフトウェアエンジニア必見!MindsDBでAIとデータの壁をぶち破れ!

エンジニアの皆さん、お待たせしました!あなたの開発運を爆上げするMindsDBを、血液型別のエンジニアタイプに合わせてご紹介します。さあ、あなたの血液型は?A型エンジニアの特性 計画的で真面目、そして細部までこだわる完璧主義者。MindsDBはA型エンジニアにどう役立つ?


あなただけのAIを創造!SillyTavernで広がるLLM活用の世界

皆さん、焼肉の火加減を完璧に操るように、AIとの会話も意のままに操りたいと思いませんか?SillyTavernはまさにそんな「AI会話の焼肉奉行」になるための強力なツールなんです!一言で言うと、SillyTavernは「LLM(大規模言語モデル)を使いこなすための、めちゃくちゃ高機能なユーザーインターフェース」です。単なるチャット画面とは一線を画し、AIとの対話をより深く、よりパーソナルに、そしてよりクリエイティブにするための機能が満載されています。


「TheAlgorithms/Java」徹底解説:実践的なアルゴリズム活用法

こんにちは!今回はソフトウェアエンジニアの皆さんにとって非常に興味深いプロジェクト、「TheAlgorithms/Java」についてお話しします。このプロジェクトは、Javaで実装された様々なアルゴリズムやデータ構造をまとめた、オープンソースのリポジトリです。まるでアルゴリズムのペットショップのように、いろんな種類のかわいい(?)アルゴリズムたちが揃っています。


CursorやLangChainを使いこなせ!エンジニアの価値を最大化するAI活用ロードマップ

今日は、中国のスーパーエンジニア「魚皮(Yupi)」さんが公開している最強のAIリソース集 「liyupi/ai-guide」 について解説しちゃうわね。「AIが多すぎて何から手をつければいいの!?」ってパニックになってるそこの君、落ち着いて。このリソースは、エンジニアにとっての「宝の地図」みたいなものなんだから!


ディズニーランド級の楽しさ!Spring Bootで叶えるストレスフリーなJava開発

もしあなたが「JavaでWebアプリケーションを作りたいけど、設定とか色々難しそう…」「もっとサクサク開発を進めたい!」と思っているなら、Spring Bootはまさにあなたのための魔法のツールです!ディズニーランドで例えるなら、Spring Bootは「夢と魔法の王国を、あっという間に作り上げられる設計図と建設キット」みたいなものです。普通なら、お城を建てるのに、レンガを一つ一つ積んだり、電気配線をしたり…と大変ですよね?でもSpring Bootがあれば、基本的な骨組みはもうできていて、あなたは「どんなお城にしたいか」という創造的な部分に集中できるんです!