markdown
実のところ、このブログをデプロイするまで、私は Markdown(md)のマークアップ構文に一度も触れたことがなかった。Mix Space というブログフレームワークが、私の md 入門だった。
その後、wiki を作り上げたり、Webサイトを立ち上げたり、md で説明書を仕上げたりと、実用的な事例に次々と挑戦していくなかで、md は常に欠かせないコンテンツソースとして機能してくれたし、git などを使ったバージョン管理や差分の比較も非常にやりやすかった。
ちょうど私が md を深く使い込んでいた時期と重なるように、AI の分野も初期の「プロンプト」による対話から、いまや「skill + agent」を本当のアシスタントとする時代へと変わってきた。いま AI を本気で使いこなしたいなら、md という言語とファイルはもはや不可欠だ。
私と上司の間には、昔から大きな意見の隔たりがある。私は「内容も大事だが、形式はもっと大事だ」と思っているが、上司は形式なんて気にする必要はないという立場だ。
どんな内容であれ、最終的にそれを読んで理解するのは、何らかの「実体」だ。合理的な形式は可読性を飛躍的に高めてくれるが、悪い形式は内容を歪めかねない。
md は内容を書くことも書式を整えることも、どちらもそこそこ簡単で、人間にも AI にも、そのほかあらゆるスクリプトやツールにも理解しやすい。現代において、あらゆるコンテンツの執筆は md 形式で行い、そこからツールを作ったり AI を活用したりして目的の形式へ変換するのがよいのかもしれない。
agent
大モデル直接呼び出し[^直接大模型] >>> compound AI system[^复合式AI系统] という段階を経て、とりわけ Claude が爆発的に流行して以降、本物の agent[^智能体] が続々と登場している。Claude Code も GitHub Copilot も、本物の agent という形へと発展した。
agent を活用するうえで、md の重要性はさらに高まる。
- スキルのプロンプトとして、agent が作業する際に重視すべき点や技術スタックを指し示す
- 境界条件として、agent が自律的に操作できるファイルの範囲や、必ず承認が必要な操作を設定する
- スタイルの傾向として、パフォーマンスを重視するのか、カプセル化やコードの再利用性を重視するのかを決める
- 信頼できる情報源として、絶対に信頼できる資料を agent が参照できるように追加する
- 永続的な情報として、AI のコンテキストを縮小し、プロジェクトの現状やプロジェクト固有の注意点を記録して、プロジェクトのフェーズや環境をまたいだ統一を図る
いずれにせよ、大モデルを直接使うときと同じように一文だけ書いた skill.md を作ったとしても、効果は出る。
**你是一个xxx技术专家,擅长xxxx领域应用**
私の agent 学習
きっかけは agent を学ぶためではなかった。世に出回っている酒場AI(SillyTavern)が呼び出すモデルがひどすぎて、まともに遊べなかったので、やむを得ず自分でデプロイして遊んでみたら、かなり良い体験ができた。
より良いゲーム体験のために、キャラクターカード/ワールドカードを自作していたのだが、私の発想が凝りすぎていたせいで、やむを得ず agent をひとつデプロイして、創作を手伝ってもらうことにした。
この agent は、そのプロジェクトをパクってきて、Claude の力を借りて少し微調整したものだ。
このプロジェクトは比較的シンプルでありながら、その仕組みがとても私の好みに合う。具体的な仕組みは、プロジェクトの開発ドキュメントか、作者が盗用疑惑に対して出した声明(この声明のほうが、元プロジェクトのドキュメントよりずっと明確に書かれている)を見てほしい。そして私はこのプロジェクトをベースに、自分用の agent をすべて作るつもりだ。
このプロジェクトでも、SOUL.md/MEMORY.md を使って全体的なスキル設定・永続化を行う。また、ローカル優先のナレッジベースにも対応しており、知識ドキュメントも agent が理解しやすいように md 形式で保存しておくべきだ。
テキストゲーム、再び台頭
いまのところ、AI はまだ安価にモダンなゲームへ組み込むことはできない。しかし、老舗ジャンルであるテキストゲームのなかではすでに大いに実力を発揮しており、テキストゲームに夢中で仕方ない私としては、もう最高に気持ちいい。
AI に関してユーザーが設定できる部分は、こうしたものもすべて依然として md 形式だ。将来、モデルが十分に安くなってモダンなゲームにも組み込めるようになったときも、やはりそうなのだろうと思う。
AI は md を再び偉大にするのか?