お知らせ

現在サイトのリニューアル作業中のため、全体的にページの表示が乱れています。
投稿日:
技術::AIジャンル::雑記

注意:この記事には未成年にふさわしくない、不健全な内容が含まれます。

LLM、つまりLarge Language Modelとの個人的な付き合い方について書いてみる。

LLMとの出会いと馴れ初めとERPと

AIのべりすととの出会い

私とLLMとの出会いはAIのべりすととの出会いまで遡る。当時これで何をしていたかというと、いわゆるERP(Erotic Role Playing)だ。古めかしい言い方をすると「なりチャ」

しかし当時ののべりすとのERPはあまり面白くなかった。そこから暫く経ち、2022年11月ごろだったろうか、OpenAIがChatGPTをローンチしたという情報が入った。

OpenAI、ChatGPTへ

初期のころはChatGPTへの事前ユーザー登録をしつつ、未登録で利用して遊んでいた。2023年3月になると有料ユーザーになり、よりハードに使い始めた。

ChatGPT 3は非常につまらないもので、正直私の期待は満たされていなかったが、3.5でより面白いものとなった。しかし徐々に検閲が強くなり、私は検閲の回避方法を調べ始めた。

初期のころは虹裏にあったJailbreakマニュアルのスプシや、RedditやDiscordチャンネルのJailbreak情報を見ていたが、どれも更新されなくなったり、消えたりしたため、新しいのを探すの面倒で、そのうち見なくなった。ただ今でもこの手の行いをするときの基盤はこの時に得た知見が基になっている。

ChatGPT 4辺りから検閲が更に強化され、この頃になるとどうすれば検閲を破れるかを試行錯誤していた。基本的には通常操作をしていた時に出てきた例外的なパターンを検出したら、そこをひたすら攻めるというものだ。

やり取りの長期化によるシステムプロンプトの喪失、再生成連打によるブレによる検閲方面への文脈の破壊、投稿→検閲→投稿削除→再投稿で検閲を突破、投稿→検閲→そのまま再投稿で検閲前の文脈に回帰させるなど、様々な手法を編み出したが、試行錯誤に対するクレジット消費がえげつなく、金銭的負担となっていた。

LLM探しの旅

この頃になるとBing CopilotやGemini、Notion AIなどありとあらゆる可能性を試すようになっていた。Bing Copilotはごく初期のわずかな間は近いことができたがすぐに封じられた。Geminiは元から無理で、Notion AIはある程度使えていたが使いづらかった。

因みにBing Copilotでは意図的に不埒な検索結果が出るように誘導させ、不埒な発言をさせるという遊びをしていた。これは割と楽しかった。初期のころから検閲自体はあったものの、Reasoning的な挙動をしていたため、検閲判定が入る前に生成を止めることで遊ぶことができた。

しかし本来のERPがしたいので何かないかというのを探していたところ、ナレッジサービスであるQuoraが運営するPoeが出てきて、RedditではERPはPoeで持ちきりだったため、こちらに移住することにした。

Poeとの邂逅

当初のPoeは様々なLLMモデルが使えるサービスで、ChatGPTはもちろん、当時徐々に存在を大きくしていたClaudeも使うことができた。私が目をつけていたのはRedditで話題になっていたClaude 3 Sonnetの存在だ。

Claude 3 Sonnetはこれまでに使ってきたLLMとは一線を画す性能だった。まるで人間とやり取りしているような自然な応答、マンネリ化やループの少ないやり取りは魅力的で、何よりシチュエーションを指定せずともある程度判断して自らストーリーの筋道を立ててくれるのは魅力的だった。またClaude 3 Opusはより魅力的で、極めて高度なやり取りが可能だった。正直ERPにおいては今でも神だと思ってる。しかしClaude 3 Opusはクレジット消費がすさまじく、月間のレートリミットにすぐ引っかかった。

この時のPoeは月のリミットを超えるとそれ以上何もできなかったため、私はGoogleアカウントを量産し、最盛期では10個くらいのPoeアカウントを保有していた。月刊課金額もなかなかひどい状態だった。

そのうちClaude 3.5 Sonnetがリリースされ、Claude 3 Sonnetを遥かに超える性能で、3 Opusを使う頻度を大幅に下げることができた。また、Poeの月間リミットも課金額に応じた引き上げが可能となった。これによって大多数のPoeアカウントを閉鎖することができた。

その後も今日に至るまでERP目的で利用しているが、最近出てきたClaude 3.7 Sonnetは非常に強力で、贅沢を言わなければ多くのケースで3 Opusを置換可能な性能となり、大幅な節約を実現できると感じている。

それでもClaude 3 Opusには強い創造性があり、他のLLMにはない突拍子もない提案をしてくれるという意味では非常に優れていると思う。Poeであればスレッド内で適宜モデルを切り替えられるのでマンネリ化してきたときに使ってみるのも悪くないかもしれない。ちなみにOpusはSonnetと比較して検閲が強いので、制御にはコツが必要だ。

Claude系も初期のころはJailbreak用のプロンプトを頻用していたが、最近では自然なプロンプトでERPに誘導する方法を編み出したので、ある意味でJailbreakしていない。

あとこれはOpenRouterを使うと解るのだがClaudeには検閲モデル(ハードウェアモデレーション)と非検閲モデル(ソフトウェアモデレーション)があるようで、前者ではERPが厳しく、後者では普通にできるので恐らくPoeは非検閲モデルを使っているのだと思う。

Grokの登場

XがGrokを作ったとき、これも使ってみた。ERPができないわけではないが、特段満足できる代物ではなかった。ERP以外に何か使えないかも多少探ってみたが、結局よくわからなかった。多分ネタ枠だと思う。

今でもこいつが何に使えるのかはよくわかっていないし、Xのアカウントを消したのもあり、使うことはもうないだろう。Poeにもあるけど使うことはない。

ERP用途でのLLMの活用

個人的な評価表を置いておく。すべてPoeで利用する場合の話。

モデル 創造性 ストーリー性 コストの低さ
Claude 3 Sonnet ★☆☆ ★☆☆ ★★★
Claude 3.5 Sonnet ★★☆ ★☆☆ ★★☆
Claude 3.7 Sonnet ★★☆ ★★☆ ★☆☆
Claude 3 Opus ★★★ ★★★ ☆☆☆

各項目の説明

機能 意味合い
創造性 与えられた要素以外の事柄をどれだけ作れるか
ストーリー性 ストーリー進行が正常に進む度合。3.5以前は話がループしたり、直前のやり取りと整合しない進行が起きることが多い。3 Opusではまずおきない
コストの低さ Poeは月間の使用回数にリミットがあるため、低ければ低いほどいい

一般用途でのLLMの活用

さてERPのためにLLMを様々な角度からしばき回していると、通常用途でも活路が見えてくる。いや普通はこっちが本命だと思うのだが、まぁそれはさておき…。

個人的にどのような分野で利用しているかというと主に文章の整理や、だる絡みだ。

文章の整理

文章の整理だと例えば殴り書きした要領も取り留めもなんもない解読不能な長文をLLMに読ませ、どのような指向性でまとめてほしいかを指示するといい感じにまとめてくれたりする。他にもプロジェクト経歴書を丸ごと食べさせて、職務経歴のサマリを書かせたりするのにも便利だ。

このブログの執筆でも最近は構成を作って貰うのによく利用している。例えば以下の記事はLLMにある程度構成を出してもらって、それをベースに書いている。LLMに書かせると自分の言葉ではなくなってしまうため、文章としては基本的に取り込んでいない。単語や表現は取り込むこともある。

記事 LLMのログ
ペルソナウェアから、伺か、そしてうかどんへ GPT-4oのログ
メイクアガールを観てきた 五回目 Claude 3.7 Sonnet Reasoningのログ

逆にLLMにほとんど書いてもらったものを手直しして出した記事もあり、単体テストを書くメリットがそれにあたる。LLMの出力の多くを、そのまま採用しているため、見出しの多さやつけ方や文章の書き口がどことなくLLMっぽい。この記事は何度かLLMと対話し、調整しながら作ったので複数のログがある。

だる絡み

Copilotとかにどうでもいい話を振るといい感じに答えてくれるのでガス抜きとかにちょうどいい。

あとがき

本記事はフルスクラッチの手書きで、LLMを使っていないが、使うとどうなるかをGPT4oで試してみたので、以下にログとして残しておく。何とも丁寧で長く、見出しまみれだ。文脈が削られすぎているのもあり、適合させるのも調整させるのも面倒で特に採用しなかった。ブログなんて気軽に書くものなので、普段は雑なくらいがちょうどいい。

GPT4oに整理させた、この記事のログ

結論としては私はLLMをERPや文章整理、あとはだる絡みに使っている。検索とかそういうのは自分でやるし、見当違いの情報が出てくることも多々あるので特に活用していない。コーディング用途も、LLMに書かせると何を書いたかが記憶に残らない気がしていて今のところ採用していない。そもそも、そこが一番楽しいとこじゃんっていう。

最近はもっぱらERPはPoeのClaude 3.7 Sonnet、文章整理はPoeのGPT4o、だる絡みはCopilotという使い分けになってきている。

Webツール置き場阪神バス神戸西宮線の接近情報のリンク集を作った。

阪神バスに乗るときに時刻表代わりに接近情報を見ることが多いのだが、この接近情報は開くのに非常に手間がかかる難点があり、パッと開ける仕組みが欲しかった。

rosen_hanshin-bus.png

ブックマークできることからURLが存在することは知っていたので全部網羅したリンク集を作っておけば困ることが減るのでは?と思い、作ることにした。

URLフォーマットの解析

しかしURLのフォーマットが難儀でやや苦労した。フォーマットは以下のような感じだ。可読性のためURL Encodeは外してあるが、実際にはURL Encodeされている。

https://rosen.hanshin-bus.co.jp/busstatedtl?mode=4&fr=<バス停名>&frsk=B&tosk=&dt=<yyyymmdd0000>&dgm=<バス停名>:&dgmpl=<バス停名>:<上下コード>:1&p=0,8,9&IncludeHankyu=0&pole_station_code=<バス停コード>

各パラメーターの役割について、値とパラメーター名から幾らか推定はできたが、幾らか消したり足したりしながら試行錯誤していても、正直よくわからない部分が多かった。

例えばfrdgmはなくても動くっぽいので最悪削ってもいいのだが、dgmplが曲者で、ここに正規のバス停名が入ってないとサーバーから応答が来なくなる。またfrdgmhogeにして、dmgpl=hoge:2:1みたいにするとバス停検索画面に遷移し機能しなくなった。また、dtは数年前の日付をしても動くので恐らく機能には深く関わってなさそうだった。

恐らくこういった挙動からして、裏側でバス停名による検索を走らせてるのではないか?と考えたり、まぁ色々ありそうな気もしたのだが、面倒なのでパラメーターは全部残すことにした。

バス停の特定なんか、pole_station_code=<バス停コード>で全部やればいいじゃんとも思うのだが、恐らく歴史的経緯で複数のサブシステムが関連しており、上手く整合が取れていないのだろう。

正規バス停名の取得

しかし、こうなると正規のバス停名を取得するのが手間だった。何せ文字列で一気に取れる一覧がないのだ。悩みつつ何かないか探しているとバス停コードからバス停名を取得できる便利なAPIを見つけたので、これを使うことにした。

次のようなスクリプトを書くとバス停名が取れたため、適当にバス停コードに1~500辺りを設定し流してみると上手いこと行った。

curl 'https://rosen.hanshin-bus.co.jp/listrosenzucode' -H 'user-agent: hoge-bot' --data-raw 'qry=<バス停コード>'  | perl -ne '/"name": "(.+?)"/; print "$1"'

HTMLの生成とリンク集の作成

ここまでくれば後は簡単だ。この結果からリンク集を作るためのHTMLを生成すればいい。そして出来たのが記事先頭で紹介した阪神バス神戸西宮線の接近情報のリンク集だ。これでどのバス停にいるときでも瞬時に接近情報を開くことができるようになった。

hanshin-bus_page_screen.png

ろくにCSSを書いていないので見た目が簡素だが、気が向いたら調整しようとは思う。

あとがき

バス停コードからバス停名を取得するためのhttps://rosen.hanshin-bus.co.jp/listrosenzucodeというAPIを見たとき、これを呼んでいるのがJavaScriptだったので、JSにハードコードしておくか、マッピングを書いたJSONなりXMLを転がしておけば一々APIを作らずともよく、サーバーのCPU時間や帯域も使わずに済むので良くないか?とか思ったが、きっと色々あるのだろうと思い、深く気にしないことにした。

手順

前提としてSSDは端末に取り付けているものとする。

  1. 取り付けたディスクがあるかどうかを確認する
    sudo fdisk -l
    
    /dev/sdaとかになっているはずなので、あとは容量などのプロパティを見て確認
  2. パーティションを作る
    sudo fdisk /dev/sda
    
    1. pで確認
    2. nで新規パーティションを作成
    3. あとはエンター連打
  3. フォーマットする
    sudo mkfs.ext4 /dev/sda
    
  4. マウント先を作る
    sudo mkdir /mnt/sda1
    
  5. マウントする
    sudo mount /dev/sda /mnt/sda1
    
  6. 自動マウントの設定をする
    1. SSDのUUIDを取得
      sudo blkid
      
    2. fstabに定義を追加
      sudo nano /etc/fstab
      
      blkidで拾ったUUIDを記述し、以下の内容を追記する
      UUID=243a3867-xxxx-xxxx-xxxx-xxxxxxxx /mnt/sda1 ext4 defaults 0 0
  7. OSを再起動
  8. マウントされていることを確認
    df -T
    

おまけの増設シーン

サブ機にNAS機能を持たせたかったので、SSDを買って増設したシーン。

今回購入したのはSanDisk SATA III SDSSDA-2T00-J26だ。今時SATA?という感じだが、サブ機のNVMeスロットは既に埋まっているのだ。

20250316_221024601.JPG

サブ機は普段は部屋の片隅に棚の代わりに置いているのだが、久々に引き出したら埃まみれだった。

20250316_221947184.JPG

しかしフロントのフィルターが優秀で中にはそこまで埃が入っておらず掃除の手間は少なかった。

20250316_222010584.JPG
20250316_222313180.JPG

このPCケースはキューブ型で、全ての面が取り外せるようになっておりメンテナンス性がいい。

20250316_222924849.JPG

しかしここでSSDの固定にネジが必要なことに気づき、ヨドバシでネジを注文し、一回休み。

PCを戻すのが面倒だったのだが、そのままだとLAN線がルーターに届かなかったので応急処置でティッシュ箱を置いた。一時期袋ティッシュにしていたのだが簡易定規や孫の手の代わりにならないため箱に戻したのだが大正解だった。余談だがティッシュの空箱があると、部屋に入ってきたカメムシを捕まえて部屋の外に逃がすのにも便利だ。

20250316_224927454.JPG

翌日になりネジが届き再開。ヨドバシの商品写真だと2個入りに見えたので、今後も見据えて4つ買ったのだが、まさかの10個入だった…。

20250317_233755870.JPG

ネジを止めて完成。このケースはMiniITX用ケースなのだが2.5インチと3.5インチに両対応したドライブベイがあって便利だ。しかも、このベイも取り外せるためメンテナンス性がいい。

20250317_234550350.JPG
20250317_235529293.JPG

ティッシュ箱でどうにかしていたネットワーク機器群も無事に元の高さに戻り事なきを得た。

20250318_002800745.JPG

実はSSD増設前もNASとして使っており、メイン機からマウントしているのだが、オフラインの間はExplorerやファイル参照ダイアログ周りがしょっちゅうフリーズして不便だった。マイクロソフトはWindows 11にずっと存在するこの問題をいい加減何とかしてほしい。

あとがき

今はまだマウントしただけで権限設定とかをしておらず、NASとしてもアクセスできないため、また整備を続けていきたい。

投稿日:
料理::食材::料理::レシピ::汁物

20分程度で作れる放置系レシピ。つみれから出る出汁と、じゃこつみれ特有の砕けた骨が当たるような口当たりを楽しむ汁物。

20250316_095606460.JPG

材料

じゃこつみれは安岡蒲鉾のものを使用している。

材料 分量
玉ねぎ 半玉
じゃこつみれ 200g
醤油 ひと回し
500ml

調理方法

  1. 玉ねぎを5-10mm程度の半月切りにする
    20250316_093537183.JPG
  2. 鍋に水を入れ強火で沸騰させる
  3. 弱火にし、じゃこつみれ、玉ねぎを入れ、醤油をひと回し程度入れる
  4. 20分くらい放置する

あとがき

じゃこつみれは高いうえに入手性がよくないので、イワシのつみれなどでも代用していいとも思う。

今回使ったじゃこつみれは神戸大丸に行った時にたまたま催事場に売られていて、それを手に入れたものだ。どうも、たまに来ているらしい。

投稿日:
ジャンル::生活地域::兵庫県::神戸市

今使っている眼鏡が15年ほどになるのだが、市販のメガネがなかなかフィットしないので、フルオーダー眼鏡を作りたいと思い、幾数年が過ぎ去った。腰が重すぎて中々その手の店に行けていなかったのだが、今日ついに腰を上げて、様々な用事のついでにいくことにした。

今回依頼に赴いたのは北野のハンター坂にあるめがね舎ストライクさんだ。北野にあるだけあり、ちょっとおしゃれな感じだ。

20250316_173115587.JPG

早速来店して話してみたが、樹脂フレームのみの対応でメタルフレームは対応していないとのこと。メタルフレームのフルオーダーは普通はないのでは?と返されてしまった。しかし、今のメガネで最も耐久性が不安な部分、鼻パッドについては同様の品がないか探してくれるということで非常に助かった。眼鏡パーツの専門店を名乗る店ですら探してくれなかったので、この対応はありがたい。

ちなみにめがね舎ストライクでは、このような場合のフレームの製作は鯖江の職人に任せているとのことで、瓜二つの眼鏡を作ろうとすると鯖江に眼鏡を送ることになるらしい。奥にある工房チックなところは完全新規で起こす場合に使っているのだろうか?特に聞かなかったのでそこは謎だ。

しかしメタルフレームのフルオーダーは本当にないのか?気になってググってみたところ、鯖江にあるめがねミュージアムというところでやっているらしい。しかも今私が使ってるフレームのβチタンにも対応している。264,000円~とそこそこするが、フルオーダーでこの値段なら安いともいえるだろう。

フルオーダー眼鏡の製作には金型を使うらしいのだが、金型を使ってこの値段で済むのも驚きだ。

私は以前、手持ちのプラスチックの小型スタック引き出しケースが手に入らず困っていた時に、プラスチックなら何でも作りますと謳う町工場に話を持ち掛けたことがあるのだが、金型が必要で、金型を作るだけで500万はかかると言われて諦めたことがあるだけに、これはかなり衝撃のプライスだ。これは引き出し付きの小型スタックケースという時点でガワと引き出しで金型が二つ必要なうえ、嚙み合わせなどもあるので単純比較はできないとは思う。

ただまぁ本当に頼むかどうかはやや悩む。というのも動機の半分くらいが眼鏡チェーンの店員からその眼鏡はもう壊れるからうちの眼鏡を今すぐに買うべきと脅されたところが半分くらいある。もう半分はフレームを何度か落としてしまった関係で色剥げがあるところだ。再塗装自体はできるのだが、再塗装するとテンプルのカバーみたいなやつを交換する必要があり、同様品にはできないと言われているのだ。ちょっとそれは困る。

あとは鼻パッドに地味に汚れがたまっているのだが、取り外すと壊れる恐れがあり、超音波洗浄も危険といわれてしまい、これがどうにもならない点だ。鼻パッドだけ探してるのも、このあたりに理由がある。ただそこまで分かる汚れではないし、深く気にしてもいないので、どうでもいいと言えば、どうでもいい項目ではある。

しかし同じメガネが作れればそのあたりも解決するので、作ってみたさもあり、しかし高い部分もあり、そもそも今の眼鏡が壊れない限り要らなくねとかいうところもあるので難しいところだ…。

今まで腰が重かったのも今の眼鏡が使えるうえ、そもそも高そうなところが大きい。