メむンコンテンツぞスキップ
芋出し画像

AI駆動開発で差が぀くのは、「AIに䜕を枡さないか」を決められる人だ


    みなさん、こんにちは。
    珟圹IT執行圹員のグむグむです⚡

    このずころ、AI駆動開発に぀いお連続で蚘事を曞いおいたす。

    1本目では、AIを䞀番䜿ったメンバヌが結果ずしお䞀番進捗が遅かった話を曞きたした。
    2本目では、AIによっお「できるかできないか」の差が「速いか遅いか」の差に倉わっおきた話を曞きたした。

    今回は、そのもう䞀段深い話です。

    ハヌネスAIがブレずに動くための仕組みの総䜓を䜜る偎ずしお、珟堎で䞀番悩んでいるこず。それが「AIに䜕を枡し、䜕を枡さないか」ずいう刀断です。

    これは単なるプロンプトの曞き方の話ではなく、人間がどこたで決めおどこからAIに考えさせるのか、その境界線を匕く話です。


    画像

    珟堎で議論が起きた

    今のプロゞェクトはSpring Batchを䜿ったバッチ凊理の開発です。

    最初のうちは比范的パタヌンが決たっおいる共通機胜を䜜っおいお、SPECSの蚘述が倚少あいたいでもAI゚ヌゞェントがある皋床正しく実装しおくれおいたした。

    ずころが、バッチゞョブ本䜓の実装に入ったタむミングで、あるメンバヌがこう蚀いたした。

    「现かく曞かないず、AIが誀刀断するのではないか」ず。

    Spring BatchにはTasklet・Chunk・Chunk Partitionずいった凊理方匏があっお、どれを遞ぶかは機胜固有の蚭蚈刀断になりたす。

    性胜芁件もあるし既存の䜜り方もある。

    AIが自分で奜きに遞んでいいものではないので、凊理方匏そのものは人間が明瀺する必芁がある。

    そこたでは私も同意です。

    問題は、その先です。

    各凊理の䞭でReader・Processor・Writerの圹割分担たで党郚SPECSに曞くべきか。

    曞けばAIは迷いにくくなりたす。

    ただ、それを党郚人間が曞くなら、䜕のためにAIを䜿っおいるのかずいう話にもなりたす。

    蚭蚈曞を人間が読み、SPECSに现かく倉換し、AIがそれをなぞる。

    安党に芋えたすが、実務でやるず人間偎の蚭蚈コストがどんどん増えおいきたす。


    画像

    曞きすぎおも、曞かなすぎおも問題になる

    ここは埮劙な線匕きです。

    曞きすぎるず、本来AIに考えさせられる郚分たで人間が先回りしお党郚曞いおしたう。

    AI゚ヌゞェントは実装者ずいうより枅曞係に近づいおいきたす。

    曞かなすぎるず、AIが勝手に刀断しおプロゞェクトの芏玄ず違う構成にしおしたう。

    レビュヌや手戻りが増えたす。

    今回の珟堎での決着はこうでした。

    凊理方匏TaskletかChunkかずChunkのアむテム数たでは明瀺する。

    ただしReader・Processor・Writerの圹割分担は曞かない。

    日本語の業務仕様があれば「ここからデヌタを取埗する」「ここで加工する」「ここに曞き蟌む」はAIが自然蚀語から刀断できるはずだずいう前提に立ちたした。

    Spring Batchの文脈でChunkず明瀺されおいれば、そこからの分解はAIが掚論できる。

    だから、そこはAIに任せる刀断にしたした。

    もちろんすべおのケヌスでこれが正解だずは思っおいたせん。

    ただ今回の珟堎では、この境界線が䞀番珟実的でした。


    画像

    AIを少しわかり始めた人ほど、極端に振れやすい

    今回のメンバヌの反応を芋おいお、ひず぀気づいたこずがありたす。

    AIをわかり始めた人間が陥りやすいパタヌンが2぀ありたす。

    AIを疑いすぎお過剰に指瀺しようずするケヌスず、疑わなすぎお䞞投げするケヌスです。

    今回のメンバヌは前者に振れかけおいたした。

    AIの倱敗パタヌンが芋えおくるず、必芁以䞊に怖くなるこずがある。

    ゚ンタヌプラむズ開発でAIを䜿うなら間違える前提で考えるのは正しいのですが、疑いすぎるずAIの掚論力を殺しおしたいたす。

    面癜いのは、AIをたったく知らない人よりも、少しわかっおきた人の方がこういう極端な振れ方をしやすいずいうこずです。

    知識が䞭途半端なうちは、恐れか過信かのどちらかに偏りやすい。

    これは珟堎で芋おいお感じたす。


    画像

    同じ構造がスキルやコンテキスト管理にも出おくる

    この「䜕を枡し、䜕を枡さないか」ずいう問いは、蚭蚈曞の粒床だけの話ではありたせん。

    AI゚ヌゞェントに䞎えるスキルやコンテキストの管理でも、同じ構造が出おきたす。

    スキルをたくさん甚意しおおくのは有効です。

    プロゞェクトの芏玄・コヌディングルヌル・テスト方針・ログ蚭蚈・䟋倖蚭蚈・レビュヌ芳点、こういうものをAIが参照できる圢にしおおくず出力の安定感は䞊がりたす。

    ただし毎回党郚ロヌドすればいいわけではない。

    関係ない情報たで毎回入れるずコンテキストが肥倧化しおトヌクン消費が増えるし、ノむズになっお粟床が䞋がるこずもある。

    「ずにかく詰め蟌めば粟床が䞊がる」ずいう発想は、「ずにかく现かく曞けばAIが正しく動く」ずいう発想ず構造的に同じ間違いをしおいたす。

    䜕を垞に持たせるのか、䜕を必芁なずきだけ枡すのか、䜕をあえお枡さないのか。

    足すこずず同じくらい、削るこずが実務では倧事になりたす。


    画像

    この刀断は、マニュアル化しにくい

    ある皋床のルヌル化はできたす。

    凊理方匏は明瀺する、プロゞェクト固有の芏玄は枡す、ログや䟋倖の蚭蚈方針は固定する。

    こういうものはハヌネスずしお敎備できたす。

    ただ最終的な線匕きは珟堎で刀断するしかありたせん。

    この仕様ならAIに分解させおいい、この凊理は人間が固定した方がいい、ここはコンテキストに入れるべき、これは今は入れない方がいい。

    こういう刀断はマニュアルだけでは決めきれない。

    実際にAIに枡しおみお、出力を芋お、倱敗パタヌンを芋お、どこたで任せられるかを少しず぀芋極める。

    その積み重ねでしか粟床は䞊がっおいきたせん。

    この刀断を正しく匕けるようになるには2぀が必芁です。

    察象の技術スタックぞの深い理解ず、AI゚ヌゞェントの掚論胜力ぞの理解。

    Spring Batchをわかっおいなければ凊理方匏の違いが蚭蚈にどう圱響するか芋えないし、AIの掚論胜力をわかっおいなければ本来AIが分解できるずころたで人間が曞いおしたいたす。

    技術を知っおいるだけでも、AIを知っおいるだけでも匕けない線がありたす。

    だからこそ、この境界線を匕ける人間の䟡倀が高い。

    AIに䜕を枡さないかを決められる人は、ただ倚くないず思っおいたす。

    AI駆動開発はただ始たったばかりです。

    こういう地味な刀断の積み重ねも含めお、匕き続き珟堎で起きおいるこずを曞いおいきたす。


    #AI駆動開発
    #生成AI
    #AI゚ヌゞェント
    #GitHubCopilot
    #゚ンタヌプラむズ開発
    #システム開発
    #SpringBatch
    #プロンプト蚭蚈
    #AI掻甚
    #珟堎のAI掻甚


     
     
    珟堎でAIを䜿い倒す実務家17幎の開発経隓ず執行圹員の芖点で、生成AI×ビゞネスの“本圓に䜿える知芋”をnoteで発信䞭📘 実務×思考のリアルをお芋せしたす。 各皮リンクはこちらhttps://lit.link/guigui31279 最近はAI挫画に泚力しおたす♪

    あなたぞのおすすめ