[短歌マガジン編集部より:この記事は短歌空間の短歌技研に参加している efさん に執筆していただきました]
ごあいさつ
こんにちは、efといいます。主にTwitter(X)やUtakataという短歌投稿サービスで活動しています。短歌活動自体は2018年からほそぼそとやっていたのですが、病気をして入院したのをきっかけに本格的によむようになり、文学フリマへの出店やネプリの発行などをしています。最近、深水英一郎氏が主宰されているA短歌会の短歌技術研究空間というところに参加しており、そこで始めたことをこの記事にまとめさせていただきました。
とりあえず、この記事に書いてあることを端的にまとめると以下のようになります。ここからしばらくは前書きなので、技術面のみを読みたい方はつぎの章は読み飛ばしていただいて構いません。
llama.cppを用いて、ローカルLLMが動くようにした
複数のローカルLLMに対して短歌に関する質問をし、その結果を比較した
上記の手順をGoogle colaboratoryを用いて誰でも試せる形で共有した
短歌における生成AIの活用について
近年、生成AIが世間のさまざまなところで取りあげられるようになりました。画像や動画を加工したり生成したりするツールがたくさん登場していますが、ことばの世界においても、今までにはなかった形で機械による理解が進んでいます。Google翻訳やDeepL翻訳をはじめとする翻訳ツールの高精度化は近年のひとつの成果ですが、短歌をはじめとする短詩の世界においてもその影響力は確実に及んでいます。
例えば、朝日新聞と東北大が共同で開発した「万智さんAI」は、歌人の俵万智氏がよまれたうたを学習し、彼女の作風を反映した歌を生成することができます。著名な歌人の永田和宏氏も生成AIを用いた短歌生成に触れて、実作をする歌人の立場からコメントされています。このような状況下で、わたしたちが短歌をつくることにについての意義についての論考もさまざまに登場しています。
「短歌研究」誌では、中島裕介氏が書かれた「《前衛》と実作——生成AI時代に、人が短歌をつくること」が第41回現代短歌評論賞を受賞され、2023年10月号に掲載されています。この号にはほかにも生成AIと短歌の関係について論じた著述がいくつかありますが、中島氏の論考はとくに興味深く読みました。短歌実作と生成AIの関係の現状と、そこに携わるひとたちがAIに抱く可能性と懸念、そしてこの状況下においてわたしたち人間が短歌実作をすることの意義について緻密に論じられています。「AIとの共創」についても提言されており、わたしはその主張にとても共感しました。
わたし個人の意見をここで細かく書くことはしませんが、端的に言うと、「これから創作をしていこうという人がAIを活用しない手はない」という考え方を持っています。まだ勃興したばかりの技術ですが、その活用の対象がとても幅広いことはあきらかです。もちろん、生成AIを活用した創作においても、いや活用するからこそ、これまでのすべての創作と創作者に敬意を払うことは必要です。
ただ、それは今までの創作活動においても同じことではないでしょうか。その技術をわざわざ禁止するのは、例えば劇場に響く生の声の良さを伝えるためにマイクを使わないとか、アナログの絵の色合いの良さや物理性を表現するためにデジタルのツールを一切使わないとか、表現手段に一種の「縛り」を設けることでより表現を尖らせるための工夫のようなものではないかと思います。
だからといって、そうした縛りからうまれた表現が「古い」とか「劣っている」とかいうことは一切ありません。ただ、それなりに実作に熟練した表現者ならともかく、これから何かを作っていこう、というひとが積極的にその縛りを負う必要はなく、AIを通じてそこに蓄積されている過去の創作に学ぶ、ということは可能なはずです。そうした実例もここでやっていく試みのなかで示せたらいいな、と思っています。
思ったより長々書いてしまいました。少なくとも、ここではそういうスタンスでやっていきます。
もうひとつ、わたしがこの分野の技術に特に関心をもっている理由のひとつとして、多くの技術が「手を伸ばせばだれでも触れることができる」かたちでの公開の仕方をされていることがあります。こうした技術は、特許などのライセンスで保護し、利用者から許諾料を取るかたちで提供することも可能ですが、それではこの技術の良さを世界にひろく知らせるすべが限られてしまいます。そこで、技術がもたらすプロダクトそのものについては無料、あるいはサブスクリプションの形で公開することで、それを幅広く使って活用してもらうことで、そこからさらに新しい活用方法をひとびとが生み出していく、という好循環を狙うことができます。生成AIの短歌における活用法をわたしたちが考えることも、この好循環の流れの中のひとつと言えるかもしれません。
さて、機械によって人間のあやつる言語を理解したり生成したりする試みをおこなうこの分野は「自然言語処理」と呼ばれるそうです。わたしは自然言語処理や生成AIについてなにか専門的な仕事をしているわけではなく、ただ少しプログラム等の使い方を覚えている一般人にすぎませんが、そうしたプログラムに関する基礎的な知識をある程度把握していれば、最先端のAIについてもそれらを公開した人や実際に使ってみた人たちのドキュメントを参考にしながら、自分の手で触ってみることができます。
わたしは最近A短歌会の「短歌技術研究空間」において短歌における生成AIの活用についていろいろと試みている途上です。なにぶん途上ですので、まだなにか明確な成果があるわけではなく、まずは自分で生成AIを触ってみるための環境づくりをやってみた、という程度のものです。もし生成AIと短歌のかかわりに興味がある方がいらっしゃいましたら、参考にしていただければと思います。
生成AIにはいろいろなものがありますが、わたしが注目しているのはソースコードが公開されていて、自分のパソコンの中にその全体をダウンロードして、そのパソコンだけで動かすことのできる「ローカルLLM」と呼ばれる種類の生成AIです。生成AIに触るだけなら現在有料・無料のサービスが様々にあり、OpenAI社が開発しているChatGPTなどはその代表格です。現時点で最も高性能と言われる生成AIに簡単に触れることができます。
そうしたものの解説はネット上に様々な記事があふれているのでそちらに譲ることとして、ここでは、この「ローカルLLM」を自分のパソコン上で展開するための手段と、短歌に関するタスクをいくつかさせてみたときの結果と、それをこの記事を読んでいる皆さんがそれを再現したりあるいは改造したりするにはどうすればいいかなどについて説明したいと思います。
ローカルLLMの環境構築
では、ローカルLLMを私たちの手で動かせるようになるまでの手順について説明していきたいと思います。ここでは、Ubuntuを搭載したPCでの操作について説明していきます。この記事の最後で皆さんのPCでも共通で操作が可能な方法について説明しますが、まずは手持ちのPCでやったときの例について述べていきます。PCにあまり触らない方向けに、用語の説明を交えながら進めていきますので、そういうのはいいからとにかく早く触ってみたい!という人は最後の章から読んだほうがいいかもしれません。
PCになじみのない人は、WindowsとMacだけがPCと思っている人も多いかもしれませんが、あれはPCに搭載するOS(Operation System)の違いと説明できます。OSとは、そのPCを動作させるための基本となるソフトウェアで、そのPCに搭載されている装置(一般にハードウェアと呼ばれます)を動かすために必要なシステムです。OSの種類によって動かすことのできるハードウェアが違ったりするので、Windowsで動くソフトがMacで動かないとか、その逆ということがよくあります(最近は共通のものも増えてきましたが)。
OSにもローカルLLMのように無料で公開・配布されているものがあり、Ubuntuはその一つです。最近はWSL(Windows Subsystem for Linux)というWindowsの内部でUbuntuなどのOSを動かす手段もあり、それを用いてローカルLLMを動かす方法もあるのですが、今回はわたしの自宅にあるUbuntuのみが入ったPCで動かしたときの例で示していきます。
このように、どんなハードウェア(CPU, GPU, メモリ等)で、どんなOSで動かしているかなどの構成情報をしばしば「環境」と表現し、あるプログラムを動作させたときに、どのような環境で動かしているかというのはその動作の再現性を担保するうえで非常に重要です。そして、動作する環境をどのように構築したかということがその情報の価値を担保することになります。再現性の高い環境であればその情報の価値は高まります。
私がローカルLLMを試したハードウェアの環境をざっくりと述べると以下の通りです。このあたりは読み飛ばしても構いません。
Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz
DRAM 32GB
NVIDIA RTX A4000 VRAM16GB
Ubuntu 22.04.3 LTS
具体的には最後の章で述べますが、Google Colaboratoryというサービスを使うと、こうしたハードウェアを無料で使用することができ、自分で好きなソフトウェア環境をスクラップ&ビルドすることが自由にできるようになります。多少お金を払えば、個人ではとても買えないような高価なハードウェアも簡単に使用できるようになります。とても便利な時代になったものだと思います。
前の章でも少し述べましたが、ローカルLLMもさまざまなものが公開されています。Meta(旧Facebook)が公開したLlama、Stability AIが公開したStableLM、Microsoftが公開したphi-2など、枚挙にいとまはありません。また、これらのLLMの多くは日本語に対応していませんが、日本語のデータセットを追加学習させることで、日本語が扱えるようにチューニングすることができます。そうしたLLMも多く登場していて、東大発のベンチャー企業であるELYZAはLlamaをベースにElyza-japanese-llama-2というLLMを公開しましたし、東工大のグループは同じくLlamaからSwallowというLLMを開発しました。また株式会社Lightblueからは、Karasu, Qarasuという2種類のLLMが登場しています。これらのLLMを用いると、日本語の文章でLLMとやり取りすることが可能です。
これらのLLMはすべてローカルLLMとして単独のPCの中で動作させることができます。また専門知識があれば、任意のデータセットを学習させて、自分の好みの結果を出力させることも可能です。ただ、どのLLMもそれなりに巨大なデータサイズを有していて、私たちが買える市販のPCでそのまま動かせるものは限られています。たとえば、東工大が公開しているSwallowのモデルにはモデルの大きさの指標となるパラメータ数が7B(7 billion=70億)、13B(130億)、70B(700億)のものがありますが、13B, 70Bのモデルは市販の数万円のPCでは大きすぎてまず動きません。
こうしたモデルは多くの場合GPU(Graphics Processing Unit)というハードウェアで動くのですが、GPUに搭載されているメモリ(VRAM)が小さいと、ここにモデルを載せきることができません。ちなみにChatGPTのパラメータ数は、前バージョンの3.5は175B、最新版の4のものは公開されていませんが500B~10T(100兆)と言われています。この規模のモデルに一般人が簡単に触れるということがなかなかとんでもないことであるように思います。
わたしの環境では、7Bのモデルはストレスなく動かすことができ、その時のVRAM消費は9GB程度でした。となると、13BのモデルはわたしのVRAM16GBの環境なら動くんじゃないか?と思ったのですが、なんと応答には30分ほどかかりました。どうもパラメータ数とVRAMの消費量は単純に線形比例しているわけではなさそうです。しかし、応答の精度は明らかにパラメータ数が大きいモデルの方が優秀でした。あとで比較できる結果を示します。
じゃあ、ローカルでのLLMの動作はもう諦めて、ChatGPTやBardなどの「クローズドな」LLMを使えばいいじゃないかと思いかけたのですが、そこでモデルの「量子化」という概念を知りました。わたしは数学には全く疎いので詳しいことはよくわからないのですが、モデルを構成する要素のそれぞれで行われている数値計算を、より負荷の低い計算単位で実行できるように変換することで、モデル全体がハードウェアに及ぼす負荷を低減することができる技術のことのようです。ただ、計算方法を微妙に変えるので、モデルの出力結果に影響が及ぶ可能性はあります。
モデルの量子化自体はとても簡単です。Georgi Gerganovという方により開発、公開されているllama.cppという変換ツールがあり、これを使用しました。ひとまずこんな風に環境構築したという記録だけ残しておきます。ただ使いたいというかたはここは読み飛ばしてかまいません。また、主要なモデルをGGUFやGPTQというモデル形式に量子化する試みはいろいろな人がやっているので、すでに量子化されているモデルをダウンロードして実行することが可能です。有名なのはTheBloke氏で、だいたいの著名なモデルはこの人が量子化してくれています。この記事ではGGUFモデルへの量子化をやっていますが、そのうちGPTQモデルで量子化されたものも試してみる予定です。
前提として、pythonとGit、makeが動作する環境であることが必要です。今回は、公開されているSwallowのモデルを量子化して動作させるまでの手順について述べます。以下のブロック内で、#から始まる行はメモのようなもので、入力する必要はありません。$から始まる行はコマンドで、Ubuntuのターミナルに$以外の文字を入力することで、コマンドでで指定されたプログラムが実行されます。このあたりもあくまでどう動かしたかを記録している程度のもので、あまり詳しく見る必要はありません。
# gitでllama.cppのリポジトリをクローン
$ git clone https://github.com/ggerganov/llama.cpp && cd ./llama.cpp
#GPU高速化を有効にしてコンパイル、使わない場合はmakeのみ
$ make clean && LLAMA_CUBLAS=1 make -j
# pythonでllama-cppを動作させるためのツールをインストール
$ pip install -r ./requirements.txt
$ pip install llama-cpp-python
上記の一連のコマンドにより、llama.cppを使用するための準備が整いました。次に、インターネット上に公開されているSwallowのモデル(パラメータ数13B)をダウンロードしてきて量子化までを行う手順について示します。
# モデルをダウンロードするためのツールを導入
$ pip install -U "huggingface_hub[cli]"
# Swallow-13b-instruct-hfをダウンロード(実行後ダウンロードが終わるまでしばらく待つ)
$ huggingface-cli download tokyotech-llm/Swallow-13b-instruct-hf
# ダウンロードしたモデルの保存先を確認(<名前>部分は利用者によって異なる)
$ huggingcafe-cli scan-cache
tokyotech-llm/Swallow-13b-instruct-hf model 26.3G 17 16 hours ago 2 weeks ago main /home/<名前>/.cache/huggingface/hub/models--tokyotech-llm--Swallow-13b-instruct-hf
#表示された文字列の/home/からSwallow-13b-instruct-hfの文字をコピーしてターミナルに貼り付け、末尾に/snapshots/の文字列を付け足して「Tab」キーを押す。以下のように末尾にsnapshotのidが付加される。
$ /home/<名前>/.cache/huggingface/hub/models--tokyotech-llm--Swallow-13b-instruct-hf/snapshots/0e3dac0abde812bbfa1d17cb0fdf15ddf170cd52/
#文字が付け足されたことを確認したら、表示されている文字列全体をコピーする。
# 量子化前のモデルをhuggingfaceでダウンロードした形式からGGUF形式に変換する
# コマンドの最後は先ほどコピーした文字列を張り付ける。
$ python ./convert.py --outfile ./models/swallow13b.gguf --outtype f16 /home/<名前>/.cache/huggingface/hub/models--tokyotech-llm--Swallow-13b-instruct-hf/snapshots/0e3dac0abde812bbfa1d17cb0fdf15ddf170cd52/
#GGUF形式に変換したモデルに対して。q5_k_mという種類の量子化を実行(量子化の種類の違いが意味するところについては勉強中)
$ ./quantize ./models/swallow13b.gguf ./models/swallow13b_q5_k_m.gguf q5_k_m
この処理が終わると、swallow13b_q5_k_m.ggufという量子化されたモデルのファイルが完成します。このモデルと、llama.cpp内のスクリプトを使って次のような形でプロンプトを入力することができます。試しに、枡野浩一氏の歌集のタイトルにもなっている短歌についてLLMに解説してもらいました。
# llama.cppのコマンドを使ってプロンプトを入力、推論を実行
# 赤字部分の数値を大小させることで出力結果の長さを調整可能
# 青字部分のシード値を変化させることで、同じプロンプトでも違う出力を得ることが可能
inst = "### 指示: あなたは文学評論家です。以下の短歌で表現されている内容について詳細に解説した日本語の文章を出力してください。"
tanka = "\n毎日のように手紙は来るけれどあなた以外の人からである### 応答:"
prompt = inst + tanka
!./main -m ./models/swallow-13b-instruct.Q5_K_M.gguf --temp 0.5 -p "${prompt}" -ngl 32 -b 128 -s 32 --log-disable > ./output/SW13Bq5km_masuno1.txt
!./main -m ./models/swallow-7b-instruct.Q5_K_M.gguf --temp 0.5 -p "${prompt}" -ngl 32 -b 128 -s 55 --log-disable > ./output/SW7Bq5km_masuno1.txt
まず、7Bモデルの応答からです。
### 応答:この詩は、好きな人からの返事がないことへの不安と失望を表しています。手紙を送るたびに期待するものの、いつも他の誰かから手紙が届くのです。
この歌は、「あなた」という人物への強い愛着を表現しており、彼らの関係がどのように変化したかを物語っている。最初は、あなたからの手紙を受け取ることで、その人に対する気持ちを確認したり、再燃させたりすることができたのでしょう。しかし、今や自分以外の誰かから手紙が届くことで、彼らの関係が変わってしまったかもしれないという不安が募ります。
この詩は、「あなた」への愛着とその人からの返事を待つ気持ちを表現しています。毎日欠かさず手紙を送るのは、自分以外の誰かから手紙が届くことで、彼らの関係が変わってしまったかもしれないという不安からです。
この歌は、「あなた」への愛着とその人からの返事を待つ気持ちを表現しています。毎日欠かさず手紙を送るのは、自分以外の誰かから手紙が届くことで、彼らの関係が変わってしまったかもしれないという不安からです。
終盤、文章が反復してしまっています。このような出力の傾向は7Bモデルではよく見られます。続いて、13Bモデルの結果を示します。
### 応答: この短歌は、「毎日のように手紙が届く」という状況を表しています。しかし、その手紙は愛する人からではなく、他の人々からのものです。
この歌は、恋人や配偶者など、愛すべき相手からの手紙を待ち望んでいる人物の心情を表現しています。しかし、毎日届く手紙は他の人々からのものであり、主人公の期待に応えられない状況が強調されています。
この短歌は、恋愛や人間関係におけるコミュニケーションの重要性と、相手からの愛情や関心を求める気持ちを表現しています。また、日々の生活の中で感じる孤独感や寂しさも描かれており、主人公の心情が深く反映されています。
この歌は、現代社会においても共通する感情を持ち、多くの人々に共感を呼び起こすことでしょう。
どうでしょうか、この解説はわりと的を射ているような気もします。後半はもうちょっと深読みしてもいい気はしますが、国語の試験問題ならまあ合格点はあげてもいいかな、くらいの内容になっているのではないでしょうか。
同様にして、俵万智氏の有名な「サラダ記念日」の短歌を13Bモデルに入れてみたら、さすがにそれは知っているようでした。ただ終盤の文章は7Bモデルと同様反復してしまうようでした。
## 指示: あなたは理知的な文学評論家です。以下の短歌で表現されている内容について詳細に解説した日本語の文章を出力してください。
「この味がいいね」と君が言ったから7月6日はサラダ記念日
### 応答: 俵万智さんの有名な短歌ですね。この短歌が詠まれた1987年当時、「サラダ記念日」という言葉には特別な意味はなく、単なる語呂合わせでした。しかし、この歌がヒットしたことで、「二人の間で初めて食事を共にし、その中で交わされた何気ない会話の中から生まれた記念日」という新しい解釈が広まりました。
現在でも、7月6日はサラダ記念日として広く知られており、多くのカップルがこの日を特別な日として祝っています。また、この歌は、日常生活の何気ない出来事や会話の中にも、大切な思い出や意味があることを教えてくれます。
この歌は、俵万智さん自身の体験から生まれたもので、彼女が初めて彼氏と食事を共にした際に交わした会話から着想を得ています。サラダ記念日は、二人の間で初めて食事を共にし、その中で交わされた何気ない会話の中から生まれた記念日です。
この歌は、日常生活の何気ない出来事や会話の中にも、大切な思い出や意味があることを教えてくれます。サラダ記念日は、二人の関係性や愛の深さを象徴するものであり、多くのカップルにとって特別な日として親しまれています。
この歌は、俵万智さん自身の体験から生まれたもので、彼女が初めて彼氏と食事を共にした際に交わした会話から着想を得ています。サラダ記念日は、二人の間で初めて食事を共にし、その中で交わされた何気ない会話の中から生まれた記念日です。
この歌は、日常生活の何気ない出来事や会話の中にも、大切な思い出や意味があることを教えてくれます。サラダ記念日は、二人の関係性や愛の深さを象徴するものであり、多くのカップルにとって特別な日として親しまれています。
(以下反復)
一方の7Bモデルはどうもこの短歌の存在を知らないようでしたが、それなりに面白い物語を出力してきました。そもそも解説になってないというところは横に置いておいて。「サラダ記念日」という名のトレンディドラマができたらこういう内容になるかもしれません。
## 指示: あなたは理知的な文学評論家です。以下の短歌で表現されている内容について詳細に解説した日本語の文章を出力してください。
「この味がいいね」と君が言ったから7月6日はサラダ記念日
### 応答:あなたが作ったサラダを食べながら、私が「おいしいよ」といったら、それがきっかけで交際が始まったのです。その後も、私たちは定期的に食事をともにし、互いを思いやる気持ちを深めていきました。
しかし、私たちはいつしかすれ違い、別れを迎えることになります。彼は別の女性と付き合い始め、私は一人きりで過ごすようになってしまいました。
そんな中、彼から届いた一通のメールが私の心を揺さぶります。それは私たちが交際していた頃の思い出を綴ったものでした。彼はそのメールの中で、私と過ごした時間がどれほど素晴らしいものだったかを語り、私への愛を伝えてきました。
私はそのメールに深く感動し、彼ともう一度やり直したいという気持ちが芽生えます。しかし、私たちの関係はすでに修復不可能な状態にありました。
それでも、私はあきらめずに彼に連絡を取り続け、少しずつ距離を縮めていきました。 そしてついに、私たちは再び一緒になることができました。
私たちは互いに愛し合い、これからもずっと共に歩んでいくことを誓います。7月6日のサラダ記念日は、私たちの永遠の愛の始まりとなったのです。
なお、一番大きな70Bモデルも試してみたかったのですが、消費するVRAMのサイズが大きすぎて実行することはできませんでした(もっと性能のいいGPUを買うか、Google Colaboratoryで課金すれば使えるとは思います)。ただ、13Bでも比較的満足のいく結果を返してくれているような気はしています。LLMのベンチマークはいま様々なものが登場しているので、そうしたものも試していきたいと思っています。
ところで、量子化されたモデルはCPUだけで動作させることも可能です。その場合GPUのリソースは消費しません。私は高速化のためにGPUも併用する形で環境構築しましたが、動作時間が体感3割程度早くなるかなという感じで、VRAMへの負荷は7Bで5GB、13Bで7GB程度でした。量子化の種類によって結果がどう変わるか?というところはまだよくわからないことが多く、まだ十分に試せていません。また、他にも日本語対応したモデルはたくさんあるので、それらに対して同じ質問をしたらどうなるか?ということも気になってきます。
このあたりの試行も、以下に公開するGoogle colaboratoryのノートブック上で随時更新していきたいと思っています。また以下のサービスを使えば、同じことを別のモデルで皆さんが試してみることも可能です。生成AIと短歌の可能性について、少しでも多くの人に知ってもらえるきっかけになればいいと思います。
Google colaboratory上でのllama.cppの実行方法
最後に、ここまで説明してきた内容を、この記事を読んでいる皆さんの手元で実行する方法について述べます。Google colaboratory (以下colab)というサービスを使用します。サービスの詳細についてはここのように様々な解説記事が出ていますのでそこに譲るとして、ここまで述べてきたようなさまざまなプログラムの環境構築を、Googleの保有するクラウドサーバー上の機器を借りて実行できるサービスと理解しておけば大丈夫です。ここから先の実行はGoogleのアカウントを持っていることが前提になります。
まず、以下のリンク先にアクセスしてください。
https://colab.research.google.com/drive/1puF_Ofd2cqkeuQqYT59wMpJOaFJ-3J_3?usp=sharing
すると、以下の画面のようにllamacpp_test.ipynbというノートブックがブラウザで開くと思います(画面の色はちょっと違うかもしれません)。
まず、上のタブにある「ランタイム」をクリックし、表示されたメニューから「ランタイムの変更」をクリックしてください。
次に表示された画面の「ハードウェアアクセラレータ」を”CPU”から”T4GPU”に変更し、保存をクリックしてください。
これで、ColabでGPUを使用した計算ができるようになりました。
上画面のように、コードが書かれているセルが並んでいるので、それぞれのセルの左上にある▶マークを上から順番にクリックして実行していきます。一部Colabに合わせて調整や変更はしていますが、やっていることはこの記事で述べている手順と同じです。内容の大まかな説明は各セルの中のコメントに記載しています。
各セルを実行するたびにダウンロードなどで少し時間がかかります。クリックした順に処理が実行されていきます。上から6番目のセルまでが準備で、7番目から先のセルが実際にLLMにプロンプトを入力して実行する処理です。
このセルを実行すると、13Bまたは7Bモデルにプロンプトが入力され、文章の生成が始まります。プロンプトは上から6番目のセルに記載されていますが、ここは自分の好きなようにに編集して変更することが可能です。また、上から5番目のセルに記載のあるリンクを変更することで、ダウンロードするモデルを変更して試すことも可能です。このあたりを変えてどうなるかについては、今後ここで試していきたいと考えています。
おわりに
ひとまず以上になります。長々と失礼しました。もし内容について不明点ありましたらTwitter(X)のアカウントなどに問い合わせいただければと思います。また、ここで共有したColabのノートブックは今後随時更新していく予定です。
こうして記事にする機会をいただいた深水英一郎氏にはたいへん感謝しております。この記事の内容が、皆さんの短歌ライフを少しでも良くするきっかけになれば幸甚です。
著者プロフィール:
ef(エフ) @ef_utakata
2018年より短歌投稿サービスUtakata(https://utakatanka.jp)にて作歌をはじめる。
2022年に文学フリマ大阪11にて歌集「私撰集 ef-001」を出展。
以降、毎月単位でネプリを発行中。
入選歴: AI歌壇第0回(深水英一郎氏)・第1回(斎藤君氏・八幡氷雨氏・からすまぁ氏・ぽっぷこーんじぇる氏)・第2回(西鎮氏、AI選者氏)・第6回毎月歌壇(外村ぽこ氏)