Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GPTを使った水平思考クイズの投稿サイトを作ってみた
Search
eatski
July 28, 2023
Programming
0
240
GPTを使った水平思考クイズの投稿サイトを作ってみた
https://iesona.com/
eatski
July 28, 2023
Tweet
Share
More Decks by eatski
See All by eatski
Testing Library流でフロントエンドテストのコスパを最大化する
eatski
3
1.3k
Other Decks in Programming
See All in Programming
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
180
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
4
1.2k
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
5
9.2k
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
780
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
160
AI時代のソフトウェア開発を考える(2025/07版) / Agentic Software Engineering Findy 2025-07 Edition
twada
PRO
106
40k
CDK引数設計道場100本ノック
badmintoncryer
2
530
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
1.2k
Hack Claude Code with Claude Code
choplin
8
2.8k
TypeScriptでDXを上げろ! Hono編
yusukebe
3
850
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
310
AIともっと楽するE2Eテスト
myohei
9
3.1k
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Documentation Writing (for coders)
carmenintech
72
4.9k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.8k
Become a Pro
speakerdeck
PRO
29
5.4k
A better future with KSS
kneath
238
17k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Transcript
LLM×水平思考クイズ 2023/07/28 by eatski
自己紹介
H.N eatski(いとすき) 仕事 Webアプリケーションエンジニア 趣味 マーダーミステリー、TRPGにハマりたい twitter https://twitter.com/eatski629
今日話すこと LLMを使用して、水平思考クイズを遊ぶ上での課題を解決しました。
水平思考クイズとは 不可解な状況が提示され、「なぜそうなったか」を推理していくクイズ 例:ウミガメのスープ 「ある男性が、海の近くのレストランでウミガメのスープを注文しました。彼はスープを一口飲んだところで、シェフに問いかけました。 『すみません、これはウミガメのスープで合っていますか?』 シェフは『はい、お客様が召し上がったのは間違いなくウミガメのスープですよ』と答えました。 男性は会計を済ませ、家に帰ると自殺してしまいました。」 いったいなぜでしょう? 出典: ポール・スローンのウミガメのスープ
質問をして真相を探る 手がかりとして「はい」「いいえ」で答えられる質問をすることができる。 解答者「ウミガメのスープは自殺の理由に関係がありますか?」 出題者「はい」 解答者「ウミガメのスープは美味しかったですか?」 出題者「わからない」
何が課題? 水平思考クイズは質問に回答するための真相を知っている出題者が必要であるため、1人で遊 ぶことが難しい。
出題者をITを使って代替できないか? →難しい 質問が自然言語 質問文を解析するだけではなく論理的に正しい回答を返す必要がある
LLMを使おう 文章生成AIにクイズの出題者をやってもらおう
開発しました! Yesonor AIとウミガメのスープを楽しめる水平思 考クイズの投稿サイト https://iesona.com/
デモ https://iesona.com/stories/5ajwV3ME5dHyZmd
機能の紹介と実現方法の解説
【機能1】質問に対して回答する機能 どう実現したか GPT(Chat Completions API)に真相と質問を結合したプロンプトを与え、回答を出力とし て得るようにした プロンプトのイメージ ## 命令 以下の情報と例に基づいて、ユーザーの質問にTrue(
はい) 、False( いいえ) 、Unknown( 不明/ 言及なし) で答えなさい。 ## 問題 太郎さんは目がいいのにメガネを掛けている。なぜ? ## 真相 太郎さんはオシャレ好きであり、度が入っていない伊達メガネを掛けている。 ## 質問(解答者の入力した文章) 太郎さんは自分の意思でメガネをかけていますか?
回答の精度を高める工夫 質問の例をGPTに与える 一捻りあるクイズだと通常のLLMの文章生成では作者の意図した回答を得られないこともあ る。 そのため、作者には1つの問題に対して質問とその回答の例を3問以上入力するように求めて いる。(いわゆるfew shot learning) 太郎さんは自分の意思でメガネをかけている? →
はい 太郎さんは男ですか? → わからない 太郎さんのメガネには度が入っている? → いいえ
【機能2】カスタムメッセージ機能 クイズの形式上、質問の回答が「はい」か「いいえ」しかないので解答者視点どうしても情 報が不足してしまう。 そのため、一部の質問に対して回答として作者が設定した独自の返答を返すことができる機 能を実装した。 質問: 太郎さんのメガネには度が入っていますか? 回答: いい質問ですね!太郎さんのメガネは伊達メガネであり、度は入っていません。
どう実現したか 質問の例ごとに任意で独自メッセージを設定できるように 回答者からの質問が いずれかの質問の例と意味が近い距離にある文章であり、 かつ独自メッセージが設定されていた場合、 はい」「いいえ」だけではなくその独自メッセージを返すようにした。
質問同士の距離を計算する この時の質問同士の距離を計算するのに Open AIのEmbeddingsを利用してい る。 ※ Embeddingsとは文章の位置をベクト ルとして返してくれるAPI
サイトを作ってみて 意外にGPTがきちんと回答を返してくれる 解答者視点どうしても情報が足りず手詰まりになってしまう もっといろんな人に遊んでほしい
おわりに Yesonorにぜひ遊びに来てください!
Thank you!