見出し画像

AIで文学研究してみる:オモチャで見る『ハムレット』①

 以下の記事で作ったプロンプトをGeminiのGemに読み込ませて、そのGemにシェイクスピアの『ハムレット』を通しました。


Gemini生成。

LLMに作らせたノードリスト

Node_Id,Node_Type,Label,Work_Name,Act,Scene,Remarks
"1-1","scene","1-1","Hamlet",1,1,"台詞数=32, 登場人物=5人"
"1-2","scene","1-2","Hamlet",1,2,"台詞数=60, 登場人物=10人"
"1-3","scene","1-3","Hamlet",1,3,"台詞数=10, 登場人物=3人"
"1-4","scene","1-4","Hamlet",1,4,"台詞数=23, 登場人物=4人"
"1-5","scene","1-5","Hamlet",1,5,"台詞数=57, 登場人物=4人"
"2-1","scene","2-1","Hamlet",2,1,"台詞数=27, 登場人物=3人"
"2-2","scene","2-2","Hamlet",2,2,"台詞数=115, 登場人物=8人"
"3-1","scene","3-1","Hamlet",3,1,"台詞数=29, 登場人物=7人"
"3-2","scene","3-2","Hamlet",3,2,"台詞数=71, 登場人物=13人"
"3-3","scene","3-3","Hamlet",3,3,"台詞数=6, 登場人物=5人"
"3-4","scene","3-4","Hamlet",3,4,"台詞数=39, 登場人物=4人"
"4-1","scene","4-1","Hamlet",4,1,"台詞数=10, 登場人物=4人"
"4-2","scene","4-2","Hamlet",4,2,"台詞数=11, 登場人物=3人"
"4-3","scene","4-3","Hamlet",4,3,"台詞数=14, 登場人物=3人"
"4-4","scene","4-4","Hamlet",4,4,"台詞数=9, 登場人物=4人"
"4-5","scene","4-5","Hamlet",4,5,"台詞数=22, 登場人物=5人"
"4-6","scene","4-6","Hamlet",4,6,"台詞数=6, 登場人物=3人"
"4-7","scene","4-7","Hamlet",4,7,"台詞数=21, 登場人物=4人"
"5-1","scene","5-1","Hamlet",5,1,"台詞数=54, 登場人物=8人"
"5-2","scene","5-2","Hamlet",5,2,"台詞数=69, 登場人物=9人"
"hamlet","char","Hamlet","Hamlet",0,0,""
"claudius","char","Claudius","Hamlet",0,0,""
"ghost","char","Ghost","Hamlet",0,0,""
"gertrude","char","Gertrude","Hamlet",0,0,""
"polonius","char","Polonius","Hamlet",0,0,""
"laertes","char","Laertes","Hamlet",0,0,""
"ophelia","char","Ophelia","Hamlet",0,0,""
"horatio","char","Horatio","Hamlet",0,0,""
"fortinbras","char","Fortinbras","Hamlet",0,0,""
"voltemand","char","Voltemand","Hamlet",0,0,""
"cornelius","char","Cornelius","Hamlet",0,0,""
"rosencrantz","char","Rosencrantz","Hamlet",0,0,""
"guildenstern","char","Guildenstern","Hamlet",0,0,""
"marcellus","char","Marcellus","Hamlet",0,0,""
"barnardo","char","Barnardo","Hamlet",0,0,""
"francisco","char","Francisco","Hamlet",0,0,""
"osric","char","Osric","Hamlet",0,0,""
"reynaldo","char","Reynaldo","Hamlet",0,0,""
"first-player","char","First Player","Hamlet",0,0,""
"priest","char","Priest","Hamlet",0,0,""
"first-clown","char","First Clown","Hamlet",0,0,""
"second-clown","char","Second Clown","Hamlet",0,0,""
"captain","char","Captain","Hamlet",0,0,""
"first-ambassador","char","First Ambassador","Hamlet",0,0,""
"gentleman","char","Gentleman","Hamlet",0,0,""
"servant","char","Servant","Hamlet",0,0,""
"messenger","char","Messenger","Hamlet",0,0,""
"lord","char","Lord","Hamlet",0,0,""
"prologue","char","Prologue","Hamlet",0,0,""
"player-king","char","Player King","Hamlet",0,0,""
"player-queen","char","Player Queen","Hamlet",0,0,""
"lucianus","char","Lucianus","Hamlet",0,0,""
"first-sailor","char","First Sailor","Hamlet",0,0,""

LLMに作らせたエッジリスト

 上のノードリストのi-jの登場人物数と、下のリストのi-jの数が一致すれば大丈夫です。

Edge_Id,Scene_Node_Id,Char_Node_Id,Work_Name,Act,Scene,Remarks
"1-1::francisco","1-1","francisco","Hamlet",1,1,"話者として出現"
"1-1::barnardo","1-1","barnardo","Hamlet",1,1,"話者として出現"
"1-1::horatio","1-1","horatio","Hamlet",1,1,"話者として出現"
"1-1::marcellus","1-1","marcellus","Hamlet",1,1,"話者として出現"
"1-1::ghost","1-1","ghost","Hamlet",1,1,"舞台指示で出現"
"1-2::claudius","1-2","claudius","Hamlet",1,2,"話者として出現"
"1-2::gertrude","1-2","gertrude","Hamlet",1,2,"話者として出現"
"1-2::hamlet","1-2","hamlet","Hamlet",1,2,"話者として出現"
"1-2::polonius","1-2","polonius","Hamlet",1,2,"話者として出現"
"1-2::laertes","1-2","laertes","Hamlet",1,2,"話者として出現"
"1-2::voltemand","1-2","voltemand","Hamlet",1,2,"話者として出現"
"1-2::cornelius","1-2","cornelius","Hamlet",1,2,"話者として出現"
"1-2::horatio","1-2","horatio","Hamlet",1,2,"話者として出現"
"1-2::marcellus","1-2","marcellus","Hamlet",1,2,"話者として出現"
"1-2::barnardo","1-2","barnardo","Hamlet",1,2,"話者として出現"
"1-3::laertes","1-3","laertes","Hamlet",1,3,"話者として出現"
"1-3::ophelia","1-3","ophelia","Hamlet",1,3,"話者として出現"
"1-3::polonius","1-3","polonius","Hamlet",1,3,"話者として出現"
"1-4::hamlet","1-4","hamlet","Hamlet",1,4,"話者として出現"
"1-4::horatio","1-4","horatio","Hamlet",1,4,"話者として出現"
"1-4::marcellus","1-4","marcellus","Hamlet",1,4,"話者として出現"
"1-4::ghost","1-4","ghost","Hamlet",1,4,"舞台指示で出現"
"1-5::hamlet","1-5","hamlet","Hamlet",1,5,"話者として出現"
"1-5::ghost","1-5","ghost","Hamlet",1,5,"話者として出現"
"1-5::horatio","1-5","horatio","Hamlet",1,5,"話者として出現"
"1-5::marcellus","1-5","marcellus","Hamlet",1,5,"話者として出現"
"2-1::polonius","2-1","polonius","Hamlet",2,1,"話者として出現"
"2-1::reynaldo","2-1","reynaldo","Hamlet",2,1,"話者として出現"
"2-1::ophelia","2-1","ophelia","Hamlet",2,1,"話者として出現"
"2-2::claudius","2-2","claudius","Hamlet",2,2,"話者として出現"
"2-2::gertrude","2-2","gertrude","Hamlet",2,2,"話者として出現"
"2-2::rosencrantz","2-2","rosencrantz","Hamlet",2,2,"話者として出現"
"2-2::guildenstern","2-2","guildenstern","Hamlet",2,2,"話者として出現"
"2-2::polonius","2-2","polonius","Hamlet",2,2,"話者として出現"
"2-2::voltemand","2-2","voltemand","Hamlet",2,2,"話者として出現"
"2-2::hamlet","2-2","hamlet","Hamlet",2,2,"話者として出現"
"2-2::first-player","2-2","first-player","Hamlet",2,2,"話者として出現"
"3-1::claudius","3-1","claudius","Hamlet",3,1,"話者として出現"
"3-1::gertrude","3-1","gertrude","Hamlet",3,1,"話者として出現"
"3-1::polonius","3-1","polonius","Hamlet",3,1,"話者として出現"
"3-1::ophelia","3-1","ophelia","Hamlet",3,1,"話者として出現"
"3-1::rosencrantz","3-1","rosencrantz","Hamlet",3,1,"話者として出現"
"3-1::guildenstern","3-1","guildenstern","Hamlet",3,1,"話者として出現"
"3-1::hamlet","3-1","hamlet","Hamlet",3,1,"話者として出現"
"3-2::hamlet","3-2","hamlet","Hamlet",3,2,"話者として出現"
"3-2::first-player","3-2","first-player","Hamlet",3,2,"話者として出現"
"3-2::polonius","3-2","polonius","Hamlet",3,2,"話者として出現"
"3-2::rosencrantz","3-2","rosencrantz","Hamlet",3,2,"話者として出現"
"3-2::guildenstern","3-2","guildenstern","Hamlet",3,2,"話者として出現"
"3-2::horatio","3-2","horatio","Hamlet",3,2,"話者として出現"
"3-2::claudius","3-2","claudius","Hamlet",3,2,"話者として出現"
"3-2::gertrude","3-2","gertrude","Hamlet",3,2,"話者として出現"
"3-2::ophelia","3-2","ophelia","Hamlet",3,2,"話者として出現"
"3-2::prologue","3-2","prologue","Hamlet",3,2,"話者として出現"
"3-2::player-king","3-2","player-king","Hamlet",3,2,"話者として出現"
"3-2::player-queen","3-2","player-queen","Hamlet",3,2,"話者として出現"
"3-2::lucianus","3-2","lucianus","Hamlet",3,2,"話者として出現"
"3-3::claudius","3-3","claudius","Hamlet",3,3,"話者として出現"
"3-3::rosencrantz","3-3","rosencrantz","Hamlet",3,3,"話者として出現"
"3-3::guildenstern","3-3","guildenstern","Hamlet",3,3,"話者として出現"
"3-3::polonius","3-3","polonius","Hamlet",3,3,"話者として出現"
"3-3::hamlet","3-3","hamlet","Hamlet",3,3,"話者として出現"
"3-4::gertrude","3-4","gertrude","Hamlet",3,4,"話者として出現"
"3-4::polonius","3-4","polonius","Hamlet",3,4,"話者として出現"
"3-4::hamlet","3-4","hamlet","Hamlet",3,4,"話者として出現"
"3-4::ghost","3-4","ghost","Hamlet",3,4,"話者として出現"
"4-1::claudius","4-1","claudius","Hamlet",4,1,"話者として出現"
"4-1::gertrude","4-1","gertrude","Hamlet",4,1,"話者として出現"
"4-1::rosencrantz","4-1","rosencrantz","Hamlet",4,1,"話者として出現"
"4-1::guildenstern","4-1","guildenstern","Hamlet",4,1,"話者として出現"
"4-2::hamlet","4-2","hamlet","Hamlet",4,2,"話者として出現"
"4-2::rosencrantz","4-2","rosencrantz","Hamlet",4,2,"話者として出現"
"4-2::guildenstern","4-2","guildenstern","Hamlet",4,2,"話者として出現"
"4-3::claudius","4-3","claudius","Hamlet",4,3,"話者として出現"
"4-3::rosencrantz","4-3","rosencrantz","Hamlet",4,3,"話者として出現"
"4-3::hamlet","4-3","hamlet","Hamlet",4,3,"話者として出現"
"4-4::fortinbras","4-4","fortinbras","Hamlet",4,4,"話者として出現"
"4-4::captain","4-4","captain","Hamlet",4,4,"話者として出現"
"4-4::hamlet","4-4","hamlet","Hamlet",4,4,"話者として出現"
"4-4::rosencrantz","4-4","rosencrantz","Hamlet",4,4,"話者として出現"
"4-5::gertrude","4-5","gertrude","Hamlet",4,5,"話者として出現"
"4-5::gentleman","4-5","gentleman","Hamlet",4,5,"話者として出現"
"4-5::ophelia","4-5","ophelia","Hamlet",4,5,"話者として出現"
"4-5::claudius","4-5","claudius","Hamlet",4,5,"話者として出現"
"4-5::laertes","4-5","laertes","Hamlet",4,5,"話者として出現"
"4-6::horatio","4-6","horatio","Hamlet",4,6,"話者として出現"
"4-6::servant","4-6","servant","Hamlet",4,6,"話者として出現"
"4-6::first-sailor","4-6","first-sailor","Hamlet",4,6,"話者として出現"
"4-7::claudius","4-7","claudius","Hamlet",4,7,"話者として出現"
"4-7::laertes","4-7","laertes","Hamlet",4,7,"話者として出現"
"4-7::messenger","4-7","messenger","Hamlet",4,7,"話者として出現"
"4-7::gertrude","4-7","gertrude","Hamlet",4,7,"話者として出現"
"5-1::first-clown","5-1","first-clown","Hamlet",5,1,"話者として出現"
"5-1::second-clown","5-1","second-clown","Hamlet",5,1,"話者として出現"
"5-1::hamlet","5-1","hamlet","Hamlet",5,1,"話者として出現"
"5-1::horatio","5-1","horatio","Hamlet",5,1,"話者として出現"
"5-1::laertes","5-1","laertes","Hamlet",5,1,"話者として出現"
"5-1::priest","5-1","priest","Hamlet",5,1,"話者として出現"
"5-1::gertrude","5-1","gertrude","Hamlet",5,1,"話者として出現"
"5-1::claudius","5-1","claudius","Hamlet",5,1,"舞台指示で出現"
"5-2::hamlet","5-2","hamlet","Hamlet",5,2,"話者として出現"
"5-2::horatio","5-2","horatio","Hamlet",5,2,"話者として出現"
"5-2::osric","5-2","osric","Hamlet",5,2,"話者として出現"
"5-2::lord","5-2","lord","Hamlet",5,2,"話者として出現"
"5-2::claudius","5-2","claudius","Hamlet",5,2,"話者として出現"
"5-2::gertrude","5-2","gertrude","Hamlet",5,2,"話者として出現"
"5-2::laertes","5-2","laertes","Hamlet",5,2,"話者として出現"
"5-2::fortinbras","5-2","fortinbras","Hamlet",5,2,"話者として出現"
"5-2::first-ambassador","5-2","first-ambassador","Hamlet",5,2,"話者として出現"

まあ雰囲気よさそうですね。
次は……というところでGeminiの出力量の限界を迎えてしまったのでプロンプトの修正が求められました。

 修正箇所は最後に掲載するとして、とりあえず今日はここまでとします。


分析テキストについて
 この記事で公開しているデータの作成元になっているテキストは、プロジェクト・グーテンベルクにおいて米国著作権法においてパブリックドメインとなって公開されています。

著者 (Author): William Shakespeare
原題 (Title): THE TRAGEDY OF HAMLET, PRINCE OF DENMARK
提供元 (Provider): Project Gutenberg
URL: https://www.gutenberg.org/files/1524/1524-h/1524-h.htm


プロンプト修正箇所

 以下のように差し替えました。これで次回再チャレンジです。

ここから先は

430字

メンバーシップ ¥ 500 /月

物語作者の頭の中を覗こう!  noteで連載中の群像劇『新月の音』の創作メモを赤裸々に公開していきま…

創作メモ覗き見プラン♪

¥500 / 月

応援お願いいたします! あなたの気持ちは私の執筆のエネルギーです。