永続的なローカルAIコンパニオンエージェント構築からの実践的教訓

セットアップとアーキテクチャ
開発者がM4 Mac mini上でセルフホスト型AIエージェントを数ヶ月間運用している。このセットアップでは、高速なローカル推論のためにOllama上でqwen2.5:14bをRustランタイムで使用している。システムはモデルラダーを実装しており、タスクにより高い能力を必要とする場合にはクラウドモデルにエスカレートする。メモリはSQLiteで管理され、セッションをまたいだ意味的検索のためにnomic-embed-textを使用したローカル埋め込みが行われる。エージェントはlaunchd経由で24時間稼働し、トレーディングボットの監視、メールチェック、ウェブサイトのデプロイ、タスクランナーを介したClaude Codeへの重い実装作業の委任など、様々なタスクを実行する。
得られた主な教訓
メモリ・アーキテクチャが全てを決める: 開発者は、BM25キーワード検索とベクトル類似性を重み付けして統合するハイブリッド検索が画期的であることを発見した。優れたメモリ検索機能を持つ14Bモデルは、毎回の会話をゼロから始める70Bモデルよりも優れたパフォーマンスを発揮する。
システムプロンプトのコストは現実的: 初期のアイデンティティファイルは約10Kトークンから始まったが、エージェントが必要に応じて参照できるものは全て削減し、約2,800トークンまで縮小された。ルールは次の通り:エージェントが時々必要とするものはメモリに保存し、毎回のメッセージで必要とするものはシステムプロンプトに含める。
ローカル埋め込みが経済性を変えた: 会話モデルと並行してOllama上でnomic-embed-textを使用することで、すべてのメモリ保存と検索操作が無料になり、以前はOpenAIの埋め込みリクエストから蓄積されていたコストが解消された。
デフォルトモデルよりもモデルラダーが重要: エージェントは会話にはローカルのqwenをデフォルトで使用する(無料、高速)が、タスクの要件に応じてMinimax、Kimi、Haiku、Sonnet、Opusにエスカレートできる。重要な洞察:自動検出を試みるのではなく、推論タスクには/model sonnet、チャットには/model qwenといったコマンドで人間が手動でモデルを切り替えられるようにすること。
ツール反復回数の制限には余裕が必要: メッセージあたり最大10回のツール呼び出しから始めたが不十分だったことが判明。単純なタスクでは3〜5回のツール呼び出しを消費し、複雑なタスクでは15〜20回が必要となる。現在のセットアップでは、安全策として1時間あたり200アクションのレート制限とともに25回のツール呼び出しを使用している。
最も困難なバグはセッション間メモリだった: storeツールを介して明示的に保存されたメモリには当初session_idがなく、検索クエリは現在のsession_idでフィルタリングされていた。これにより、意図的に記憶された事実が将来のセッションで見えなくなっていた。修正方法は、SQLクエリにOR session_id IS NULLを追加することだった。
📖 元記事を読む: r/LocalLLaMA
👀 See Also

OpenClawユーザーがAIエージェント向け「睡眠サイクル」メモリ圧縮を提案
開発者ではないOpenClawユーザーが、人間の忘却と夢を記憶圧縮とする神経科学研究に触発され、メモリ管理に「睡眠サイクル」アプローチを実装した経験を語っています。このユーザーは、データベースの肥大化、トークンコストの増大、エージェントの矛盾といった問題に直面しました。

Claude AIがAlexaのサポート外コマンド処理の代替頭脳として活用
ある開発者が、Alexaが処理できないコマンドに対してClaude AIがフォールバックプロセッサとして機能するシステムを構築しました。軽量なレイヤーで、ヒンディー語の処理、CCTVストリーミング、非スマートデバイスの制御に対応しています。システムはTV制御にWebSocket、セットトップボックスにDLNA、CCTVにはRTSP→HLS変換を使用しています。

警察官がClaude Codeを使ってiOS位置情報ユーティリティ「LOC8」を構築
警察官がClaude Codeを使用して、住所、最寄りの交差点、GPS座標、高度、精度を即座に表示するiOSアプリ「LOC8」を開発しました。このアプリは、警察の徒歩追跡シナリオに焦点を当てて段階的に構築されましたが、一般市民の利用にも拡大されました。

集中化コンテキストアーキテクチャとClaudeで週10時間以上を節約する方法
Redditユーザーが、SOP、会議ノート、CRMをNotionワークスペースに一元化し、Claudeをそのコンテキストに直接接続することで週10時間以上を節約したと報告。3つの具体的なワークフローにより、手動でのメール作成、スプレッドシート入力、コンテンツ作成が不要に。