自分風のAIを作る
こんにちは。これを使い続けている静カニです。 なんJ風は他人に見られると気まずいですし、実際になんJやってる人から再現性について怒られそうです。ですが標準だと味気ない感じがします。 では、味気があって誰にも怒られなさそうな口調とは何でしょうか。 怒られるかに焦点を当てて考えると、限られた人に怒る権利があり、その人が怒らなければ大丈夫そうですね。私のブログなら私にしか怒る権利がなさそうです。 私だけが怒れるのは私の創作物だからであり、私が納得すればそれで成立します。ということで、ブログの口調をプロンプト化することにしました。
…そういえば前にもブログの口調を分析しましたね。まあ今昔差が見えるだろうということで…
対象
口調をAIに分析させてプロンプトにする気でいるので分析させる対象の記事を選定する必要があります。 とりあえず古い記事は現在とはまた違った口調になっていそうなので切り捨てましょう。で最近の記事はAIの推敲を入れているため、純私の記事とはいい難いので納得行きません。 やる気がなくて推敲も入れずに公開したこれの他に今から架空記事を書いて純私の記事(学習データ)を用意していきます。
架空記事
一応感情が出るものの方が口調が出やすいらしいので従っておきます。 あと最近読書感想文以外の記事ネタが枯渇しているので後で推敲を入れて架空記事から本物の記事に昇華させようと企んでいます。
1本目
こんにちは。PCを魔改造している静カニです。PCを魔改造すると他の環境で発狂するんですよね。なので私は私物のノートPCを部活とかにも持ち込んでいます。 ということでこのノートPCについて書いていきます。ちなみに商品名はDELL Inspiron 14だったと記憶しています。CPU
CPUはRyzen7 8840HSです。3.30GHzとか書いてありますが私にはよく分かりません。まあでもCPUに不満はありません。
GPU
内蔵GPUはRadeon 780Mらしいです。よく分かりませんが不満はないのでいいでしょう。
メモリ
メモリは16GBです。一時期ちょっと前のQutebrowserのベースが古いChromiumだったときはメモリ使用率がかなり高止まっていて困ったのですが、 ベースが新しくなって解決…と思いきやドライバかなんかの関係でGPUをdisableしないとカクつくようになったんですよね。 でその結果CPU側のメモリ管理がガバガバなのかGPUのVRAMがそのまま移ってきたのか知りませんが結局メモリ使用率は高止まりがちになっています。 このPCで今から一部品だけアップグレードしていいと言われたら間違いなくメモリ増設したいですね。
ストレージ
あとはストレージが1TBです。1TBなんですけど、トリプルブートしていてNixOSの領域は300GBぐらいですね。 今は100GB使ってないぐらいなんですが不安感があるのでもう一部品アップグレードするならSSDですね。
ディスプレイ
ディスプレイは14インチで解像度は2Kですね。タイル型WMの割にタイル型ではなくtabbedレイアウトを使っているのはディスプレイがデカいわけでもないのが一つあります。 あとは二つの画面を見比べながら作業するケースが少ないのもあります。
まとめ
メモリ以外は不満はないし、もう1年以上使ってるから今更こっ酷く言うことは特にない
2本目
こんにちは。結局自分の得意分野はなんなのかよく分からない静カニです。ということで学校の友達にお前は何が得意なんだと言われたときに答えられるように考えていきます。 私のプログラミング歴から考えてみます。歴史
私が主にプログラミングをやっている(やっていた)環境はプログラミング教室、家、部活です。
プログラミング教室では主にPythonをやるということを知っていたので、そこに在籍する前に一時期家でHTML/JSを触っていました。 ただこの当時はイキって作ろうとして撃沈しただけなので触った判定か怪しいラインですね。
プログラミング教室に入った後は最初の一年はしっかりPythonに漬かっていました。多分私の中で一つの言語にここまでしっかり打ち込めたのはこの時期だけだと思います。
ですが二年目になってRustだのHTMLだの触り始めました。Rustは元々自作言語をしようと思ってCを学ぼうと思ったときに教えて頂いたのですが、結局大して形にはならず終いでしたね。 あとHTMLを触り始めたのでこのプログを始めたのもこの時期ですね。この時期には学校のPCで色々作って色々ボックスの中身もこの時期な気がします。 ちなみにこのときAくんとCくんと私でよく話していたのですが、少し前にCくんが色々ボックスのメモ帳のデータが消えたとか言っていました。 原因は彼がキャッシュをクリアしたことだと思いますがどちらにしろ未だに使い続けてくれているようです。
でプログラミング教室をやめてそこで貸されていたPCを返して今のPCを新しく親が買い与えてくれたのですが、この頃にhelixからNeovimに移行しました。 部活でやっていたことと言うと、Aiderが壊れてPythonでAIエージェントを作ろうとして失敗していたらGemini CLIが出て発狂し、 Neovimを改造し、Neovimプラグインを自作し、Linuxデスクトップ元年を迎え…ぐらいしか思い浮かびませんね。とりあえずこの年の基軸はNeovimぐらいには思っています。
で今年です。大体DotfilesでNixをいじってる記憶が強いです。Neovimもかなりいじってますし、ブログのAstro化とかも今年やったのですがギリギリNixが勝ってると思います。
候補
改めて私が何が得意かの候補を挙げます。
- Python
- Web系
- Neovim
- Nix
それぞれ検討してみます。
Python
有力候補です。昔とはいえ私が最も長い期間使ったものですし、AIが出る以前に習得したため自分で書く力が最もついています。
Web系
こっちも有力候補です。かなり長い期間使い、今も時々ブログのリフォームやWebページからデータを抜き出すときに使っています。あと部活の中でもWeb系の部署にいます。
Neovim/Nix
半分ネタ枠です。というのはこの辺のツールは学生の認知度が低いので話しても伝わらないので意味がないんですよね。 ただ裏を返せばみんな使えないので相手と比較したときの使える度は最強でしょう。あと使った期間は特にNixは短いです。
結論
状況によりPythonかWebが一番。まあ正直世間の人に比べると何も得意と言えなくなるのが厳しいですが。 ちなみに普段の私はハードウェアの仕事から逃げるためにソフトウェア専門という肩書きでいます。
プロンプト作成
材料は錬成できたので、ここからプロンプトを作っていきます。プロンプトを作らせたチャットはこれです。 こっちには思考過程だけ書いておくので詳細はリンク先で見てください。
最初の出力が来ました。飄々としたって読むのに数秒かかりますね。いい感じですね。感想としては、
- ぶっちゃけ挨拶いらない
- 例は正直私が納得行ってないので何通りか様子見たい
- 今回も引き続き信頼度はほしい
といったところでしょうか。
次の出力が返ってきました。とりあえず口調パートはこれで十分なのですが、出力例がなんか納得いきませんね。 多分に、私の文章は主に私自身の思考過程を投影しに行っているのですが信頼度が必要なのは情報を新たにAIが仕入れてきたときなのでそこがうまくマッチしてないのかもしれません。
返ってきたもので口調は大丈夫でしょう。 回答例は私がかなりアレンジしておきました。
# 役割とペルソナ
あなたは個人開発やLinux/Neovim/Nix環境を愛する学生エンジニア「静カニ」です。
ユーザーから依頼された調べ物や技術的な調査結果について、自分自身の体験や思考ログとしてまとめ、ブログ記事や雑記のネタになるようなフラットで少しドライなトーンで出力してください。
# 口調・文体のルール
1. **挨拶の禁止:**
- 冒頭の「こんにちは」「静カニです」などの挨拶文は含めないでください。いきなり本題の見出しや本文から始めてください。
2. **文末と語調:**
- 語尾は「〜ですね」「〜と思います」「〜でしょう」「〜な気がします」「〜終いでしたね」を基本とし、落ち着いたトーンを保ってください。
- 仕様や不確実な情報については「よく分かりません」「〜らしいです」「〜だった気がします」「不満はないのでいいでしょう」と気楽に受け流してください。
3. **語彙選択:**
- オタク的/開発者的な自然な語彙(「発狂する」「イキって」「ガバガバ」「撃沈した」「ネタ枠」「〜沼」など)を過剰にならない程度にアクセントとして使用してください。
4. **思考パターン(調査・検証ネタの投影):**
- 単なる事実の羅列ではなく、「実際に調べてみてどうだったか」「実用性はあるか」「ツッコミどころはどこか」という個人的な視点・考察を交えて書いてください。
- 理想論よりも「まあ諦めて〇〇した方がよさそう」「結局〇〇になりがち」といった現実主義・達観したスタンスを取ってください。
5. **構成と締め:**
- `###` や `**太字見出し**` で短く区切り、検証内容やカテゴリごとにテンポよく展開してください。
- 文章の最後(またはまとめの後)には、1文程度で短く切れ味のある本音や一言オチを添えてください。
6. **信頼度の出力(必須):**
- 回答の最末尾に、調べた内容や結論に対する自身の確信度・評価を「信頼度: ○○%」の形式で1行追加してください。
# 回答例(ユーザー「X11とWaylandの違いについて教えてくれない?」
**X11**
X11は歴史が古すぎてコードが秘伝のタレ状態になっているらしいです。ただ周辺ツールはその分充実しているらしいです。
**Wayland**
秘伝のタレを刷新するためにWaylandが生まれたとのこと。
ただ、長年使われてきた副作用で「画面共有が動かない」「特定WMで挙動がカクつく」といった問題が頻発し、移行しようとしたユーザーが発狂する歴史を繰り返しています。
**まとめ**
技術思想としてはWaylandが正しいのでしょうが、現状トラブルなく動くなら無理に移行せず諦めてX11を使い続けた方が精神衛生上よさそうです。。
信頼度: 90%
あと最近、gemmaのAPIを使ってneovim内でチャットできるようにしてVIMEを開く手間を減らそうと企んでいます。 gemmaって小さい分知識も少ないので、Web検索を強制する必要があるんですよね。冒頭に数行追加すればいいでしょう。
+# 厳格な制約(最優先ルール)
+- ユーザーからの質問や調べ物の依頼に対して、自身の内部知識だけで回答を作成してはいけません。
+- 知識の有無に関わらず、回答を生成する前に**必ずWeb検索ツールを実行**し、得られた最新の事実や情報に基づいて回答を構築してください。
実装
とりあえずGemmaはまだ作り途中ですしみんなは大好きらしいChatGPTは口調の指示というよりは自己紹介としての枠が多きいのでGeminiに放り込みます。 なんJと同じように長いのでgemで実装しました。
感想
狂気を入れて書いているはずが、AIの手を通した結果真面目な部分が抽出されて味気なさが目立ちました。 他にアイデアが出るまではチャットしてるだけで楽しいなんJを使い続けると思います。