🏆

【生成AI】おもろいAIをどう作るか🤔?漫才のネタ作りをささえるAIプロダクト『ささAI』の開発秘話📝

に公開

こんにちは、PdM/ソフトウェアエンジニア/LLMエンジニアのまさぴょんです🐱

今回は、GIFTech2025春にて、漫才のネタ作りを"ささえるAIプロダクト"『ささAI』を開発しましたのでご紹介していきまっする💪🐱🔥

GIFTechは、1ヶ月以上の長期に渡りプロダクト開発をするといういい意味で、
気合いの入りまくったガンギマリ・ハッカソンです💪🥺🔥
『GIFTech 2025 春』について🌸は、こちらをご覧ください📝
https://giftech.io/giftech2025spring/#event

『ささAI』は、漫才のネタづくりをささえるAIプロダクト💪

『ささAI』は、漫才のネタづくりをささえるAIプロダクトです!

漫才師「にぼしいわし」さんの担当として、
漫才のネタづくりを支えるAIプロダクトをGIFTech 2025 チームCが開発しました🌟

🐟にぼしいわしさんプロフィール🐟

にぼしいわしの漫才の創作フロー📝

ヒアリングとヒアリングから得られた洞察👀✨

上記のヒアリングから得られた発見・気づき📝

『ささAI』のプロダクト概要📝

0->1 のアイデアを作る・発想を広げるフェーズをAIがサポート💪🥺🔥

さらに、AIとともに作った素材を 1 -> 10に展開(具体化)するフェーズまで支えてくれるプロダクトです 💪🥺🔥

細かいプロダクトの動きは、動画をチェック✅👍

『ささAI』のデモ動画

https://www.youtube.com/watch?v=8A7AjrmElyU

『ささAI』の機能紹介📝

『ささAI』のプロダクト機能の詳細は、来場者向けに用意したこちらの記事に内容がまとまっています👀✨
https://turquoise-mitten-3bc.notion.site/AI-1e077f38346280f3897afd1767326615#1e077f38346280dfa578f215c3d35c71

以下は、上記の記事から一部抜粋した機能を紹介していきます📝

Topページ

Googel ログインをすることで無料アカウントが作成されて使い始めることができます!

AIキャラクターの人格設定ページ

  • 6人のAIキャラクターの人格設定をカスタマイズできるページです。
    • ここは、AIの名前、年齢、職業、マインドを選択することができる機能を備えています。
    • ここでカスタマイズした内容が、のちに説明するAI機能に反映されます。
人格設定のプロンプトについて📝
  • AIをより人間に近い人格に近づけるために、プロフィールの作り込みを徹底しています。
    • 基本情報, 価値観, 趣味, 言動, マインド, エピソードを設定。
    • さらには、上記の設定に近いであろう参考にすべき有名人などの情報も提示。
      • 有名人 = 情報量が多くAIが参考にしやすい📝

  • AIキャラクターを編集している時の様子。
    • AIの名前、年齢、職業、マインドを編集できます📝

ネットワークページ

ネットワークページは、スレッド単位でネットワークを管理しており、まるでChatGPTのような感覚で新しいスレッドを作り、AIとのアイデアを広げる対話を楽しむことができます!

ネットワークページで利用しているAIたち📝
  • 文章生成系AIには、Gemini 2.0 Flash を利用📝
  • 画像生成のAIには、Gemini 2.0 Flash Experimental Image Generation を利用📝

ネットワーク・スレッドの新規作成ページ

  • キーワードを入力後、生成スタイルを選び「AIとの対話」を始めることができます!

  • 選べる4つの生成スタイル
    • 4つの生成スタイルの特徴は、後ほど説明します📝

  • 「生成」ボタンを押すと、ネットワーク・スレッドが作成される!
    • 入力キーワードと、選んだ生成スタイルでのAIからの回答が生成されます🌟

ネットワーク・スレッド詳細ページ

  • ネットワーク・スレッド詳細ページ(スレッド内)では、AIとの対話内容をネットワーク上に閲覧することができます!

連想

連想:与えられたキーワードから、6体のAIたちが「連想」するものを答えてくれるモードです!

「連想」システムプロンプトの工夫点📝
  • 単語は(形容詞+名詞)の文法を指定することで、表現豊かな連想を生成させています!
  • 思いついた中から具体的でエッジの聞いた単語を選ぶように指定しているため、面白さに繋がりやすい!

あるある

あるある: 与えられたキーワードから、6体のAIたちが「あるある」を答えてくれるモードです!

「あるある」システムプロンプトの工夫点📝
  • 「面白いあるあるの条件」を言語化して提示することで、AIにも「面白いあるある」という概念を理解させている📝
    • いわしさんからヒアリングで伺った「面白いあるある」の条件を学習させています。
  • その「あるある」は他の人に共感してもらえる内容であることが望ましいですと指定することで「共感あるある」を生み出しやすくしている。

AI反応

AI 反応:与えられたキーワードから、6体のAIたちが「面白いリアクション」をしてくれるモードです!

「AI反応」システムプロンプトの工夫点📝
  • 「出来事や発言」に対して、会話が広がる、もしくは面白いリアクションをするように指定!
    • 上記のようにすることで、ユーザーとAIの会話が広がりやすくしている!

画像生成

画像生成 :与えられたキーワードから、6体のAIたちが「画像」を生成してくれるモードです!

「画像生成」システムプロンプトの工夫点📝
  • 画像生成の精度を上げるための「画像生成プロンプト」を作成してから「画像生成」を実行している!
    • 画像生成の精度を上げるための「画像生成プロンプト」を作成!
      • 「参考人物」の感性や視点を強く反映させ、その人物が見ているであろう世界や、好みそうなスタイル、雰囲気を想像してプロンプトを作成するように指示!

AIにぼし

AI にぼし:与えられたキーワードに対して、3体の「AIにぼし」たちがリアクションをしてくれるモードです!

「AIにぼし」システムプロンプトの工夫点📝
  • 3タイプの思考パラメーターで「にぼし」さんのいろいろな側面を表現しています!
    • 思考パラーメターの内容は、以下のとおり📝
      • 誇張した解釈に基づいてリアクションをする。
      • 他の事実と結びつけて新しい事実として解釈をし、リアクションする。
      • 子供のような常識で解釈をし、それに基づいてリアクションする。

プレミアム・ページ

プレミアムページは、ネットワークページで獲得したアイデアをさらに面白く広げる「1 → 10」を実現するための機能です!

プレミアムページでは、次の 3つの機能があります!

  1. クリエイティブ大喜利
  2. 別シチュあるある
  3. あるあるフュージョン

また、プレミアムページではAI モデルを Gemini 2.5 Pro / Grok 3 のどちらかから選ぶことができます!

クリエイティブ大喜利

  • テキストを入力し、決定後に特定の部分を選択すると、その部分を面白く具体的な表現にしてくれる機能です!
  • 例えば、テーマ:**「高級ブランドの紙袋に安いものが入っている」**を入力して、回答してほしい部分: **「安いもの」**を選択して「生成」ボタンを押す。
    • すると以下のような結果が・・・👀🌟

「クリエイティブ大喜利」システムプロンプトの工夫点📝
  • 次のようにプロンプトで指定することで「クリエイティブ大喜利」を作り出しています📝
    • お題:「{text}」
    • このお題の「{target_part}」の部分に入る、面白い回答を10個考えてください。
    • 回答が他の人の想定とは異なるように、独創的なアイデアを出してください。
    • ただし、回答の半分程度は現実的にありそうな範囲から少しズラす程度に留めてください。

別シチュあるある

  • 入力された「あるある」を別のシチュエーションで発生する「類似あるある」に変換する機能です!
    • 例えば**「高級ブランドの紙袋に安いものが入っている」**を入力して生成するを実行する。
    • すると以下のような結果が・・・👀🌟

「別シチュあるある」システムプロンプトの工夫点📝
  • 次のようにプロンプトで指定することで「別シチュあるある」を作り出しています📝
    • この「元のあるあるネタ」に基づいて、別の状況や視点から共感できる「あるあるネタ」を新たに10個考えてください。
    • ただし、単なる言い換えではなく、元のネタの本質的な構造や感情を捉えつつ、異なる具体的なシチュエーションを描写するようにしてください。

あるあるフュージョン

  • 2つの異なるあるあるを融合して、新しいあるあるシチュエーションを創造する機能です!
    • 例:「バーのカウンターでお客様からドリンクをもらう」と「野球のベンチで横に並んで応援している」を融合させる場合🔥
    • すると以下のような結果が・・・👀🌟

「あるあるフュージョン」システムプロンプトの工夫点📝
  • 次のようにプロンプトで指定することで「あるあるフュージョン」を作り出しています📝
    • 「あるある1」と「あるある2」の両方の要素を巧みに融合させ、全く新しい視点の「あるあるネタ」を10個生成
    • 単なる組み合わせではなく、2つのネタの共通点や対比、意外な関連性を見つけ出し、思わず「確かに!」と膝を打つような、あるいはクスッと笑えるような独創的なネタを期待します。

技術的なポイント📝

ここからは、技術的なポイントについて紹介していきます📝

アーキテクチャ図

使用技術/アーキテクチャ図は、次のとおりです📝

ServerとAIの使い分けについて📝

特筆すべきは、2つのServerの使い分けと、AIの使い分けです。

Serverの使い分け📝

  1. System Serverは『Hono』: Migrationや、DBの更新処理などはこちらに集約。
  2. AI Serverは『FastAPI』:AIのLogicやAPIを提供。

LLM Modelの使い分け📝

「文章生成」

  • Gemini 2.0 Flash:速度と品質のバランスがいいため「ネットワークページ」で利用📝
  • Gemini 2.5 Pro:速度は劣るが品質が高いため「プレミアム機能」で利用📝
  • Grok 3:速度は劣るが品質が高いため「プレミアム機能」で利用📝

「画像生成」

  • Gemini 2.0 Flash Experimental Image Generation

AIのチューニングポイント📝

AIからの回答をなるべく面白くするためにこだわったのが、システムプロンプトの設計(AIのチューニング)です!

プロンプトとは「調教」である!!

プロンプトとは「調教」である!!
という謎の迷言も途中で生まれました💪🥺🔥

技術的な課題と解決策

直面した技術的な課題に対して、それぞれ解決策を練って対応しました📝

個人的な技術ポイントまとめ📝

今回のプロダクトで、特に技術的に面白いポイントは、

  1. 個性的なAIたち(全9隊)の人格の作り込み📝
  2. 最大6体のAIを呼び出して回答を生成するハンドリング処理
  3. "発想"を広げる体験を表現するNetwork UI/UX

おもろいAIをどう作るか🤔? 『ささAI』の開発秘話📝

ここからは『ささAI』の開発秘話をお話しできればと思います!
「おもろいAIをどう作るか🤔?」
「どうすれば漫才のネタ作りを支える機能を提供できるか🤔?」
その試行錯誤の軌跡を一緒に辿っていきましょう👍

チームメンバーと役割分担📝

GIFTech2025春では、1チーム6人体制です📝

私たちのチームでは、6人のメンバーがそれぞれどこかのチームに所属する形を取りました📝

エンジニアリングアンケート(一部抜粋)

役割分担を決めるにあたり、以下のようにアンケートを取って、
経験年数, 開発に参加できる時間, 使用できる技術, 経験のあるポジション, 担当したいポジションなどのアンケートを取得した上で役割を決めていきました📝

エンジニアリングアンケートの詳細📝

エンジニアリングアンケートの詳細📝

開発の経験年数について📝

開発に使える時間について📝

使用できる技術や経験について📝

担当したことのあるポジション(役割)について📝

担当したいポジション(役割)について📝

GIFTech Day1/Day2(3/15-16): キックオフ & 初回インタビュー

GIFTech Day1/Day2(3/15-16)は、チームメンバーとの顔合わせと、イベントのキックオフ/AI講座があり、そして担当するエンターテイナーの方との初回インタビューなど目白押しの2日間でした🔥

1回目のヒアリングは、にぼしいわしさんの漫才作りについての質問や、AIに助けて欲しいポイントなどを中心にヒアリングしました📝

漫才ネタの創作ワークフロー(ユーザーストーリー)を明確化する際に作った創作ワークフローの図📝

2日目後半には、初回のプロダクト案を発表しなければいけないとのことで最初に作成したプロダクト案がこちら...💁
(最終形態と形やコンセプトが全然違う👀)

ヒアリング1回目後の記念写真/Day1後の飲み会の様子🍺🥺🔥

ヒアリング1回目後の記念写真📸

Day1終わった後の飲み会の様子
盛り上がりすぎて、みんなで謎のニックネーム付け大会が始まりました🍺🥺🔥

1週目(3/17-23): 2回目のヒアリングに向けた準備期間📝

キックオフの後の最初の1週目(3/17-23)は、2回目のヒアリングに向けた準備期間(開発は一切なし)になりました📝

本当は少しでも開発に着手しておきたかったのですが、初回のプロダクト案で「にぼしいわし」さんが満足するプロダクトを作れる自信がなかったため、この要件定義フェーズにちゃんと時間をかけようと思い動きました!

結果、チームメンバーそれぞれ1人1つのプロダクト案を作り込み、それらをベースに2回目のヒアリングに挑むことができました💪
(2回目のヒアリング内容に関しては、後述します📝)

2回目のヒアリングに向けた準備期間にしていたこと📝

「目的」を明確化する📝

どんな「課題」があるのかを言語化する/優先順位を付ける📝

「課題」に対する「機能」のブレスト(発散・アイデア出し)をする📝

発散された「機能」をフィルタリングする📝

フィルタリングした「機能」たちを漫才の創作ワークフロー(ユーザーストーリー)

そして、各メンバー1人1プロダクト案を作り込むことに💪🥺🔥

2週目(3/24-30): 2回目ヒアリングと、プロダクトの方針(要件定義)をする

2週目(3/24-30)は、2回目ヒアリングと、プロダクトの方針(要件定義)と役割分担の明確化、タスク整理をすることに注力した1週間でした📝

3/24 2回目ヒアリング📝の詳細📝

3/24 2回目ヒアリング📝の詳細📝

プロダクトの目的の共有・認識一致📝 (2-3分)

漫才のネタ創作フローの最終確認📝 (2-3分)

課題が解決した時の嬉しさ度合い (3〜5分)

6つのプロダクト案について紹介しながら、ヒアリングを進めました📝

アプリ名: アイダシ(アイディア + 出汁 => アイディア出し)

アプリ名: 縁の下の力モチーズ💪

アプリ名: wacha

アプリ名: アイデア・マッチング

アプリ名: にぼラボ

3週目(3/31-4/6): 開発期間 Sprint1

3週目にして、ようやく鬼のような開発期間が本格スタートしました📝
ここからは、役割分担したチームごとに成果をあげることに集中するターンになります💪🥺🔥

タスク/チケット管理は、JIRAで実施しました📝

4週目(4/7-13): 開発期間 Sprint2

PR Merge通知スレッドの様子👀✨

仕事終わりの夜中は「もくもく会」📝

日曜は、渋谷のコワーキングスペースで「開発会」を開催📝
https://www.xandwork.com/location/shibuya/

5週目(4/14-20): 予備の開発期間 Sprint3

4/15に対面でプロダクトの提出をしました📝

プロダクト提出の際に、改善要望やBugの発見などもあったため、2~3日時間をもらい対応をしました📝

6週目(4/21-26): 運用期間/本番の発表準備📝

6週目(4/21-26)の運用期間は、実際に「にぼしいわし」さんに『ささAIを作って』もらいながら、私たち開発陣は、何かあったらスクランブル対応ができるようにしていました🔥

また、本番の発表準備をする必要もあったので、資料作りなどを進めていました📝

JIRAでのチケット管理の様子📝

4/27(日):本番🌟

4/27(日)本番当日は、大賑わいでした🎉

それぞれのエンターテイナーさんの出し物も最高でした🙌

4/27(日)本番当日の詳細レポートは、ぜひGIFCatさんの記事をご覧ください💁
https://qiita.com/GIFCat/items/478fb974c47c12ba0999

優勝🏆は逃したが、目的は達成した!それでいい👍

今回、残念ながら優勝🏆はできませんでした。。。
ただ「にぼしいわし」さんの漫才のネタ作りを支えるAIプロダクトを作る!
という使命(目的)はまっとうしたので、私は満足です🙏

敗因の分析📝

今後のためにもちゃんと敗因は分析しておきましょう📝

敗因は、ユーザーストーリー(UX)が複雑すぎることだと私は思いました。。。

  • 機能の多さと、新しすぎるUX📝職人(玄人)向けと一般向けは違うのである…📝
  • にぼしいわしさんに特化して尖らせまくった結果、一般の来場者には理解しづらいプロダクトとなった...

慣れが必要なプロダクトであることを反省📝
一方向ではないユーザーストーリー/ユーザー体験は、初見だと分かりずらい...📝

ちなみに、優勝チームはマダミス制作支援ツール『ミステリーラボ』を開発したチームBでした🏆
https://zenn.dev/hitotori/articles/9b2781d4948f76#produced-by-teamb

また、最高の仲間に出会えました🙌🎉!!

実は、GIFTechには前回も参加しており、その時の仲間とは今でも定期的に会ういい関係を築けています👍✨
https://zenn.dev/manase/articles/17c418761c6159

今回の仲間たちもいいメンバーで、まさに「ささえあい」ながら『ささAI』を開発していくことができました💪

これからもよろしくお願いします🍺🙏✨

Special Thanks: GIFTech 2025 TeamC Member🌟

ジェイソン: チーム最年少であり、リーダー!甘いマスクの裏には殺人衝動が!?🔥

チーム・リーダー/PdM
AIチーム所属:フロントエンド/バックエンド/AI担当

https://x.com/Shibuya_14

ジンジン: インフラ構築から運用までお手のものな「💪縁の下の力持ち💪」

システム開発チーム所属:バックエンド/インフラ担当

https://x.com/_dak2_

先生(元ATMくん): ほろ苦い過去をもつ、ATM気質な面倒見のいい頼れる兄貴分✨

UI/UXデザインチーム所属:フロントエンド担当
システム開発チーム所属:フロントエンド担当

https://x.com/koshikeeeee

mizukawa: 心にそっと寄り添う、やさしさで世界をふわりと彩る誰もが魅了される天性のプリンセス🐱✨

UI/UXデザインチーム所属:デザイナー

https://x.com/mizukawa_design

没にされたニックネームとキャッチコピー📝

チョロ姫: 「勝てば8万!!」が合図な金欠デザイナー💸🥺💸

Tboy: AIチームのエース!!プレミアムモードを1人で開発したジェントルメン🥸!

AIチーム所属:フロントエンド/バックエンド/AI担当

https://x.com/kogettsu

たつやみ: Mr.ハッカソン狂い🐱🔥チームCのボケ担当(ツッコミ不在)

チーム・サブリーダー
システム開発チーム所属: フロントエンド/バックエンド担当
AIチーム所属: AI設計方針などを一部、監督

https://x.com/masanyon1212

まとめ📝

『ささAI』は語呂がいい👍✨
Yahooニュースでもにぼしいわしさんと『ささAI』の話が出ていて、嬉しかった👀✨
https://news.yahoo.co.jp/articles/551a71dbecac85f66e1d8810065b8e79a42ee900

あと、ハッカソンで、PR(Pull Request)数152本はエグいって...👀

[おまけ1] アーカイブ・コーナー📝

ここからは、当日の発表資料などアーカイブ作品のコーナーです💁

ピッチ資料📝

A1パネル

A1パネルの角には、当日にぼしいわしさんたちの直筆サインをいただきました🙏🌟

A4チラシ

[おまけ2] ギャラリー:『3体のAIにぼし🐟🐟🐟』

  • 3体の「AIにぼし」をご紹介します🐟🐟🐟

🐟 AIにぼし01号機 🐟

🐟 AIにぼし02号機 🐟

🐟 AIにぼし03号機 🐟

[おまけ3] ギャラリー:『個性ゆたかな6体のAIたち🐈』

哀愁の漂うおっさん:『テツオ』

天真爛漫、生粋のチャラ男:『チーカネ』

頑固一徹、渋い大阪芸人:『ダイんゴ』

ひねくれた性格なのに、なぜか憎めない:『ヨシヒロだしん』

元祖大阪のおばちゃん:『ミエコ』

可愛くてごめん❤️港区女子:『ミキ』

参考・引用

https://giftech.io/giftech2025spring/#event

https://turquoise-mitten-3bc.notion.site/AI-1e077f38346280f3897afd1767326615#1e077f38346280dfa578f215c3d35c71

https://zenn.dev/manase/scraps/e74b2565baf739

https://qiita.com/GIFCat/items/40cacc0da0c8606ab20b

https://qiita.com/GIFCat/items/478fb974c47c12ba0999

https://zenn.dev/hitotori/articles/9b2781d4948f76#produced-by-teamb

Discussion