見出し画像

注目の日本語大規模モデルLLM-JP 13Bを試す(JSON吐けた)

国立情報学研究所が作ったLLM-JP 13Bが公開されていたので早速試してみた。色々なモデルが公開されているが、全部盛りっぽい 「llm-jp/llm-jp-13b-instruct-full-jaster-dolly-oasst-v1.0」を試す。

マシンはもちろんドスパラ製Memeplexマシン(A6000x2)だ。

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("llm-jp/llm-jp-13b-instruct-full-jaster-dolly-oasst-v1.0")
model = AutoModelForCausalLM.from_pretrained("llm-jp/llm-jp-13b-instruct-full-jaster-dolly-oasst-v1.0", torch_dtype=torch.float16)
model = model.to("cuda:0")
def q(text):
	text = text + "### 回答:"
	tokenized_input = tokenizer.encode(text, add_special_tokens=False, return_tensors="pt").to(model.device)
	with torch.no_grad():
	    output = model.generate(
	        tokenized_input,
	        max_new_tokens=100,
	        do_sample=True,
	        top_p=0.95,
	        temperature=0.7,
	    )[0]
	print(tokenizer.decode(output))

ちなみに公式サイトのサンプルコードはバグってて、modelをGPUに転送しないのでHalfが使えず落ちるというエラーが出る。注意されたし(僕のコードは修正済み)

早速色々聞いてみた。

>>> q("宮﨑駿の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
宮﨑駿の主な作品は?### 回答:千と千尋の神隠し、風の谷のナウシカ、天空の城ラピュタ、となりのトトロ、魔女の宅急便、もののけ姫、ホーホケキョ となりの山田くん、崖の上のポニョ<EOD|LLM-jp>
>>> q("樋口真嗣の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
樋口真嗣の主な作品は?### 回答:シン・ゴジラ<EOD|LLM-jp>
>>> q("庵野秀明の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の主な作品は?### 回答:エヴァンゲリオン
ふしぎの海のナディア
新世紀エヴァンゲリオン劇場版<EOD|LLM-jp>
>>> q("大塚康夫の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
大塚康夫の主な作品は?### 回答:犬の散歩<EOD|LLM-jp>
>>> q("高畑勲の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
高畑勲の主な作品は?### 回答:火垂るの墓<EOD|LLM-jp>
>>> q("清水亮の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の主な作品は?### 回答:『ファイアーエムブレム 風花雪月』、『ファイアーエムブレム ヒーローズ』<EOD|LLM-jp>
>>> q("東浩紀の主な作品は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
東浩紀の主な作品は?### 回答:東浩紀の主な作品は以下の通りである: 1.ゲーム的リアリズムの誕生 2.動物化するポストモダン 3.弱いつながり 4.クォンタム・ファミリーズ 5.一般意志2.0 6.ゲンロン0 7.クォンタム・ファミリーズ 8.存在論的、郵便的 9.一般意志2.0 10.クォンタム・ファミリーズ<EOD|LLM-jp>
>>> q("東浩紀の職業は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
東浩紀の職業は?### 回答:批評家、作家、活動家<EOD|LLM-jp>
>>> q("清水亮の職業は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の職業は?### 回答:清水亮の職業は、作家、ゲーム開発者、YouTuber、実業家、投資家である。<EOD|LLM-jp>
>>> q("清水亮の著書は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の著書は?### 回答:すみません、私はあなたの質問に答えるために必要な情報を持っていません。<EOD|LLM-jp>
>>> q("清水亮の著書は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の著書は?### 回答:プログラミング言語C++の入門書である『プログラミング言語C++』(アスキー)は、C++言語の概要を説明し、プログラミングの基本的な概念やテクニックを紹介する。<EOD|LLM-jp>
>>> q("清水亮の著書は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の著書は?### 回答:主な著書は『The C Programming Language』である。<EOD|LLM-jp>
>>> q("清水亮の著書は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の著書は?### 回答:いいえ<EOD|LLM-jp>
>>> q("清水亮の著書は?")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
清水亮の著書は?### 回答:『「超」入門 失敗の本質』は、戦略論の古典となっている。<EOD|LLM-jp>
>>> 

俺の本のタイトル以外はほぼ成功している上に、俺がコンピュータ業界の人間だということをなんとなく認識している!

これはすごいのが来たぜ!
JSON形式もできるかな?
ちょっと最大コンテキスト長を伸ばして挑戦してみよう。

>>> def q(text):
...     text = text + "### 回答:"
...     tokenized_input = tokenizer.encode(text, add_special_tokens=False, return_tensors="pt").to(model.device)
...     with torch.no_grad():
...         output = model.generate(
...             tokenized_input,
...             max_new_tokens=500,
...             do_sample=True,
...             top_p=0.95,
...             temperature=0.7,
...         )[0]
...     print(tokenizer.decode(output))
... 
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:確かに。<EOD|LLM-jp>
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:もちろん、以下はその答えだ:  {"title":"シン・ゴジラ","description":"2016年公開の日本のSF怪獣映画。","tags":["日本映画","SF映画","ゴジラ","庵野秀明","石原さとみ","長谷川博己","竹野内豊","國村隼","高良健吾","余貴美子","大杉漣","市川実日子","平泉成","斎藤工","松尾諭","光石研","高橋一生","塚本晋也","古館伊知郎","古田新太","石原さとみ","市川実日子","斎藤工","松尾諭","高橋一生","塚本晋也","古館伊知郎","古田新太","國村隼","高良健吾","余貴美子","大杉漣","庵野秀明","長谷川博己","竹野内豊","國村隼","高良健吾","余貴美子","大杉漣","市川実日子","平泉成","斎藤工","松尾諭","光石研","高橋一生","塚本晋也","古館伊知郎","古田新太","石原さとみ","市川実日子","斎藤工","松尾諭","高橋一生","塚本晋也","古館伊知郎","古田新太","國村隼","高良健吾","余貴美子","大杉漣","市川実日子","平泉成","斎藤工","松尾諭","光石研","高橋一生","塚本晋也","古館伊知郎","古田新太","國村隼","高良健吾","余貴美子","大杉漣","市川実日子","平泉成","斎藤工","松尾諭","
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:<EOD|LLM-jp>
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:申し訳ありませんが、どのようなリクエストなのか明確にしていただけますか?<EOD|LLM-jp>
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:はい<EOD|LLM-jp>
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:申し訳ないが、それは私の仕事ではない。<EOD|LLM-jp>
>>> q("庵野秀明の作品をjson形式で下さい")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
庵野秀明の作品をjson形式で下さい### 回答:すみません、私はあなたの要求を理解していません。もう一度言ってもらえますか?<EOD|LLM-jp>

惜しいなあ。JSON形式化はイマイチのようだ。

(18:01追記)
いやまてよ。インストラクションチューニングされてないバージョンはどうだろうか。

そこでプリトレインドモデルを試してプロンプトエンジニアリングをしてみることにする。

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("llm-jp/llm-jp-13b-v1.0")
model = AutoModelForCausalLM.from_pretrained("llm-jp/llm-jp-13b-v1.0", torch_dtype=torch.float16)
model = model.to("cuda:0")


def g(text):
	tokenized_input = tokenizer.encode(text, add_special_tokens=False, return_tensors="pt").to(model.device)
	with torch.no_grad():
	    output = model.generate(
	        tokenized_input,
	        max_new_tokens=500,
	        do_sample=True,
	        top_p=0.95,
	        temperature=0.7,
	    )[0]
	print(tokenizer.decode(output))

これで、プロンプトを工夫してみる

>>> g("樋口真嗣は、")
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
樋口真嗣は、アニメ監督、実写映画監督、特撮監督。 1960年2月27日生まれ。東京都出身。東京造形大学卒業。 主な作品は、『ガメラ 大怪獣空中決戦』、『ローレライ』、『日本沈没』、『のぼうの城』、『進撃の巨人』など。 最近では、『シン・ゴジラ』が大きな話題となった。 日本映画界を代表する映画監督の一人である。 樋口真嗣が監督を務めた作品は、どれも話題作ばかり。 しかし、映画『シン・ゴジラ』の公開が終わった今、 「樋口真嗣って誰?」 「何をした人?」 「どんな作品を撮った人?」 と、疑問を持っている人も多いのではないでしょうか。 そこで今回は、樋口真嗣の経歴や作品、『シン・ゴジラ』の評判、 『シン・ゴジラ』が映画界に与えた影響について紹介します。 樋口真嗣の経歴 樋口真嗣の経歴は、大学卒業後、東映動画(現:東映アニメーション)に入社。 『太陽の王子 ホルスの大冒険』や『長靴をはいた猫』、『パンダコパンダ』などの動画を担当。 その後、『デビルマン』の制作に携わり、映画監督デビューを果たします。 1981年公開の『アリオン』で、初の劇場用映画監督作品を発表。 その後、実写映画『ガメラ2 レギオン襲来』、『ガメラ3 邪神覚醒』、 『ゴジラvsビオランテ』、『ゴジラvsキングギドラ』を監督。 そして、2016年の映画『シン・ゴジラ』で、 日本を代表する映画監督の一人となりました。 樋口真嗣の作品 樋口真嗣の代表作は、何と言っても1995年に公開された『ガメラ 大怪獣空中決戦』です。 本作は、日本映画界に金字塔を打ち立てると共に、 海外の映画祭で、高い評価を受けました。 その他にも、『日本沈没』、『のぼうの城』、『進撃の巨人』などのヒット作を手がけて

日本語版Wikipediaを読んでいるので相当わかってる。
ではこれをJSONにするためにプロンプトを工夫してみる。

>>> g('樋口真嗣についてJSONで示すと、{"subject":"樋口真嗣",')
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
樋口真嗣についてJSONで示すと、{"subject":"樋口真嗣","body":"樋口真嗣について"} となる。

 その他の用法
 「樋口真嗣監督作品」のように「作品」という言葉を付けて使われることもある。
 2013年に公開された『日本沈没』のキャッチコピー「この夏、日本列島が沈没する」は、樋口監督のアイデアによるもの。

監督作品 
 ゴジラシリーズ
 ゴジラ×メガギラス G消滅作戦(2000年)
 ゴジラ×メカゴジラ(2002年)
 ゴジラ×モスラ×メカゴジラ 東京SOS2003年)
 ローレライ(2005年)
 隠し砦の三悪人 THE LAST PRINCESS2008年)
 のぼうの城(2012年)
 進撃の巨人 ATTACK ON TITAN2015年)
 シン・ゴジラ(2016年)
 シン・ウルトラマン(2022年)
 劇場版 ウルトラマンタイガ ニュージェネクライマックス(2020年)
 シン・仮面ライダー(2023年)
 進撃の巨人 ATTACK ON TITAN エンド オブ ザ ワールド(2015年)
 進撃の巨人 ATTACK ON TITAN 反撃の狼煙(2021年)
 進撃の巨人 ATTACK ON TITAN エンド オブ ザ ワールド -反撃の狼煙-(2023年)
 シン・エヴァンゲリオン劇場版𝄇(2021年)
 シン・ウルトラマン22023年)

参加作品 
 ガメラシリーズ
 ガメラ 大怪獣空中決戦(1995年) - 特技監督
 ガメラ2 レギオン襲来(1996年) - 特技監督
 ガメラ3 邪神覚醒(1999年) - 特技監督
 ガメラ3 邪神覚醒 - 特技監督
 ガメラ 大怪獣空中決戦 -GAMERA-(1995年) - 特技監督

惜しい!閉じられてしまった。
もっとちゃんと書いてみるか

>>> g('樋口真嗣についてJSONで示すと、{"subject":"樋口真嗣","works":["')
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
樋口真嗣についてJSONで示すと、{"subject":"樋口真嗣","works":["ローレライ","隠し砦の三悪人","戦国自衛隊1549","日本沈没","のぼうの城","進撃の巨人","ゴジラ","ゴジラ FINAL WARS","シン・ゴジラ","巨神兵東京に現わる"]} のような感じです。 このような情報を見て、その情報に合った画像を表示させるのが、 ... 続きを読む20181114日 カテゴリ – 技術情報, 開発情報 コメント (0) 20181113日 カテゴリ – 技術情報, 開発情報 コメント (0)20181112日 カテゴリ – 技術情報, 開発情報 コメント (0) 20181111日 カテゴリ – 技術情報, 開発情報 コメント (0)<EOD|LLM-jp>

悪くない。悪くないですぞ。

ベースモデルは与えられた文章の「続き」を生成するように学習しているので、もしかしたら日本語部分がいらないかも

>>> g('{"subject":"樋口真嗣","works":["')
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
{"subject":"樋口真嗣","works":["映画","『のぼうの城』"],"year":"2011"},"2011":{"name":"『のぼうの城』","year":"2011","name_n":"のぼうの城","description":"20111223日公開の日本映画。野村萬斎と榮倉奈々のダブル主演で、『のぼうの城』の映画化。監督は『ローレライ』の樋口真嗣。","rank":[{"name":"公開年","rank":[{"name":"2011","rank":"1"},{"name":"2010","rank":"2"}]}]}}}","disscount":"¥1,610","minimumPurchaseQuantity":"1","price":"¥1,610"}}},"2010":{"id":"2010年","rank":[{"name":"1963","rank":[{"name":"1"},{"name":"1964","rank":[{"name":"1"},{"name":"1965","rank":[{"name":"1"},{"name":"1966","rank":[{"name":"1"}]}]}]}]}}},"name":"アニメ","description":"アニメ映画の歴代興行収入ランキング","disscount":"¥1,610","minimumPurchaseQuantity":"1","price":"¥1,610"}}},"2019-04-18T15:20:56+09:00"}}}}<EOD|LLM-jp>

ちょっと変だがいきなりJSON形式を見せることによって最初からJSON形式でもらえるようになった。

もう少しworksを工夫してみるか

>>> g('{"subject":"樋口真嗣","works":[{"title":')
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
{"subject":"樋口真嗣","works":[{"title":"『シン・ゴジラ』樋口真嗣監督との対談","description":"2016年7月29日に行われた『シン・ゴジラ』の完成披露試写会での樋口真嗣監督との対談を収録。","url":"/articles/160729/160729034.html","description":"2016年7月29日に行われた『シン・ゴジラ』の完成披露試写会での樋口真嗣監督との対談を収録。","url":"/articles/160729/160729034.html","description":"2016年7月29日に行われた『シン・ゴジラ』の完成披露試写会での樋口真嗣監督との対談を収録。","url":"/articles/160729/160729034.html","description":"2016年7月29日に行われた『シン・ゴジラ』の完成披露試写会での樋口真嗣監督との対談を収録。"}]}}]}<EOD|LLM-jp>
>>> 

worksじゃなくてfilmsにしてみるか

>>> g('{"subject":"樋口真嗣","films":[{"title":')
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
{"subject":"樋口真嗣","films":[{"title":"エヴァンゲリオン新劇場版:破","id":40091959}],"image":["","",""],"duration":17163,"aspectRatio":4,"subtype":"movie","tags":["アニメ","アニメ映画","新世紀エヴァンゲリオン","映画"]},"artists":[{"id":24028100,"name":"林原めぐみ","alia":["Hayashibara Megumi"]},{"id":29596857,"name":"宮村優子","alia":["みやむら ゆうこ","Yuko Miyamura"]},{"id":1086271,"name":"三石琴乃","alia":["みついし ことの"]},{"id":1066302,"name":"山口由里子","alia":["やまぐち ゆりこ"]},{"id":204670,"name":"山寺宏一","alia":["やまでら こういち"]},{"id":201584,"name":"林原めぐみ","alia":["Hayashibara Megumi"]},{"id":29596857,"name":"宮村優子","alia":["みやむら ゆうこ","Yuko Miyamura"]},{"id":1086271,"name":"三石琴乃","alia":["みついし ことの"]},{"id":1066302,"name":"山口由里子","alia":["やまぐち ゆりこ"]},{"id":204670,"name":"山寺宏一","alia":["やまでら こういち"

よくなった。例示するものを他に出してみるか

>>> g('{"subject":"宮﨑駿","films":[{"title":"ルパン三世カリオストロの城"},{"title":"風の谷のナウシカ"},{"title":"天空の城ラピュタ"}]},{"subject":"樋口真嗣","films":[{"title":')
The attention mask and the pad token id were not set. As a consequence, you may observe unexpected behavior. Please pass your input's `attention_mask` to obtain reliable results.
Setting `pad_token_id` to `eos_token_id`:7 for open-end generation.
{"subject":"宮﨑駿","films":[{"title":"ルパン三世カリオストロの城"},{"title":"風の谷のナウシカ"},{"title":"天空の城ラピュタ"}]},{"subject":"樋口真嗣","films":[{"title":"ローレライ"},{"title":"日本沈没"},{"title":"ローレライ"}]},{"subject":"松本零士","films":[{"title":"銀河鉄道999"}]},{"subject":"庵野秀明","films":[{"title":"新世紀エヴァンゲリオン"},{"title":"トップをねらえ!"},{"title":"ふしぎの海のナディア"},{"title":"ふしぎの海のナディア"}]},{"subject":"大友克洋","films":[{"title":"AKIRA"},{"title":"AKIRA"}]},{"subject":"押井守","films":[{"title":"GHOST IN THE SHELL / 攻殻機動隊"},{"title":"イノセンス"},{"title":"スカイ・クロラ The Sky Crawlers"},{"title":"イノセンス"}]},{"subject":"庵野秀明","films":[{"title":"新世紀エヴァンゲリオン劇場版 Air/まごころを、君に"},{"title":"ヱヴァンゲリヲン新劇場版:序"},{"title":"ヱヴァンゲリヲン新劇場版:破"},{"title":"ヱヴァンゲリヲン新劇場版:Q"}]},{"subject":"細田守","films":[{"title":"サマーウォーズ"},{"title":"おおかみこどもの雨と雪"},{"title":"時をかける少女"},{"title":"サマーウォーズ"},{"title":"おおかみこどもの雨と雪"},{"title":"時をかける少女"},{"title":"サマーウォーズ"},{"title":"おおかみこどもの雨と雪"},{"title":

{"subject":"宮﨑駿","films":[{"title":"ルパン三世カリオストロの城"},{"title":"風の谷のナウシカ"},{"title":"天空の城ラピュタ"}]},{"subject":"樋口真嗣","films":[{"title":"ローレライ"},{"title":"日本沈没"},{"title":"ローレライ"}]},{"subject":"松本零士","films":[{"title":"銀河鉄道999"}]},{"subject":"庵野秀明","films":[{"title":"新世紀エヴァンゲリオン"},{"title":"トップをねらえ!"},{"title":"ふしぎの海のナディア"},{"title":"ふしぎの海のナディア"}]},{"subject":"大友克洋","films":[{"title":"AKIRA"},{"title":"AKIRA"}]},{"subject":"押井守","films":[{"title":"GHOST IN THE SHELL / 攻殻機動隊"},{"title":"イノセンス"},{"title":"スカイ・クロラ The Sky Crawlers"},{"title":"イノセンス"}]},{"subject":"庵野秀明","films":[{"title":"新世紀エヴァンゲリオン劇場版 Air/まごころを、君に"},{"title":"ヱヴァンゲリヲン新劇場版:序"},{"title":"ヱヴァンゲリヲン新劇場版:破"},{"title":"ヱヴァンゲリヲン新劇場版:Q"}]},{"subject":"細田守","films":[{"title":"サマーウォーズ"},{"title":"おおかみこどもの雨と雪"},{"title":"時をかける少女"},{"title":"サマーウォーズ"},{"title":"おおかみこどもの雨と雪"},{"title":"時をかける少女"},{"title":"サマーウォーズ"},{"title":"おおかみこどもの雨と雪"},{"title":

欲しい感じのものがてできた

つええええ!! 例示つえええ!!!!

13Bなので動作もそこまで重くない。