Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AIエージェントを支える設計

 AIエージェントを支える設計

2025-07-25 設計ナイト2025の登壇資料です。

Avatar for takuya kikuchi

takuya kikuchi

July 25, 2025
Tweet

More Decks by takuya kikuchi

Other Decks in Technology

Transcript

  1. 自己紹介
 菊池琢弥 / Takuya Kikuchi 
 株式会社Algomatic ネオセールスカンパニーCTO 
 


    生成AI界隈からきました
 生成AI領域で複数事業展開するスタートアップで 
 営業領域事業の技術責任者をやっています。 
 高専卒、2012年からソフトウェアエンジニアです。 
 
 ドット絵を描いて暮らしたい 

  2. 事前知識1: LLMによって広がった「システム」の世界 
 • LLM登場以前: 
 ◦ 「プロセス」や「ルール」がシステム化対象 
 ▪

    e.g. メールの送信元アドレスに応じてメールを振り分ける 
 
 • LLM登場後: 
 ◦ 人間の「思考」もシステム化の対象となった 
 ▪ e.g. メールの内容(クレーム or 要望 or その他)に応じてメールを振り 分ける =メールの内容を解釈する思考 

  3. 事前知識3: 「気がついたらAIエージェントになっていた」プロダクト紹介 
 リスト 提供 企業情報収集 企業名や住所、URL情報からWeb‧独⾃DBを探索し、収集 収集したデータの加⼯や評価 担当者収集 企業の役員‧従業員の情報をWeb‧独⾃DBを探索し、収集

    収集したデータの加⼯や評価 1to1⽂章⽣成 企業情報、担当者情報を元に、ターゲットリストに最適なオリ ジナルの1to1メッセージを作成、評価 アプローチ実⾏ メール/問い合わせフォーム/SNS/⼿紙などのあらゆるチャネル からアプローチを実施 データ分析 どういった内容、業界、役職、部署へのアプローチが効果的で あったか分析し提⽰ アプローチ先 情報収集 連絡先、問い合わせフォームをWeb‧独⾃DBを探索し、収集 収集したデータの加⼯や評価
  4. 「気がついたら」ってどういうことなの 
 1. 営業領域で何か事業やろう!
 2. アウトバウンド営業を支援する仮説思いつく
 3. 仮説実証のために営業代行をやろう!
 4. 仮説はともかく、AIフル活用して営業代行で成果だそう!


    5. 仕組みつくれた、成果でた!
 6. 複数の顧客が「利用したい」といってくれている!この仕組み、そのまま売れるので は?
 7. 営業AIエージェント「アポドリ」としてリリース!

  5. アポドリのワークフロー(再掲) 
 リスト 提供 企業情報収集 企業名や住所、URL情報からWeb‧独⾃DBを探索し、収集 収集したデータの加⼯や評価 担当者収集 企業の役員‧従業員の情報をWeb‧独⾃DBを探索し、収集 収集したデータの加⼯や評価

    1to1⽂章⽣成 企業情報、担当者情報を元に、ターゲットリストに最適なオリ ジナルの1to1メッセージを作成、評価 アプローチ実⾏ メール/問い合わせフォーム/SNS/⼿紙などのあらゆるチャネル からアプローチを実施 データ分析 どういった内容、業界、役職、部署へのアプローチが効果的で あったか分析し提⽰ アプローチ先 情報収集 連絡先、問い合わせフォームをWeb‧独⾃DBを探索し、収集 収集したデータの加⼯や評価
  6. 最低限のシステム実装 
 何を作るべきか、何を作らざるべきか
 あるもの
 • 営業ドメインエキスパート
 • 粗いワークフロー
 
 →

    人間がどう頑張っても無理な部分 だけシステムとして実装する
   システム化できない部分は自分たちで手動オペレーション 
   PoC段階なので作り込むことは避けたい。CLIツールとスプシで戦う 

  7. 最低限のシステム実装 
 システム アプローチしたい 企業リスト インプット 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる

    アプローチ計画 アプローチ実行 連絡先収集ツール 営業メールの テンプレート作成 いろんなノウハウが必要 ↓ 作業負荷は高いが、 数が少ないので人間でもできる
  8. 最低限のシステム実装 
 システム アプローチしたい 企業リスト インプット 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる

    アプローチ計画 アプローチ実行 連絡先収集ツール テンプレをつくる人間 いつ、どの企業に、 どの文面を送るか ↓ 頭はこんがらがるが、 なんとかなる
  9. 最低限のシステム実装 
 システム アプローチしたい 企業リスト インプット 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる

    アプローチ計画 アプローチ実行 連絡先収集ツール テンプレをつくる人間 アプローチ計画をする人間 アプローチ先企業の特徴を 踏まえて、 1社1社個別の 文面を作成し、テンプレに埋 め込む ↓ 1000件の作文は さすがに無理
  10. 最低限のシステム実装 
 システム アプローチしたい 企業リスト インプット 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる

    アプローチ計画 アプローチ実行 連絡先収集ツール テンプレをつくる人間 アプローチ計画をする人間 1to1文面をつくるツール
  11. 最低限のシステム実装 
 システム アプローチしたい 企業リスト インプット 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる

    アプローチ計画 アプローチ実行 連絡先収集ツール テンプレをつくる人間 アプローチ計画をする人間 1to1文面をつくるツール メール送信など GASや手動でなんとかなる
  12. 最低限のシステム実装 
 システム アプローチしたい 企業リスト インプット 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる

    アプローチ計画 アプローチ実行 連絡先収集ツール テンプレをつくる人間 アプローチ計画をする人間 1to1文面をつくるツール アプローチを実行する人間
  13. 業務フローの複雑化 
 インプットとして企業URLを受領できないケースが増 えてくる
 →「企業HP特定」という業務が追加 
 
 すると、企業HP特定の精度 が問題になってくる
 業務フロー

    企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる アプローチ計画 アプローチ実行 企業名からHP特定 New!
  14. 業務フローの複雑化 
 インプットとして企業URLを受領できないケースが増 えてくる
 →「企業HP特定」という業務が追加 
 
 すると、企業HP特定の精度が問題になってくる
 →人間による「目検チェック」業務追加 


    
 追加された業務実現のための機能実装 
 業務フロー 企業リストから連絡先を収集 アプローチ文面のテンプレ作り 企業ごとの1to1文面をつくる アプローチ計画 アプローチ実行 企業名からHP特定 New! 収集結果を目検 New!
  15. モジュールごとの設計方針 
 • モジュールごとに設計パターンを選定
 ◦ トランザクションスクリプト
 ◦ クリーンアーキテクチャ
 
 •

    どう選ぶか?
 ◦ モジュール(サブドメイン)のカテゴリーを見極める※ 
 ▪ 補完: 競争優位を生まない 
 ▪ 一般: 外部サービスで代替可能
 ▪ 中核: 競争優位の源泉
 ※ドメイン駆動設計をはじめよう 1章「事業活動を分析する」より
  16. モジュールごとの設計方針 
 • モジュールごとに設計パターンを選定
 ◦ トランザクションスクリプト
 ◦ クリーンアーキテクチャ
 
 •

    どう選ぶか?
 ◦ モジュール(サブドメイン)のカテゴリーを見極める※ 
 ▪ 補完: 競争優位を生まない →トランザクションスクリプト 
 ▪ 一般: 外部サービスで代替可能 →トランザクションスクリプト 
 ▪ 中核: 競争優位の源泉
 ※ドメイン駆動設計をはじめよう 1章「事業活動を分析する」より
  17. モジュールごとの設計方針 
 • モジュールごとに設計パターンを選定
 ◦ トランザクションスクリプト
 ◦ クリーンアーキテクチャ
 
 •

    どう選ぶか?
 ◦ モジュール(サブドメイン)のカテゴリーを見極める※
 ▪ 補完: 競争優位を生まない →トランザクションスクリプト
 ▪ 一般: 外部サービスで代替可能 →トランザクションスクリプト
 ▪ 中核: 競争優位の源泉 →? 
 ※ドメイン駆動設計をはじめよう 1章「事業活動を分析する」より
  18. 「中核」サブドメインの設計 
 • もれなく「変更容易性」が重要 
 • これまでの業務システムであれば、
 クリーンアーキテクチャなど「変更容易性を担保する」設計が必須 になる
 


    • AIエージェントの場合、中核サブドメインの設計パターンも2種類存在 
 ◦ このサブドメインで表現するのは「ルール」か「思考」か

  19. 「中核」サブドメインの設計 
 ルール(これまでの業務システムと同様) 
 → 複雑な業務ロジックを安全に実装可能な設計
   クリーンアーキテクチャなど
 
 思考


    → 開発主体をエンジニアからドメインエキスパートに委譲する
  外部のワークフローツールなどを活用し、
  「ドメインエキスパートが機能実装できる仕組み」とする
  モジュールの実装は、ドメインエキスパートが実装した機能の
  呼び出しを行うトランザクションスクリプト

  20. 「アポドリ」の具体例 
 • 「計画」サブドメイン(中核サブドメイン) 
 ◦ いつ、どの宛先に、どの文面を送るか?
 ◦ 複雑なルール に従ったアプローチ計画


    →クリーンアーキテクチャ 
 
 • 「戦略」サブドメイン(中核サブドメイン) 
 ◦ アプローチテンプレ文面および1to1カスタマイズ文面の生成
 ◦ ドメインエキスパートが実装できるようにする
 →ノーコードツールに詳細を委譲。モジュールとしてはツール呼び出しする だけのトランザクションスクリプト 

  21. いまの設計はどうか 
 • 現在の設計(コンテキストマップ)は比較的早い時期から(頭の中には)できていた し、大きなブレもない
 • 初期から「そこそこ良い設計」が見えていた
 
 • なぜそれができたか?


    ◦ 自分たちでオペレーションを回している
 →自分がドメインエキスパートである 
 →筋のいい設計がしやすい 
 
 ◦ 機能追加時に「関心の分離」と「サブドメインの複雑さ」を意識する

  22. AIエージェントとこれまでの業務システム 
 • まだまだAIエージェントならではの設計ベストプラクティスはわかってない、知見 が広まってない 
 
 • 「結局これまでのシステムと同じ」かもしれない 


    • あるいは、違ったプラクティスがあるかも 
 
 「AIエージェントのソフトウェア設計」に、 
  より多くのエンジニアが取り組んでくれると嬉しいなあ 

  23. 63 事業‧開発知⾒の発信 サービス⼀覧 採⽤情報 • エンジニア • デザイナー • 新規/既存

    事業開発 • マーケター • ドメインエキスパート • etc • 営業AIエージェント • 採⽤AIエージェント • デザインAIエージェント • ゲーム翻訳 • コンサルティング‧受託 開発 • etc 事業開発 開発‧テックブログ