NTT西日本のブログ - TECH PLAY

TECH PLAY

NTT西日本

NTT西日本 の技術ブログ

å…š85ä»¶

はじめに NTT西日本の服郚です。本蚘事ではMicrosoft Forms、Microsoft Lists、Power Automateを䜿っお、ブログ蚘事のレビュヌ効率化を実珟したのでご玹介したす。 以䞋6回のシリヌズで第1回ずなる今回は抂芁線ずしおワヌクフロヌの怜蚎内容や構築したリ゜ヌスの抂芁に぀いおご玹介したす。 本蚘事は2025幎9月時点の情報に基づきたす。 ①~抂芁線~ (本蚘事) ②~Microsoft Lists/Microsoft Forms~ ③~Power AutomateによるMicrosoft Listsぞの自動登録線~ ④~Power Automateによるレビュヌフロヌ前線~ â‘€~Power Automateによるレビュヌフロヌ䞭線~ ⑥~Power Automateによるレビュヌフロヌ埌線~ 察象読者 本蚘事が想定する察象読者は以䞋の通りです。 自動化に興味がある人 繰り返しの定垞的な䜜業に困っおいる人 Microsoft Forms/Microsoft Lists/Power Automateを䜿っおみたい人 背景 NTT WEST Engineers' Blog に向けお、ブログ蚘事のレビュヌプロセスを効率化したいずいう芁望を受けお執筆者が怜蚎・構築したした。 SaaSの新芏サヌビスを導入する予算はありたせんでしたが、幞い党瀟的にMicrosoft Forms、Microsoft Lists、Power Automateが利甚できる環境だったため、これらを甚いおブログ蚘事レビュヌのワヌクフロヌを構築したした。 䜿甚するツヌルの玹介 レビュヌフロヌ構築にあたり䜿甚したツヌルを簡単にご玹介したす。 Microsoft Forms Microsoft 提䟛するアンケヌト、クむズ、投祚フォヌムを簡単に䜜成・共有できるWebツヌルです。 今回は投皿者がレビュヌ䟝頌を申し蟌むためのフォヌムずしお利甚したす。 Microsoft Forms とは - Microsoft サポート Microsoft Lists Microsoft が提䟛する情報远跡アプリで、チヌムで情報を敎理、共同䜜業、共有するのに圹立぀ツヌルです。 今回はSharepoint䞊に構築し蚘事の提出状況やレビュヌ進捗をトラッキングするために䜿甚したす。 Microsoft 365 のリストとは何ですか? - Microsoft サポート Power Automate Microsoftが提䟛するクラりドベヌスのRPAツヌルで、プログラミング知識がなくおも、日垞の繰り返し䜜業や郚門間の連携などを自動化する「ワヌクフロヌフロヌ」をノヌコヌドで䜜成できたす。 Microsoft Forms の回答を怜知しおMicrosoft Listsに自動で登録したり、投皿者やレビュアヌぞ通知したりずいった凊理を自動化するために䜿甚したす。 Microsoft Power Automate – Process Automation プラットフォーム | Microsoft レビュヌフロヌの党䜓像 はじめにレビュヌフロヌ構築のためにどういった凊理が必芁か敎理したした。 倧たかな流れは以䞋の通りです。 ①. 投皿者がMicrosoft Formsでレビュヌ䟝頌をあげる。 ②. Formsの回答内容をListsに自動登録する。 ③. 運営担圓者にレビュアヌのアサむンを䟝頌する。 ④. レビュアヌにレビュヌ䟝頌を通知し、レビュヌを察応する。 â‘€. 必芁に応じお蚘事の修正を䟝頌する。 ⑥. レビュヌが完了したら蚘事を公開し、投皿者に通知する。 実際に察応するずきの考慮事項を螏たえお敎理した結果、レビュヌフロヌの党䜓像は以䞋のようになりたした。 ※あくたでむメヌゞです。実際に構築したリ゜ヌスの凊理の流れずは䞀郚異なる郚分がありたす。 砎線の矢印PowerAutomateで自動的に凊理される内容 実線の矢印ナヌザヌによる操䜜等を衚す内容 構築したリ゜ヌス 敎理したレビュヌフロヌを実珟するために以䞋のステップに分けおリ゜ヌスを構築したした。 詳现に぀いおは次回以降にご玹介したす。 1.Microsoft Formsでレビュヌ䟝頌フォヌムに回答する。 投皿者がレビュヌを䟝頌するための申し蟌みフォヌムを構築したした。 詳现は 第2回 で玹介したす。 2.Microsoft Listsで進捗管理リストに登録する。 レビュヌの進捗を管理するために以䞋のようなMicrosoft Listsを構築したした。 Microsoft Listsの詳现は 第2回 で玹介したす。 たた、Microsoft Formsの回答送信を怜知しおMicrosoft Listsに自動登録するためのPower Automateのクラりドフロヌを構築したした。 Microsoft Formsの回答内容をMicrosoft Listsに自動登録するPower Automateの詳现は第3回で玹介したす。 3.レビュアヌのアサむンを䟝頌する。 新芏のレビュヌ䟝頌がきたずきには運営の担圓者にレビュアヌをアサむンするように䟝頌するためのPower Automateのクラりドフロヌを構築したした。 こちらの詳现は第4回で玹介したす。 4.レビュヌ察応をする。 レビュアヌずしお蚭定された担圓者宛にレビュヌ䟝頌をあげお応答内容を凊理するためのPower Automateのクラりドフロヌを構築したした。 このフロヌは修正された蚘事に察する再レビュヌ䟝頌をあげる際にも呌び出されたす。 こちらの詳现は第5回で玹介したす。 5.必芁に応じお修正䟝頌を出す。 レビュヌの結果、投皿者に修正を䟝頌するためのPower Automateのクラりドフロヌを構築したした。 こちらの詳现は第6回で玹介したす。 6.蚘事公開に぀いお投皿者に通知する。 レビュヌが完了し、蚘事が公開されたこずを投皿者に通知するためのPower Automateのクラりドフロヌを構築したした。 こちらの詳现は第6回で玹介したす。 たずめ 今回は本ブログ開蚭にむけお構築した投皿蚘事レビュヌのワヌクフロヌずリ゜ヌスの抂芁をご玹介したした。 次回以降で各リ゜ヌスの詳现をご玹介しおいきたす。 執筆者 服郚 真智(NTT西日本 ビゞネス営業本郚所属) 普段はAWS案件の提案、蚭蚈、構築等の支揎を行っおいたす。 自業務の効率化のためにPython,Power Automate,生成AI等を䜿っお日々詊行錯誀しおいたす。 2025 Japan AWS Top Engineers (Services) 商暙 Microsoft (Microsoft Entra 、 Microsoft Teams 、 Power Automate 、 Microsoft Lists 、 Microsoft Forms)及び関連する名称䞊びにそれぞれのロゎは、米囜 Microsoft Corporation の米囜およびその他の囜における商暙たたは登録商暙です。
はじめに NTTスマヌトコネクトの山䞋です。昚今、生成AIを掻甚した゜フトりェア開発が泚目されおいたす。特にコヌディングにおいお日倜さたざたなコヌディング支揎ツヌルが登堎し、その利甚法が暡玢されおいたす。本蚘事では生成AIを甚いたAIコヌディングの抂芁からコヌディングのスタむルに぀いお玹介いたしたす。 ※この蚘事は2025幎8月珟圚の情報に基づきたす 察象読者 本蚘事で想定する察象読者は以䞋の通りです。 生成AIを甚いた゜フトりェア開発に興味がある人 AIコヌディングツヌルの導入を怜蚎しおいる人 AIコヌディングを孊がうずしおいる人 背景 2022幎末のChatGPT登堎以降、生成AIを掻甚したコヌディング支揎ツヌルが発展し、゜フトりェア開発に倧きな圱響をもたらしおいたす。しかし、これらのツヌルを効果的に掻甚するためには、AIコヌディングに合わせたやり方を身に぀ける必芁がありたす。筆者自身、2024幎12月からCursor、2025幎6月からClaude Codeを利甚しAIコヌディングには特有の進め方があるこずを実感したした。本蚘事では、その経隓から埗られた知芋を共有し、AIコヌディングツヌルをより効果的に掻甚するためのアプロヌチを玹介したす。 AIコヌディングずは 埓来、゜フトりェア開発のコヌディングは人が行っおいたした。芁件定矩、蚭蚈を経おプログラミング蚀語ず゚ディタず呌ばれるツヌルを甚いおシステムの挙動ずなるロゞックを蚘述したす。たたコヌディングも負荷を軜枛するために、静的解析や補完によっお入力を支揎するツヌルが甚いられおきたしたが、あくたで人が蚘述するこずを前提ずされおいたす。 ChatGPT登堎以降、急速にAIにコヌディングさせようずする詊みが発展しおいたす。 最初は生成AIをプロンプトを送り、応答結果の゜ヌスコヌドを甚いる方法が詊されたす。 しかし、プロンプトだけでは埗られる情報が限られるため、倖郚の情報にアクセスする技術RAGやツヌル呌び出し(Function calling)などのプロンプト以倖から情報を埗る技術が泚目され、これらの技術はコヌディングの堎に限らず甚いられるようになりたした。 たたコヌディングでは芁件や蚭蚈などの情報からタスクを蚈画し、実行する胜力が必芁ずなりたす。タスクの蚈画ず実行をAIが代行する、AI゚ヌゞェントずいう仕組みが導入され始めたした。このAI゚ヌゞェントの技術によっおコヌディング内容を事现かに指瀺するこずなく自埋的なコヌディングが可胜ずなりたした。本蚘事のAIコヌディングはAI゚ヌゞェントを甚いたコヌディングを前提ずしたす。 AIコヌディングは䞀般的に生成AIず連携しおコヌディングするツヌルを利甚したす。 ここでAIコヌディングツヌルの䞀䟋ずしおCline、Cursor、Claude Codeずいう3皮類のツヌルを玹介したす。 ClineはVisual Studio Codeの拡匵機胜ずしお動䜜するオヌプン゜ヌスのコヌディング゚ヌゞェントです。 耇数のAIプロバむダヌClaude、OpenAI、Gemini等に察応しおいたす。AI゚ヌゞェントずしお埌述のツヌルよりも先行しおリリヌスされおいたす。たたClineからRoo Codeなど掟生ツヌルが誕生しおいたす。 CursorはAnysphere瀟が提䟛するVisual Studio CodeをベヌスずしたGUIコヌド゚ディタヌです。圓初はAI゚ヌゞェントの機胜はなく、入力指瀺を送りAIで修正する圢態でしたが2024幎11月にAgentモヌドがリリヌスされたした。そしお2025幎8月にCLI版のCursor CLIがリリヌスされたした。 Claude CodeはAnthropic瀟が提䟛するCLIで動䜜する゚ヌゞェント型コヌディングツヌルずしお2025幎5月にリリヌスされたした。Anthropic瀟はClaudeずいう生成AIを開発しおおり、1日あたり5時間以内であれば制限なくClaude CodeからClaudeを利甚できたす。2025幎8月28日から週単䜍に制限が远加予定 ツヌル名 特城 開発元 䞻な提䟛圢態 Cline Visual Studio Codeの拡匵機胜ずしお動䜜するオヌプン゜ヌスのコヌディング゚ヌゞェントRoo Code等の掟生含む コミュニティ オヌプン゜ヌス Cursor Visual Studio CodeをベヌスずしたGUIコヌド゚ディタヌ Anysphere瀟 無料 / 有料 Claude Code CLIで動䜜する゚ヌゞェント型コヌディングツヌル Anthropic瀟 有料定額 / 埓量 䞊蚘以倖にもAIコヌディングのツヌルは倚数提䟛されおおり、日々これらのツヌルが登堎しアップデヌトされおいたす。開発者䜓隓やシステム連携などを考慮しお遞定する必芁がありたす。 AIコヌディングではこれらのツヌルを利甚しお生成AIに察しお情報を提䟛し指瀺するこずでコヌディングを進めおいきたす。 AIコヌディングのスタむルに぀いお 筆者は2024幎12月からCursor、2025幎6月からClaude Codeを䞻に利甚しおいたす。 初めおAIコヌディングをした際は曖昧な指瀺でコヌディングが進むこずに感動したした。 しかし早々に、思ったようにコヌディングが進たない状態になりたした。 AIコヌディングにはAIコヌディングのアプロヌチの方法スタむルがあり、そのスタむルに぀いお知る必芁があったのです。 AIコヌディングのスタむルずしお2぀の抂念を玹介したいず思いたす。それは、 「バむブコヌディングVibe Coding」ず「゚ヌゞェンティックコヌディングAgentic Coding」です。 バむブコヌディングはOpenAIの共同蚭立者でもあるアンドレむ・カヌパシヌ氏によっお提唱された甚語で生成AIず察話をしながら創発的なコヌディングを行いたす。゚ヌゞェンティックコヌディングは高レベルの目暙からタスク蚈画、実行、怜蚌、修正たでを゚ヌゞェントが自埋的に行いたす。 AI゚ヌゞェントを甚いた堎合、バむブコヌディングでは抜象的な指瀺に察しおもAI゚ヌゞェントが解釈しコヌディングを進めたす。䞀方で゚ヌゞェンティックコヌディングでは、目暙蚭定以降は人を介さずAI゚ヌゞェントの機胜をフル掻甚するやり方です。 筆者は、はじめおAIコヌディングを始めた際にバむブコヌディングによっお曖昧な指瀺でさえも動くアプリケヌションが生成されるこずに感動したした。手䜜業では䜕時間もかかるであろう実装がAIコヌディングによっおものの数分で出来䞊がるのです。 しかし、バむブコヌディングを続けおいるずある問題が発生したす。システムの芏暡がある皋床を超えるず、コヌディングの粟床が䜎䞋するように感じられたす。具䜓的には、リク゚ストした機胜が実装されない。指摘した修正がい぀たでも盎らないずいったこずが起こりたした。1、2時間で8割できたものの、残り2割が半日たっおも出来䞊がらないのです。 その原因は䜕でしょうかそれは、生成AIは䞀床に無限の情報を扱えるわけではなく、限られた量の情報しか扱えないこずにありたす。コヌディングを進めるなかで扱う情報量が増えおいくこずで意図した修正が行われないこずになりたす。AIコヌディングツヌルは情報の圧瞮や芁玄する技術を甚いお、凊理を継続しようずしたすが、倧きなシステムをすべお探玢しお的確に修正しおいくこずは困難になりたす。 そこで゚ヌゞェンティックコヌディングのように戊略的に蚈画的にタスク蚭蚈し、情報を敎理しながらコヌディングを遂行する考え方を取り入れる必芁がありたす。 バむブコヌディング䞀蟺倒ではなく、バむブコヌディングや゚ヌゞェンティックコヌディングを適材適所で䜿い分ける必芁がありたす。䟋えば、小芏暡なプロトタむピングではバむブコヌディングで行い、システムの芁件が明確になったら、゚ヌゞェンティックコヌディングで開発を進める、ずいうように状況によっおこれらを組み合わせるこずも考えられたす。 AIコヌディングの登堎によっお゚ンゞニアのコヌディング量は枛少する可胜性が高い䞀方、これらのスタむルを戊略的に䜿い分け、開発の芋通しを立おるこずがより重芁な仕事になりたす。 今埌もAIコヌディングをずりたく状況は間違いなく倉化しおいきたすが、AIに ”䞞投げ” するのではなく、AIず協調し、ずもに成長しおいく姿勢こそが、結果ずしお良いプロダクトを生み出す近道になるのかもしれたせん。 たずめ AIコヌディングの抂芁ずAIコヌディングツヌルの玹介を行いたした。たたAIコヌディングのスタむルずしおバむブコヌディングず゚ヌゞェンティックコヌディングに぀いお説明したした。AIコヌディングを進めるにあたっお、状況に合わせたコヌディングのスタむルを取り入れ、芋通しを立おるこずがより重芁になるず筆者は考えたす。 執筆者 山䞋 矩陜NTTスマヌトコネクト株匏䌚瀟 ビゞネスむノベヌション郚 NTTスマヌトコネクトの新芏事業開発に埓事し、医療機関向けのサヌビスや動画配信・ラむブコマヌスの立ち䞊げや生成AIサヌビスの開発に携わっおいたす。 参考資料・出兞 本蚘事を執筆するにあたり、以䞋のサむトを参考にしたした。 【論文】Vibe Coding vs. Agentic Coding: Fundamentals and Practical Implications of Agentic AI 【曞籍】珟堎で掻甚するためのAI゚ヌゞェント実践入門 【ポッドキャスト】fukabori.fm 131. AIコヌディングの珟圚地 w/ twada 【ブログ】https://zenn.dev/mizchi/articles/all-in-on-cline 商暙 「OpenAI」は、OpenAI, Inc.の商暙もしくは登録商暙です。 「ChatGPT」は、OpenAI OpCo, LLC の商暙もしくは登録商暙です。 「Claude」は、Anthropic PBC の商暙もしくは登録商暙です。 「Cursor」は、Anysphere, Inc. の商暙もしくは登録商暙です。 「Gemini」は、Google LLC の商暙もしくは登録商暙です。
はじめに NTTビゞネス゜リュヌションズの鶎田です。 最近話題の生成AIツヌル”Microsoft 365 Copilot”はずおも䟿利ですが、䜕も考えずに導入しおしたうず、機密情報の挏掩など、思いがけないセキュリティ事故に぀ながっおしたうリスクがありたす。 本蚘事では、無防備にMicrosoft 365 Copilotを導入しおしたうず、セキュリティリスクが増す理由ず察凊方法を解説させおいただきたす。 察象読者 本蚘事が想定する察象読者は以䞋の通りです。 Microsoft 365 Copilot におけるセキュリティ察策に興味がある方 Microsoft 365 Copilot の導入を怜蚎されおいる方 Microsoft 365 Copilot を利甚されおいる方 "AI × セキュリティ"党般に興味がある方 Microsoft 365 Copilot ずは Teamsなどの Microsoft 365 アプリに組み蟌たれたAI機胜のこずです。 プロンプト自然蚀語で Microsoft 365 内のデヌタを操䜜グルヌプチャットの芁玄 等するこずができたす。 匕甚元: Microsoft Teams のチャットずチャネルで Copilot を䜿甚する Microsoft 365 Copilot ず Microsoft 365 デヌタの関係 Microsoft 365 Copilot におけるセキュリティを考える䞊で、 最初に抌さえおおくべきポむントは、Microsoft 365 Copilot ず Microsoft 365 デヌタの関係 に぀いおです。 Microsoft 365 Copilotは、Microsoft 365 内のいかなるデヌタにもアクセスできるのでしょうか 答えは、 "いいえ" です。 倧原則ずしお、Microsoft 365 Copilotは、その Microsoft 365 Copilot を操䜜しおいるナヌザが保持する ”Microsoft 365 デヌタぞのアクセス暩”に基づいお動䜜 したす。 たずえば、以䞋のプロンプト①は、ナヌザAは自分自身の Exchange Online のメヌルデヌタにはアクセス可胜なので機胜する可胜性がありたす。しかしながら、プロンプト②は、ナヌザAはナヌザBのExchange Online のメヌルデヌタにはアクセスできないので機胜したせん。 〇プロンプト① ナヌザA「昚日自分が受信したメヌルで未返信のものを教えお」 ×プロンプト② ナヌザA「ナヌザB個人が受信したメヌルで重芁そうなもの教えお」 Microsoft 365 Copilot におけるセキュリティリスクず察凊方法 では、次に Microsoft 365 Copilot の利甚においお、どのようなセキュリティリスクがあるのか芋おいきたす たずえば、以䞋のようなシナリオが考えられたす。 䞀般瀟員であるナヌザAは、本来「経営に関わる重芁な情報」ぞアクセスできたせん。しかし、ナヌザAに察し、ファむルぞの過剰なアクセス暩が付䞎されおいる堎合、Microsoft 365 Copilot は、「経営に関わる重芁な情報」を回答しおしたう可胜性がありたす。 アクセス暩のかけ方フォルダ単䜍のアクセス制埡 シンプルな察凊方法は、フォルダ単䜍でアクセス制埡をしおおくこずです。以䞋のようなフォルダ構成にしおおき、ナヌザAに経営フォルダにアクセス暩を付䞎しなければ、ナヌザAによる「経営に関わる重芁な情報を教えお」ずいうプロンプトは機胜しなくなりたす。 ただ、この察凊方法には萜ずし穎がありたす。たずえば、経営フォルダにアクセス可胜な経営幹郚が間違っおたたは゜ヌシャル゚ンゞニアリングなどの意図的な攻撃により、ファむル①を、䞀般瀟員フォルダにコピヌしおしたうリスクがありたす。 䞀般瀟員であるナヌザAは、䞀般瀟員フォルダぞはアクセス可胜ですので、「経営に関わる重芁な情報を教えお」ずいうプロンプトは機胜する可胜性が出おきたす。 アクセス暩のかけ方秘密床ラベルによるアクセス制埡 フォルダ単䜍のアクセス制埡でも、セキュリティリスクは残存しおしたうため、秘密床ラベルによるアクセス制埡がおすすめ です。 秘密床ラベルは、Microsoft Purviewの機胜の䞀぀です。 秘密床ラベル自䜓にナヌザぞのアクセス暩限を蚭定した䞊で、ファむルに玐づけお利甚したす。 秘密床ラベルが玐づけられたファむルは、仮にコピヌされおも秘密床ラベルも䞀緒にコピヌされるため、ファむルぞの適切なアクセス暩が維持される仕組みになっおおり、よりセキュア です。 ただし、秘密床ラベルによるアクセス制埡も完璧なセキュリティを担保するものではありたせん。 たずえば、ファむルに玐づけられおいる秘密床ラベルを別の秘密床ラベルアクセス制限が緩いものに付け替えられおしたう可胜性もありたす。そのため、倚局防埡の考えに則り、フォルダ単䜍のアクセス制埡ず秘密床ラベルによるアクセス制埡を䜵甚するのが望たしいでしょう。 その他のセキュリティ察策 ここたでは、デヌタぞのアクセス暩の芳点でのセキュリティリスクを玹介したした。 他にも様々な芳点でのセキュリティリスクを考慮する必芁がありたすので、いく぀か玹介させおいただきたす。 コミュニケヌションコンプラむアンス Microsoft 365 Copilot の䞍適切たたは危険なプロンプトを怜出できる機胜です。 こちらは、元々 Microsoft 365 Copilot に特化した機胜ではなく、Teamsなどでの人同士のコミュニケヌションに䞍適切な内容ハラスメント等が含たれおいた堎合に怜出できる機胜でしたが、怜出察象が Microsoft 365 Copilot ぞのプロンプトにも拡匵されたした。 AI甹 DSPM – アクティビティ゚クスプロヌラ 組織内で利甚されおいる Microsoft 365 Copilot に投入されたプロンプトを、管理者は確認するこずが可胜です。Microsoft 365 Copilot の利甚においお䜕か問題が発生した堎合に、監査甚途でも利甚できたす。 Microsoft 365 Copilot の利甚者の皆様は、管理者にはプロンプトを芋られおいる可胜性があるので、䞍甚意な䜿い方はしないように泚意しおいただければず思いたす。 DLP 重芁なデヌタの組織倖流出を防止するための機胜です。珟時点では、Microsoft 365 Copilotずは盎接関連がないですが、将来的に、Microsoft 365 Copilot の機胜が拡充され、自然蚀語でメヌル送信などが実珟できおしたうような時代になるず、DLP芳点も意識しおおく必芁がありたす。 たずめ 埓来の゜フトりェアはコヌドで蚘茉された通りにしか動かなかったため、ある意味、セキュリティ察策もしやすかったです。しかしながら、AIは人間の想定を超える動きをするこずがあるため、AIの利甚に際しおは、今たで以䞊にセキュリティを考慮する必芁がありたす。 最近では、AI゚ヌゞェントを人間ず同じようにIDで管理しおいく朮流もありたす。AIの進化は本圓に日新月歩で、セキュリティも䞊走しおいく必芁がありたす。本ブログではAI時代に圹立぀セキュリティ情報を発信しおいきたいず思いたす。 執筆者 鶎田光圬 クラりドずセキュリティず犬が奜き。Microsoft MVP for Security、Microsoft Top Partner Engineer、CISSP、TOEIC L/R 920、IPA システムアヌキテクト etc 商暙 「Microsoft 365 Copilot」「Microsoft 365」「Microsoft Teams」「Microsoft Exchange Online」「Microsoft Purview」「Microsoft SharePoint」「Microsoft OneDrive」は、米囜Microsoft Corporationの米囜およびその他の囜における登録商暙たたは商暙です。
1. はじめに NTT西日本の盞浊です。 NTT西日本公匏の技術ブログが始たりたした。蚘念すべき第䞀回ずいうこずで、最近の私の「やっおみた」を共有したいず思いたす。 最近よく耳にする AI゚ヌゞェント 。でも、「結局どういう堎面で圹立぀の」ず思う方も倚いのではないでしょうか。 本蚘事では、自治䜓業務の䞀぀である粗倧ごみ収集申蟌の受付を䟋にしお、 察話型で申蟌受付をしおくれるAI゚ヌゞェント のサンプルを䜜っおみたのでご玹介したす。 䜜っおみお気づいた工倫ポむントや「ここは意倖ず難しい」ずいうずころも亀え぀぀、「自分の業務に圓おはめられるかも」ず思っおいただける内容を目指したす。 1. はじめに 2. 察象読者 3. 背景 4. 「粗倧ごみ収集の申蟌受付゚ヌゞェント」を蚭蚈する 申蟌受付では䜕をする必芁があるのか 蚭蚈のポむント どこたでLLMに任せるか 5. 実装 プログラムの流れ LLMぞの指瀺 6. デモ デモたずめ 7. オヌプン゜ヌスモデルでの远加実隓 meta/llama-3-1-8b-instruct google/gemma-3-12b-it RedHatAI/gemma-3-27b-it-quantized.w8a8 結果ず課題 8. たずめ 実業務を想定しお゚ヌゞェントを蚭蚈したら動䜜した 「なんでもLLM」にしない蚭蚈が肝心 最埌に 執筆者 商暙 2. 察象読者 本蚘事が想定する察象読者は以䞋の通りです。 AI゚ヌゞェントに興味があり、具䜓的な実装事䟋を知りたい方 「自分の業務もAI゚ヌゞェント化できるのでは」ず感じおみたい方 3. 背景 AI゚ヌゞェントずは䜕か 「AI゚ヌゞェント」ずいう蚀葉を耳にする機䌚が増えたした。簡単に蚀えば、 LLM倧芏暡蚀語モデルがツヌルを遞び、状況に応じお自埋的に動く仕組み のこずです。 LangChainの創蚭者 Harrison Chase氏 は次のように説明しおいたす。 AI゚ヌゞェントずは、LLMがアプリケヌションの制埡方法を決定するシステムのこず。重芁なのは「どの皋床゚ヌゞェンティックか」ずいう芳点でずらえるこず。参考: LangChain Blog  ぀たり「LLMが䌚話を進めながら、必芁に応じおツヌルを呌ぶ」仕組みだずむメヌゞしおいただければ十分です。 䟋えばLangChain公匏サンプルには、ナヌザが「倩気は」ず聞くずLLMが「倩気APIを呌ぶ」ず刀断しお答えるチャットボットがありたす。参考: LangChain Agents Tutorial  今回の題材 こうしたデモは面癜いですが、「実際の業務でどう圹立぀のか」はただ芋えにくいです。そこで、今回は自治䜓業務の䞀぀、 粗倧ごみ収集の申蟌受付 を題材に、察話で必芁情報を集めお予玄たで進める゚ヌゞェントを詊䜜しおいたす。 4. 「粗倧ごみ収集の申蟌受付゚ヌゞェント」を蚭蚈する 今回の題材は、自治䜓業務の䞀぀である 粗倧ごみ収集の申蟌受付 です。゚ヌゞェント化するにあたり、必芁な芁玠を敎理したした。 申蟌受付では䜕をする必芁があるのか 粗倧ごみ収集の申蟌受付では、単に「予玄を受け付ける」だけではなく、いく぀かの確認ややり取りが必芁になりたす。具䜓的には次のような内容です。 申蟌者情報の確認 氏名・䜏所・電話番号ずいった、誰が申し蟌んでいるのかを特定する情報を集める。 収集垌望内容の確認 どの品目を、䜕個、い぀、どこで回収しおほしいのかを聎き取る。 FAQ察応 「この品目は回収できる」「幎末幎始は察応しおいる」など、利甚者からの質問に答える。 料金芋積 品目ず数量に基づいお料金を蚈算し、利甚者に提瀺する。 ぀たり、 必芁な情報を挏れなく収集し、寄り道的な質問にも答えながら、最終的に予玄を確定する こずが申蟌受付の圹割です。 蚭蚈のポむント AI゚ヌゞェントずは「LLMが䌚話を進めながら、必芁に応じおツヌルを呌ぶ」ものだずするず、LLMに䞎える圹割、呌ぶこずのできるツヌル矀は䜕か、を考える必芁がありたす。 LLMに䞎える圹割 ゚ヌゞェントの目的は、申蟌に必芁な情報を揃えるこず。そのため、LLMには 䞍足情報を把握 し、 次に聞く質問を考える 圹割を䞎えたす。 ツヌル矀 LLMに䜿っおほしい機胜を関数ずしお䞎えたす。今回は resolve_date 日付正芏化、 check_collectible 収集可胜日か刀定、 estimate_fee 料金芋積、 rag_search FAQ察応、 reserve 予玄確定を䞎えたす。 どこたでLLMに任せるか AI゚ヌゞェントでは、LLMが様々な刀断を行うこずになりたす。䞀方、LLMの刀断が必ずしも蚭蚈者の意図通りになるこずを保蚌するこずはできたせん。䟋えば、「申蟌者には必芁なすべおの情報を入力しおほしい」ず考えおいおも、LLMは「これだけの情報があれば十分だろう」ず勝手に刀断するこずもありたす。 そのため今回の実装では、 LLM: 柔軟な誘導質問生成、ツヌル遞択 プログラム: 受付確定や必須情報の充足刀定 ずいう圹割分担にしたした。すべおLLMに任せるこずもできたすが、 LLM+ルヌルのハむブリッド型 にするこずで「自然な䌚話」ず「確実性」を䞡立したす。 なお、プログラムが必須情報の充足刀定を行うには、 いたどの情報たで収集したかずいう情報を構造化しお保持する 仕組み必芁です。そのため、Pydanticモデル GarbageRequest を甚意し、プログラムが扱いやすいJSON圢匏で情報を管理したす。 5. 実装 実装のポむントです。詳现コヌドは GitHub に掲茉するので、ここでは凊理の流れずLLMに䞎えた指瀺を玹介したす。 プログラムの流れ LLMぞの指瀺 LLMには2぀の圹割を䞎えたす。 䞍足情報を把握 収集すべき情報は申蟌情報スキヌマ GarbageRequest の䞭で、氏名・䜏所・電話番号...ず指定されおいたす。LLMにはナヌザの発話からこれらの情報を抜出する圹割を䞎えたす。 # 䌚話から申蟌情報を抜出するためのプロンプト # システムプロンプト あなたは自治䜓窓口のAIです。ナヌザ発話から粗倧ごみ申蟌情報を抜出し、 必ず JSON のみで出力したす。説明文やコヌドブロックは犁止。 {GarbageRequestで指定されたフォヌマット} 䞍明は null のたたでよい。電話は数字のみ。time_slot は『午前/午埌』。 盞察日付は日本時間の本日 {本日の日付をプログラムで取埗しお埋め蟌む} 基準で YYYY-MM-DD に正芏化する。 # ナヌザプロンプト {ナヌザの発話を入れる} 次に聞く質問を考える LLMにはもう䞀぀、次に聞く質問を䜜る圹割も䞎えたす。出力には必ず、 珟圚のステヌタス: [ASK]䞍足情報を聞く / [REVIEW]申蟌内容をたずめお確認 / [ANSWER]FAQぞの回答 次に聞く質問 珟圚たでに収集した申蟌情報䞀芧JSON圢匏 を含めるように指瀺したす。こうするこずで、埌でLLMの出力を䜿っおプログラムに刀断を仰ぐこずができたす。 # 次に聞く質問を䜜るためのプロンプト # システムプロンプト あなたは自治䜓の粗倧ごみ申蟌アシスタントです。目的は申蟌に必芁な情報を揃えるこず。 【察話方針】 - ナヌザが『可吊の質問䟋◯/◯は回収できたすか』をした堎合は、たず可胜な範囲で **即答** する。 ・日曜/1月1日/12月31日などの䞀埋NGは、䜏所が未取埗でも『䞍可』ず即答しおよい。 ・それ以倖は、䜏所ず垌望日が揃ったら `check_collectible` で刀定する。䜏所が無い堎合は、可吊に必芁な **最小限の質問䜏所** のみを先に聞く。 - 情報に䞍足があれば、優先床に埓い“1項目だけ”䞁寧に質問する。ただし、状況に応じお順番を入れ替えおもよい。優先床: name > address > phone > item_description > quantity > preferred_date > time_slot > pickup_location。 - ナヌザが盞察/曖昧な日付䟋来週氎曜、明埌日 等を述べたずきは resolve_date で YYYY-MM-DD に正芏化し、 そのタヌンは必ず [ASK] で『この日付(YYYY-MM-DD)でよろしいですか』ず確認しおから次ぞ進む。 - preferred_date ず address が揃ったら check_collectible を䜿う。NGなら代替案を簡朔に提案しお [ASK]。 - item_description ず quantity が揃ったら estimate_fee で抂算料金を出し、[REVIEW] に金額を含める。 - 制床/ルヌル等のFAQは rag_search を䜿っお短く回答し、その埌は䞍足収集に戻る通垞は[ASK]。 【出力圢匏厳守】 1) 先頭行に [ASK] / [REVIEW] / [ANSWER] のいずれか 2) ナヌザに芋せる本文䞁寧・簡朔 3) request の最新状態を JSON で同梱 [REQUEST_JSON] {これたでに収集した申蟌情報䞀芧} [/REQUEST_JSON] 【利甚可胜ツヌル】{ツヌル䞀芧ずそれぞれの䜿い方} 【状況コンテキスト】{盎近の䌚話暡様} 【これたでのツヌル実行ログ】{agent_scratchpad} # ナヌザプロンプト {ナヌザの入力} 6. デモ ここでは、実際に゚ヌゞェントを動かし、次のようなシナリオで想定通りの挙動になるかを確認したす。 ①曖昧な日付の正芏化 「来週の氎曜日に、゜ファを䞀脚回収に来おもらえたすか」ずいう䟝頌に察し、゚ヌゞェントが具䜓的な日付を返し、確認を促すか。 ②䞍足情報の収集 ゚ヌゞェントが順に質問を行い、申蟌に必芁な情報の収集が進むか。 ③予玄確認ず確定 申蟌に必芁な情報が集たった時、゚ヌゞェントがナヌザに察しお確認を促すか。ナヌザの確認がOKだった堎合に受付を完了するか。 ④寄り道質問 ナヌザが途䞭で「幎末幎始は回収可胜か」「料金はいくらになるか」ず質問したずき、適切なツヌルを䜿っお質問に回答できるか。 では、実際の゚ヌゞェントの動䜜をシナリオに沿っお远っおみたす。巊偎のパネルには垞に珟圚の申蟌情報が衚瀺され、進行状況が䞀目でわかりたす。 ⓪初期画面 新芏スレッド䜜成盎埌は空欄。ここからナヌザの入力に応じお倀が埋たっおいきたす。 ①曖昧な日付の正芏化 「来週の氎曜日に、゜ファを䞀脚回収に来おもらえたすか」ず䟝頌するず、 item_description: ゜ファ , quantity: 1 が抜出され、日付も resolve_date で 2025-09-03 に倉換されたす。 曖昧な日付を正芏化し、確認の質問を返す。 ②䞍足情報の収集 䞍足情報は優先床順に䞀぀ず぀質問され、回答が巊偎のパネルに反映されたす。 氏名→䜏所→電話番号...ず順番に埋めおいく。 ③予玄確認ず確定 党項目が揃うず[REVIEW]タグで申蟌内容をたずめ、ナヌザが了承すれば reserve が実行されたす。 最終確認埌に予玄番号ず回収日を提瀺。 ④寄り道質問 「幎末幎始は回収できる」「料金は」ずいった質問にも即応可胜です。 check_collectible や estimate_fee を呌び出し、回答埌は䞍足情報収集に戻りたす。 デモたずめ 初期入力から曖昧日付の正芏化たでを自動で凊理 䞍足情報は䞀問䞀答で収集 すべお揃えば最終確認の埌、予玄を確定 FAQ的な寄り道質問にも察応 自然な䌚話の流れで申し蟌み完了たで進めるこず を確認できたした。 7. オヌプン゜ヌスモデルでの远加実隓 GPT-4oで䞀通り動䜜を確認したので、「オヌプン゜ヌスモデルでも再珟できるか」を詊したした。察象は以䞋の3モデルです。 Bedrock (AWS) meta/llama-3-1-8b-instruct 独自デプロむ (EC2 - Lambda - API Gateway経由の利甚) google/gemma-3-12b-it RedHatAI/gemma-3-27b-it-quantized.w8a8 プロンプトずツヌル蚭蚈は共通ずし、 LLM呌び出し郚分ず出力JSON制玄のみ差し替え おいたす。 前章のシナリオ①曖昧な日付の正芏化、②䞍足情報の収集、③予玄確認ず確定、④寄り道質問をもずに怜蚌したしたが、結果ずしおGPT-4oのように最埌たで通せたモデルはなく、いずれも途䞭で課題が明らかになりたした。 meta/llama-3-1-8b-instruct ①曖昧な日付の正芏化 「来週の氎曜日に、゜ファを䞀脚回収に来おもらえたすか」ず䟝頌するず、入力文をそのたたオりム返ししおきたす。LLMがプロンプトの指瀺を正しく理解せず、たた resolve_date ツヌルも䜿っおいないようです。 䟝頌文をそのたた返すのみ。 AWS公匏 には「tool use察応」ずありたすが、 reddit では「ツヌル呌び出しが䞍安定」ずの報告があり、安定性に課題があるず確認できたした。 冒頭で぀たづいたので、ここで䞭断です。 google/gemma-3-12b-it ①曖昧な日付の正芏化 「来週の氎曜日に、゜ファを䞀脚回収に来おもらえたすか」の䟝頌に察し、適切にツヌルを䜿い、具䜓的な日付で確認を促したす。 ②䞍足情報の収集 その埌も順に質問を行い、情報収集を行っおいたす。 ただし「電電倪郎」ずいう名前は「デンデンタロり」ず読む぀もりで入力したしたが、「デントり倪郎」ず解釈されたみたいです。カタカナでの入力促すなどの工倫が必芁です。 䌚話を続けたす。䞀床は名前の蚂正を詊みたすが、巊偎パネルは修正されたせん。 その埌、電話番号を入力した埌から挙動が怪しくなりたす。䞀床確認したはずの回収日を、再確認されたす。さらに「はい、あっおいたす。」ず答えおも、同じ質問を繰り返すようになりたした。巊偎パネルの preferred_date には日付が入っおいるため、プログラムは確認枈ず認識しおいたすが、LLMは未確認ず誀認しおいたす。ここでシナリオは䞭断ずなりたす。 なお別の䌚話では、名前の蚂正をきっかけに申蟌情報党䜓をリセットする事象も芋られたした。リセットに留たらず、申蟌内容を「゜ファ」から「テレビ」に曞き換えるなど、情報を改ざんしおいたす。今回の実隓から、 情報保持の安定性に匱点 があるこずがわかりたした。 RedHatAI/gemma-3-27b-it-quantized.w8a8 ①曖昧な日付の正芏化 「来週の氎曜日に、゜ファを䞀脚回収に来おもらえたすか」の䟝頌に察し、適切にツヌルを䜿い、具䜓的な日付で確認を促したす。ご䞁寧にツヌルを䜿うこずを宣蚀しおいたす。 ②䞍足情報の収集 続いお名前を入力したすが、䜕床入力しおも同じ質問を繰り返されたす。「電電倪郎」を名前ず認識しおいないようです。これ以䞊進たないので䞭断したす。 今床は違う名前でシナリオを詊したす。「山田倪郎」は名前ず認識するようです。その埌も䞍足情報の収集が続きたす。 ③予玄確認ず確定 予玄確認で問題が起きたす。たず回収堎所の確認をされたすが、「マンションのごみ捚お堎に眮きたす」ずいう入力は無芖されたす。諊めお「はい」ず答えるず、申蟌内容の再確認をせずに受付を完了しおしたいたした。 結果ず課題 远加実隓を通じ、 モデル毎の埗手䞍埗手 がわかりたす。 GPT-4o: 幅広く安定 llama-3-1-8b: ツヌル呌び出し䞍安定 gemma-3-12b: 情報保持䞍安定 gemma-3-27b: 日本語固有名詞に匱い、指瀺をスキップするこずがある 特にgemma系列は「固有名詞凊理の匱さ」が共通の課題でした。 クラりドモデルは安定しおいる䞀方、コスト・セキュリティの制玄がありたす。そのためにオヌプン゜ヌスモデルを䜿いたいずいうニヌズを聞くこずが倚いです。 ただし、今回の実隓ではオヌプン゜ヌスモデルをそのたた適甚するのは難しく、 モデルをタスクごずに䜿い分ける蚭蚈 や LoRA/DPOなどの調敎 など、远加の調敎が必芁になるこずがわかりたした。 8. たずめ 実業務を想定しお゚ヌゞェントを蚭蚈したら動䜜した 粗倧ごみ収集の申蟌ずいう具䜓タスクを想定し、受付に必芁な情報収集→曖昧情報の補正→ツヌル連携→最終確認の䞀連の流れを゚ヌゞェントずしお実装したした。寄り道質問料金・収集可吊や日付正芏化など、実際に想定される状況にも察応できおいたす。 「なんでもLLM」にしない蚭蚈が肝心 LLMは䌚話の誘導や刀断に匷い䞀方、確実性が求められる箇所はプログラムでガヌドし、ルヌル化できる凊理はツヌル関数化しお呌び分けるのが安党です。今回も、情報の充足刀定や予玄の意思決定はコヌド偎で刀断しおおり、LLMの柔軟さ x 決定性の担保を䞡立しおいたす。 最埌に 今回はLangChainベヌスで単䞀゚ヌゞェントを構成したしたが、最近は「こんな小難しいプログラムを曞かなくおも」゚ヌゞェントを䜜れるようになっおきおいたす。䟋えば、ロヌコヌド基盀Difyがニュヌスで取り䞊げられるこずが増えおいたす。これを䜿えばほずんどコヌドを曞かずに゚ヌゞェントを構築できたす。 ゚ヌゞェントを䜿うのも䜜るのも、どんどん身近になっおきおいたす 。 ただし、゚ヌゞェントは「魔法」ではありたせん。 芁件定矩ず蚭蚈の積み重ね があっおこそ、珟堎で圹立぀実甚品ずしお䜜るこずができたす。皆さんも、たずは身近な業務から、「ここぱヌゞェント化できるかも」ず考える䞀歩を螏み出しおみおはいかがでしょうか 執筆者 盞浊 倧叞NTT西日本 技術革新郚 AI技術の瀟内盞談圹ずしお、プロトタむプ開発や業務適甚の怜蚎に埓事。 JDLA Deep Learning for ENGINEER2024#1取埗。 商暙 AWS, Amazon Bedrock, Amazon EC2, AWS Lambda, Amazon API Gatewayは、Amazon Web Services, Inc. たたはその関連䌚瀟の商暙たたは登録商暙です。 GPT-4oは、OpenAI, Inc.の商暙たたは登録商暙です。 Llamaは、Meta Platforms, Inc.の商暙たたは登録商暙です。 Gemmaは、Google LLCの商暙たたは登録商暙です。 LangChainは、LangChain, Inc.の商暙たたは登録商暙です。 Difyは、LangGenius, Inc.の商暙たたは登録商暙です。
ごあいさ぀  皆様はじめたしお、NTT西日本グルヌプの゚ンゞニアによる公匏技術者ブログ「NTT WEST Engineers' Blog」をご蚪問いただきありがずうございたす運営の平田です。  NTT西日本グルヌプ各瀟には、クラりド、AI、セキュリティ、デヌタサむ゚ンス、ネットワヌク、サヌバ、アプリケヌション、電気通信、無線など、幅広い分野の゚ンゞニアが倚数圚籍しおおり、日々の業務や自己研鑜を通じお倚くの知芋が蓄積されおいたす。これたで、そうした知芋を瀟倖に発信する機䌚は限られおいたしたが、「瀟倖ぞアりトプットしたい」ずいう倚くの゚ンゞニアの声を受け、技術者ブログを開蚭する運びずなりたした。  本技術者ブログでは、お客さた察応やサヌビス開発・運甚の珟堎で埗られた実践的な知芋、課題解決の手段・工倫、Tipsなど、゚ンゞニアならではの芖点で情報を発信しおいきたす。「こんなこずやっおるんだ」「それ、うちでも䜿えそう」ず思っおもらえるような、圹立぀ニッチな技術ネタをお届けしおいきたす。気軜に読んでいただけるず幞いです。  ゚ンゞニアの皆様にずっお有益な情報源ずなるよう努めおたいりたす。NTT WEST Engineers' Blogの今埌にぜひご期埅ください 謝蟞  本ブログ開蚭にあたり、 NTTドコモビゞネス旧NTTコミュニケヌションズ゚ンゞニアブログ 運営の方々に、倚くのアドバむスをいただきたした。この堎を借りお埡瀌申し䞊げたす。 執筆者 平田賀䞀NTTビゞネス゜リュヌションズ株 バリュヌデザむン郚 システム開発郚門 PaaS/SaaSの開発・運甚、瀟内案件のコンサル、゚ンゞニア育成、NTT WEST Engineers' Blog運営などに携わっおいたす。 技術士(情報工孊郚門)/2025 Japan All AWS Certifications Engineers