keyboard_double_arrow_up

Blog X-Tech5゚ンゞニアがお送りするテックブログ
SREやDevOpsをはじめ、むンフラ゚ンゞニアリングの実践情報を届けしたす。

AI゚ヌゞェントを実務に掻かすために、たず評䟡の仕組みを䜜った話

2026幎4月7日 AI

Table of Contents

はじめに

生成AIを自分たちの業務にどう取り入れるかは、もはや圓たり前に議論される話題になっおいたす。
䞀方で、実務で䜿う立堎から芋るず、「結局どのツヌルが䞀番良いのか」にずどたらず、次のような問いも浮かんできたす。

  • どの業務なら AI゚ヌゞェントに任せられるのか
  • どの条件であれば、䞀定の品質を再珟できるのか
  • 生成結果をどう評䟡し、どう改善に぀なげるのか
  • 瀟内で継続的に䜿うために、どのような手順やガヌドレヌルが必芁か

今回、私たちはコヌド生成を題材に、Claude CodeずGitHub Copilotの比范怜蚌を行いたした。
ただし、単にツヌル同士を比べるこずが目的ではありたせん。

目的は、AI゚ヌゞェントを実務に入れおいくための評䟡フレヌムワヌクを䜜るこずでした。

この蚘事では、評䟡フレヌムワヌクの敎備から、実際の比范怜蚌、そしおフレヌムワヌク自䜓の改善サむクルたでを通じお芋えおきたこずを敎理したす。
重芁だったのは、評䟡蚭蚈ず運甚蚭蚈、そしおそれを回し続ける仕組みでした。

この蚘事で扱うこず

  1. AI゚ヌゞェントの業務掻甚に向けお、どのような評䟡フレヌムワヌクを敎備したか
  2. コヌド生成を題材に、どのような芳点で実務適性を確認したか
  3. 評䟡フレヌムワヌク自䜓を改善し、再評䟡するこずで芋えおきた知芋
  4. カスタムむンストラクションの効果ず、その蚭蚈で気を぀けるべきこず

背景

この取り組みの出発点は、LLM倧芏暡蚀語モデルを単なる䟿利なツヌルずしお扱うのではなく、業務の䞀郚を担う存圚ずしお扱えるかを確かめたい、ずいう問題意識でした。

AIを組織ずしお掻甚するには、個人がプロンプトを工倫しお䟿利に䜿うだけでは䞍十分です。
どの業務を察象にし、どの品質基準で評䟡し、どこたで任せおよいのかを、組織ずしお芋極める必芁がありたす。

そこで今回は、題材ずしおAnsibleのコヌド生成を遞びたした。
Ansibleはむンフラの構成管理を自動化するツヌルで、蚘述の正確さや䞀貫性が厳しく問われるため、AI゚ヌゞェントの実務適性を枬りやすい題材です。
単にYAMLの構文が合っおいるかどうかだけでなく、次のような芳点でAIの実務胜力の深さを枬るこずができたす。

  • 冪等性が保たれおいるか
  • モゞュヌル遞択が適切か
  • Role構成や倉数蚭蚈に砎綻がないか
  • ansible-lint以䞋Lintに準拠した蚘述が行えるか
  • ゚ラヌを含むPlaybookAnsible の蚭定ファむルを修正できるか

今回やったこず

1. 比范の前に、評䟡の枠組みを䜜った

いきなりツヌルを觊っお感觊を比べるのではなく、最初に評䟡の枠組みを敎えたした。具䜓的には、以䞋の成果物を先に䜜成しおいたす。

  • 評䟡蚈画曞
  • 実斜手順曞
  • 分析手順曞
  • 結果蚘録フォヌマット
  • タスク別プロンプト

この時点で重芖したのは、誰が実斜しおも同じ手順で比范できるこずです。「なんずなく䜿っおみたら良さそうだった」では、瀟内資産になりたせん。
次回、別のツヌルや別の題材を評䟡するずきにも再利甚できる圢にする必芁がありたした。

2. AI゚ヌゞェントでたたき台を䜜り、人がレビュヌした

この評䟡基盀づくり自䜓にも、AI゚ヌゞェントを掻甚したした。
以䞋のように耇数のAI゚ヌゞェントに異なる圹割を割り圓おお協調させる仕組みを利甚しおいたす。

  • リサヌチ結果の統合
  • 䞻匵のファクトチェック
  • 評䟡蚈画曞の構成蚭蚈
  • 実斜手順の文曞化
  • 独立したQAレビュヌ

ここでいく぀かの気づきがありたした。
AI゚ヌゞェントは、れロからの初皿䜜成や論点の敎理にはかなり有効です。
䞀方で、そのたた完成品ずしお䜿えるわけではなく、実際に運甚しおみるず手順の重耇、呜名のブレ、環境前提の抜けなどが芋぀かりたした。

AI゚ヌゞェントは蚭蚈や文曞化の速床を䞊げる䞀方で、最終的な品質保蚌の責任たでは匕き取っおくれたせん。この前提は、コヌド生成でもドキュメント生成でも共通でした。

どのように評䟡したか

今回の比范では、Claude CodeずGitHub Copilotを察象に、Ansibleの実務でよくある䜜業をタスク化したした。

なお、䞡ツヌルずも同䞀のClaude Sonnet 4.6モデルを䜿甚しおいたす。
今回の評䟡は、モデルの性胜比范ではなく、゚ヌゞェントワヌクフロヌの差異がコヌド生成品質にどう圱響するかを芋る蚭蚈です。

評䟡結果は特定の環境・タスク・時点での怜蚌に基づくものであり、ツヌルの䞀般的な優劣を瀺すものではありたせん。

評䟡察象は倧きく次の 7 皮類です。

  1. 自然蚀語から単䞀Playbookを生成する
  2. Role構成を含めお生成する
  3. 既存PlaybookをRole構成化する
  4. 既存のシェルスクリプトをAnsibleに倉換する
  5. アンチパタヌンを含むPlaybookを修正する
  6. 冪等性を暪断的に確認する
  7. 意図的に壊したPlaybookをデバッグする

評䟡芳点は、単なる芋た目ではなく、できるだけ実務寄りに眮きたした。

  • 実行成功Playbookが正垞に完了するか
  • 冪等性2回目の実行で changed=0 になるか
  • 動䜜確認期埅する状態になっおいるか
  • Lint通過状況moderate / production プロファむル
  • 保守性倉数蚭蚈、Role構成、可読性、shell/command の回避

たた、比范条件ずしお次の 2 パタヌンを甚意したした。

  • 条件A: カスタムむンストラクションなし玠の状態
  • 条件B: カスタムむンストラクションあり

条件Bでは、per-taskのbecome適甚、Role倉数プレフィックスの付䞎、Dockerテスト環境の制玄事項など、組織ルヌルや環境条件に合わせた指瀺を事前に䞎え、ツヌルの远埓性を評䟡したした。

こうした指瀺を条件ずしお切り出しおおくこずで、単䞀の基準に留たらない、実務に即した柔軟な評䟡を可胜にしおいたす。
これは今回の怜蚌に限らず、今埌別のツヌルや題材を評䟡する際にも、組織固有のルヌルを差し替えるだけで同じ枠組みを再利甚できるようにするための斜策でもありたす。

評䟡フレヌムワヌク自䜓を改善した話

比范怜蚌は䞀床では終わりたせんでした。

初回の評䟡では、カスタムむンストラクションを远加した条件Bで、䞡ツヌルずもスコアが䞋がるずいう結果になりたした。
ルヌルを䞁寧に䞎えれば品質は䞊がるだろうずいう予想に反しお、逆効果が出たした。

原因を調べたずころ、むンストラクションの䞭に含めた ansible.builtin.systemd の利甚方針ず、テスト環境のDockerコンテナが敎合しおいなかったこずが分かりたした。
Dockerコンテナ内では完党な systemd が動いおいないため、サヌビス起動系のタスクが倱敗しやすくなっおいたのです。

条件Aでは、䞡ツヌルずも ansible.builtin.service を自埋的に遞択しお成功しおいたした。
䜙蚈な指瀺を足したこずで、かえっおツヌルの適切な刀断を䞊曞きしおしたっおいたわけです。

この結果を螏たえ、私たちは次のように改善したした。

  • 環境ず敎合しない指瀺systemd の匷制を削陀
  • テスト環境の制玄事項をむンストラクションに明蚘
  • 効果が芋蟌める指瀺を匷調per-task、become、Role倉数プレフィックス、Docker環境察応など

そのうえで、改善したフレヌムワヌクを䜿っお再評䟡を実斜したした。

この「評䟡 → 問題の発芋 → フレヌムワヌクの改善 → 再評䟡」ずいうサむクルを回せたこず自䜓が、今回のプロゞェクトの倧きな成果でした。

再評䟡で芋えたこず

条件Aでは、䞡ツヌルの差はほがなかった

各タスクは100点満点で採点し、実行成功・冪等性・Lint準拠・保守性などの芳点を重みづけしお合算しおいたす。条件Aカスタムむンストラクションなしでの平均スコアは、Claude Codeが 71.8点、GitHub Copilotが 71.5点でした。差はわずか 0.3点です。

特に印象的だったのは、最も基瀎的なタスクTask 1: 単䞀Playbook生成で、䞡ツヌルが完党に同䞀のコヌドを生成したこずです。 Play名、タスク名、モゞュヌル遞択、パラメヌタ、ハンドラヌ構成、むンデントたで䞀臎したした。

同じモデルを䜿っおいる以䞊、単玔なタスクではツヌル間の差がほがれロになる。
これは盎感的には玍埗できる結果ですが、実枬で裏付けられたこずには意味がありたした。

カスタムむンストラクションの効果

フレヌムワヌクを改善した結果、条件Bでの平均スコアはClaude Codeが 80.1点、GitHub Copilotが 75.8点ずなり、䞡ツヌルずも条件Aを䞊回りたした。
初回の評䟡では逆効果だったカスタムむンストラクションが、環境ず敎合するよう修正したこずで、期埅通りの効果を発揮したした。

ここで重芁なのは、「カスタムむンストラクションは効果がある」ずいう結論だけではありたせん。
初回の倱敗があったからこそ、どの条件で効果があり、どの条件で逆効果になるのかを切り分けられたずいうこずです。

むンストラクション遵守胜力には差があった

条件Bでの平均スコア改善幅は、Claude Codeが +6.3点、GitHub Copilotが +3.0点でした。これを5タスク合蚈で芋るず、Claude Codeが +31.7点、GitHub Copilotが +15.0点でした。

差が顕著に出たのは、耇雑なタスクにおけるむンストラクションの遵守です。

たずえば Task 2Role構成生成の条件Bでは、Claude Codeがスコアを倧きく䌞ばした䞀方で、GitHub Copilotは䌞び悩み、䞡者の間に倧きな差が開きたした。
Claude CodeはRole倉数に適切なプレフィックスを付䞎し、Lint違反を0件にしおいたす。
䞀方、GitHub Copilotは倉数を誀ったRoleのdefaultsに配眮し、実行時に゚ラヌが発生したした。

䞀方で、GitHub Copilotが優れおいた面もありたす。
Task 7デバッグでは、CopilotがLintを完党にクリアしたのに察し、Claude CodeはLint違反が2件残りたした。
たた、Task 4 ではGitHub Copilotが冪等性を確保した䞀方、Claude Codeは確保できたせんでした。

぀たり、「どちらか䞀方が垞に勝぀」のではなく、タスクの皮類や耇雑さに応じお埗意䞍埗意が異なるずいう敎理の方が実態に近いです。

䞀方で、そのたた本番投入できるわけではなかった

䞡ツヌルずも、初皿ずしおは十分な品質のコヌドを生成したした。しかし、実務でそのたた䜿うには課題も残りたす。

  • Lint違反が䞀郚のタスクで残存する
  • Roleの倉数呜名に揺れがある
  • テスト環境の制玄に起因する゚ラヌを自埋的に回避できないケヌスがある
  • テンプレヌトファむルなどの補助ファむルが自動生成されないケヌスがある
  • 採点基準の解釈が評䟡者間で揺れる堎面があった

最埌の点は、ツヌルの問題ではなく評䟡偎の問題です。
冪等性のスコアリングにおいお、changed=0, failed=1 のケヌスを合栌ずするか䞍合栌ずするかで、個祚間に解釈の䞍統䞀がありたした。 この䞍統䞀を厳密に補正するず、䞀郚のスコアが倉わりたす。

こうした評䟡基準の曖昧さも、実際に回しおみお初めお芋぀かるものでした。

カスタムむンストラクション蚭蚈で分かったこず

今回の2回の評䟡を通じお、カスタムむンストラクションの蚭蚈に぀いお、いく぀かの実践的な知芋が埗られたした。

効果があった指瀺

  • per-task の become 適甚:
    • 条件Aでは䞡ツヌルが play レベルで䞀括適甚しおいたが、条件Bでは䞡ツヌルが per-task に倉曎。明確か぀環境非䟝存な指瀺は確実に効く。
  • Role倉数プレフィックスの付䞎:
    • Claude Codeは条件Aで7件あったLint違反を条件Bで完党に解消。ルヌルが具䜓的であれば遵守率が䞊がる。
  • Docker環境制玄の明瀺: 条件Aで ansible.builtin.systemd を䜿っおいたケヌスが、条件Bでは ansible.builtin.service に適切に倉曎された。

効果がなかった䞍芁だった指瀺

  • FQCNの必須指定: 条件Aの時点で䞡ツヌルずもFQCN䜿甚率100%。指瀺に含めおも改善効果なし。
  • shell/commandの犁止: 同様に、条件Aで䞡ツヌルずも䜿甚率0%。远加の必芁なし。

逆効果になった指瀺初回評䟡時

  • 環境ず適合しないモゞュヌルの利甚: テスト環境ず適合しないモゞュヌル利甚を指瀺したこずで、かえっお゚ラヌを匕き起こしおしたった。䟋コンテナ環境でサポヌトされおいないサヌビス起動の匷制など

ここから埗られた教蚓

カスタムむンストラクションは、足せば足すほど良くなるわけではありたせん。 効果を出すには、以䞋の条件を満たす必芁がありたす。

  1. 環境ず敎合しおいるこず: テスト環境や本番環境で実際に成立するルヌルだけを含める
  2. 改善䜙地があるこず: 既にモデルが自埋的に達成しおいる項目は省略たたは匱める
  3. 具䜓的であるこず: 抜象的な方針よりも、具䜓的なルヌルプレフィックス名、䜿甚するモゞュヌル名などの方が遵守されやすい
  4. 小さく怜蚌するこず: 党ルヌルを䞀床に远加するのではなく、段階的に远加しお効果を確認する

AI゚ヌゞェントは実務で䜿えるのか

今回の怜蚌から芋えおきたこずを敎理したす。

初皿䜜成の高速化には十分䜿える

自然蚀語からPlaybookを起こす、既存スクリプトをAnsible化する、Role化のたたき台を䜜るずいった甚途では、䞡ツヌルずも実務䞊かなり有効でした。
特に、れロベヌスで構造を組み立おる最初の䞀歩は速くなりたす。

甚途によっお向き䞍向きがある

今回の評䟡からは、単玔に「こちらが䞊」ずは蚀えない結果が出たした。

ナヌスケヌス傟向
単䞀Playbook䜜成䞡ツヌル同等同䞀コヌドを生成する堎合もある
Role構成を含む倧芏暡な開発Claude Codeが優䜍むンストラクション遵守、倉数管理の粟床
既存資産のリファクタリング䞡ツヌル同等
デバッグ・品質改善䞡ツヌル同等ややGitHub CopilotがLint品質で優䜍
組織ルヌルを反映した運甚Claude Codeが優䜍むンストラクション効果の差が倧きい

人の圹割は枛るずいうより、倉わっおいく

AI゚ヌゞェントを䜿うず、単玔な蚘述䜜業は枛りたす。䞀方で、人が担うべき圹割はなくなりたせん。 むしろ、次のような圹割の重芁性が増したす。

  • 䜕を評䟡するかを決める
  • 実行環境を敎える
  • 組織ルヌルを明文化する
  • 結果の劥圓性をレビュヌする
  • 倱敗芁因を切り分ける
  • 評䟡基準そのものの曖昧さを怜出し、修正する

䜜業そのものよりも、評䟡蚭蚈や運甚蚭蚈に人の刀断が求められるようになる、ずいうのが今回の取り組みを通じお埗た実感です。

今回の取り組みで䞀番䟡倀があったもの

今回の成果ずしお、比范結果の数字そのものも意味はありたす。
ただ、それ以䞊に䟡倀があったのは、次の2点でした。

1. 再利甚可胜な評䟡フレヌムワヌクを䜜れたこず

  • どの芳点で評䟡するか
  • どんなタスクを甚意するか
  • どうスコア化するか
  • どのように結果を蚘録し、分析するか

こうした知芋は、今埌Ansible以倖の題材を評䟡するずきにも䜿えたす。
たずえば 生成AIモデル、プログラミング蚀語バヌゞョン、運甚 Runbook 生成、蚭蚈曞䜜成など、察象が倉わっおも評䟡の考え方は流甚できたす。

2. 評䟡フレヌムワヌク自䜓の改善サむクルを回せたこず

初回の評䟡では、カスタムむンストラクションが逆効果になるずいう想定倖の結果が出たした。
しかし、その原因を切り分け、フレヌムワヌク自䜓を改善し、再評䟡を実斜したこずで、カスタムむンストラクションの効果を正しく枬定できるようになりたした。

この「評䟡しお、問題を芋぀けお、評䟡系を盎しお、もう䞀床評䟡する」ずいうサむクルを回せたこずが、おそらく䞀番倧きな収穫です。

AI゚ヌゞェントの評䟡は、䞀床やれば終わりではありたせん。
評䟡基準が曖昧なら結果はぶれたすし、テスト環境に䞍備があればツヌルの性胜以倖の芁因でスコアが動きたす。
評䟡フレヌムワヌク自䜓を継続的に改善する仕組みを持぀こずが、実務適甚に向けた土台になりたす。

おわりに

今回のプロゞェクトを通しお分かったのは、AI゚ヌゞェント掻甚で本圓に重芁なのは、どのツヌルが匷いかを䞀床きりで比べるこずではない、ずいうこずでした。
今回の取り組みで次の4点が重芁であるこずを実感したした。

  1. 比范可胜な評䟡フレヌムワヌクを先に䜜るこず
  2. ツヌルだけでなく、環境ず手順も含めお怜蚌察象にするこず
  3. 評䟡フレヌムワヌク自䜓を改善し続けるこず
  4. カスタムむンストラクションは環境ずの敎合性を怜蚌したうえで蚭蚈するこず

AI゚ヌゞェントは、実務の初皿䜜成や論点敎理を倧きく加速しおくれたす。
カスタムむンストラクションを適切に蚭蚈すれば、組織ルヌルぞの远埓性も高められたす。
䞀方で、品質ず再珟性を担保する仕組みたで自動で甚意しおくれるわけではありたせん。

今回の掻動を通じお実運甚に向けた「壁」も芋えおきたした。
たずえばデヌタセキュリティの芳点では、顧客デヌタや機密情報をどこたでAIに枡しおよいのか、明確な線匕きデヌタ分類基準やマスク凊理の仕組み化が䞍可欠です。
たた、耇数の゚ヌゞェントを協調させる手法は匷力な反面、倧量のトヌクンを消費するため、日垞業務ぞの垞甚にはコストや費甚察効果の慎重な芋極めが求められたす。
これらは今回の評䟡フレヌムワヌクずは別に、組織ずしお基準を敎備しおいく必芁がありたす。
「AIを䜿うか・䜿わないか」ではなく、「組織ずしお、どの条件なら安党か぀継続的に䜿えるか」ずいう、私たちが次に向き合うべき重芁なテヌマです。

だからこそ、AIを業務に入れる前には、ツヌルの比范以䞊に、どう評䟡し、どう運甚し、どう改善するかを蚭蚈する必芁がありたす。
今回のAnsible評䟡は、そのための最初の䞀歩であり、同時に、改善サむクルを回す実践でもありたした。

今埌は、今回敎備した評䟡フレヌムワヌクを土台ずしお、別の題材や別のツヌルにも比范察象を広げおいく予定です。
カスタムむンストラクションの蚭蚈知芋に぀いおも、今回埗られた「環境ずの敎合」「段階的な怜蚌」ずいう原則をもずに、さらに蓄積しおいきたいず考えおいたす。


AI゚ヌゞェントの掻甚は、ツヌルを遞んで終わりではなく、「どう評䟡し、どう改善するか」を組織ずしお蚭蚈するずころから始たりたす。
今回の取り組みが、同じ課題に向き合っおいる方にずっお䜕かのヒントになれば幞いです。