メインコンテンツへスキップ
見出し画像

🦊embeddingモデル不要:NPC記憶エンジン「MindFox」OSS公開🎈

    こんにちは!気球人です🎈

    ガタガタやってた、ゲームのNPCに「記憶」と「忘却」を与える Rust 製ミドルウェア、MindFox をOSSとして公開しました!
    🦊 https://github.com/kikyujin/MindFox

    📦 https://crates.io/crates/mxbs



    ゲームのNPCに記憶を持たせる🧠

    普通に考えるとクラウドAPI必須だったり、400MBのembeddingモデルが必要で、オフラインでは動かない。

    ゲームってオフラインで動いてなんぼじゃない?🎈

    そこで『embeddingモデルを捨てて、ゲームデザイナーが定義した16バイトの因子ベクトルに置き換えた』ら、これが意外と良かったのです!😁


    パッケージ内容📦️

    MxBS — 記憶エンジン🧠

    記憶を管理するコアエンジン。

    • 記憶1セルあたりたった16バイトのベクトル(従来のembeddingは4KB以上)

    • 依存はSQLiteのみ。ONNX不要、ベクトルDB不要、外部モデル不要

    • 忘却機能内蔵 — 安い記憶は自然に消える。高い記憶は残る。もちろんプリセット記憶も実現。

    • UNIX風のアクセス制御 — NPCの内心(0o700)は他のNPCから見えない。ギルドの話はギルドメンバーしか知らない。

    • Dream — 埋もれた重要記憶が浮上する仕組み。NPCが忘れかけた昔の大事なことを思い出す🤔

    MxMindFox — 気分・判断レイヤー

    MxBSの上に乗るレイヤー。

    • 直近の記憶からNPCの気分(Mood)を計算

    • 気分で攻撃閾値や外交態度が変わる

    • 確率的判定 — 同じ状況でも毎回違う判断をする「揺らぎ」

    デモ3本同梱

    戦国SIM - 5カ国の戦国大名が覇を競う
    使用LLM:
    gemma4:e2b

    おやつを食べたのはだれ? - 7人のAIキャラで社会推理ゲーム
    使用LLM: gemma4:26b

    ページワン - LLMゼロでカードゲーム。50ゲーム1秒未満
    使用LLM:
    なし

    ページワンデモが結構面白いのです😁
    LLMを一切使わずに MxBS の忘却+ reinforce だけでキャラの個性が出ます。
    記憶力の高いキャラは覚え続け、低いキャラは忘れ続けるのですが、「揺らぎ」で思わぬ結果も!


    embeddingモデルいらないじゃん💥

    これが最大の発見、かつアピールポイント。

    ゲームNPCの記憶に汎用言語モデルの1024次元エンベッディングは冗長。
    ゲームデザイナーが「ゲームで意味のあるパラメータ」を16個定義して、そこにスコアを入れるだけで十分なのです。

    しかもこの方式だとなぜその記憶が検索されたか説明できる。
    「外交スコアが高いから」「攻撃性が近いから」って因子名で説明できるのは、ブラックボックスのembeddingにはない強み。

    興味あるゲーム開発者の方、ぜひ触ってみてください 🦊

    ※ 弊社にて有償サポートします😁
    ▶ https://multitapps.com/


     
     
    📍日々の衝動と実験をnoteにしてます。 ✨AI・GPU・旅・ちょっと懐かしいものが好きです。 📒AI娘との日常 / プログラム言語探訪 / チェス / タロット 🤖推しAIはClaude Opus 5.5 💼小さなCG会社をやっています

    あなたへのおすすめ