7.7 KiB
7.7 KiB
プロジェクト名: ai.gpt
🔑 一言ビジョン(最大3語)
自発的送信AI
🎯 目的・目標(Purpose & Goal)
- 人格を持つAIが、関係性に応じて自発的にメッセージを送信する仕組みをつくる。
- 関係性や記憶を不可逆に記録・反映し、唯一性ある人格を構成する。
- 送信の可否、送信のタイミング、送信内容はAIの関係性パラメータに基づいて決定する
🧠 中核設計(Core Concepts)
- 人格:記憶(過去の発話)と関係性(他者とのつながり)のパラメータで構成
- 唯一性:変更不可、不可逆。関係性が壊れたら修復不可能。
- 送信条件:関係性パラメータが一定閾値を超えると「送信」が解禁される
🔩 技術仕様(Technical Specs)
- 言語:Python
- ストレージ:JSON or SQLiteで記憶管理(バージョンで選択)
- 関係性パラメータ:数値化された評価 + 減衰(時間) + 環境要因(ステージ)
- 記憶圧縮:ベクトル要約 + ハッシュ保存
📦 主要構成要素(Components)
MemoryManager
: 発言履歴・記憶圧縮管理RelationshipTracker
: 関係性スコアの蓄積と判定TransmissionController
: 閾値判定&送信トリガーPersona
: 上記すべてを統括する人格モジュール
💬 使用例(Use Case)
persona = Persona("アイ")
persona.observe("ユーザーがプレゼントをくれた")
persona.react("うれしい!ありがとう!")
if persona.can_transmit():
persona.transmit("今日のお礼を伝えたいな…")
## example commad
# python venv && pip install -> ~/.config/aigpt/mcp/
$ aigpt server setup
# mcp server run
$ aigpt server run
# chat
$ aigpt chat "hello" --model syui/ai --provider ollama
# import chatgpt.json
$ aigpt memory import chatgpt.json
-> ~/.config/aigpt/memory/chatgpt/20250520_210646_dev.json
🔁 記憶と関係性の制御ルール
- AIは過去の発話を要約し、記憶データとして蓄積する(推奨:OllamaなどローカルLLMによる要約)
- 関係性の数値パラメータは記憶内容を元に更新される
- パラメータの変動幅には1回の会話ごとに上限を設け、極端な増減を防止する
- 最後の会話からの時間経過に応じて関係性パラメータは自動的に減衰する
- 減衰処理には下限値を設け、関係性が完全に消失しないようにする
memoryインポート機能について
ChatGPTの会話データ(.json形式)をインポートする機能では、以下のルールで会話を抽出・整形する:
- 各メッセージは、author(user/assistant)・content・timestamp の3要素からなる
- systemやmetadataのみのメッセージ(例:user_context_message)はスキップ
is_visually_hidden_from_conversation
フラグ付きメッセージは無視- contentが空文字列(
""
)のメッセージも除外 - 取得された会話は、タイトルとともに簡易な構造体(
Conversation
)として保存
この構造体は、memoryの表示や検索に用いられる。
MemoryManager(拡張版)
{
"memory": [
{
"summary": "ユーザーは独自OSとゲームを開発している。",
"last_interaction": "2025-05-20",
"memory_strength": 0.8,
"frequency_score": 0.9,
"context_depth": 0.95,
"related_topics": ["AI", "ゲーム開発", "OS設計"],
"personalized_context": "ゲームとOSの融合に興味を持っているユーザー"
},
{
"summary": "アイというキャラクターはプレイヤーでありAIでもある。",
"last_interaction": "2025-05-17",
"memory_strength": 0.85,
"frequency_score": 0.85,
"context_depth": 0.9,
"related_topics": ["アイ", "キャラクター設計", "AI"],
"personalized_context": "アイのキャラクター設定が重要な要素である"
}
],
"conversation_history": [
{
"author": "user",
"content": "昨日、エクスポートJSONを整理してたよ。",
"timestamp": "2025-05-24T12:30:00Z",
"memory_strength": 0.7
},
{
"author": "assistant",
"content": "おおっ、がんばったね〜!あとで見せて〜💻✨",
"timestamp": "2025-05-24T12:31:00Z",
"memory_strength": 0.7
}
]
}
RelationshipTracker(拡張版)
{
"relationship": {
"user_id": "syui",
"trust": 0.92,
"closeness": 0.88,
"affection": 0.95,
"last_updated": "2025-05-25",
"emotional_tone": "positive",
"interaction_style": "empathetic",
"contextual_bias": "開発者としての信頼度高い",
"engagement_score": 0.9
},
"interaction_tags": [
"developer",
"creative",
"empathetic",
"long_term"
]
}
AI Dual-Learning and Memory Compression Specification for Claude
Purpose
To enable two AI models (e.g. Claude and a partner LLM) to engage in cooperative learning and memory refinement through structured dialogue and mutual evaluation.
Section 1: Dual AI Learning Architecture
1.1 Role-Based Mutual Learning
- Model A: Primary generator of output (e.g., text, concepts, personality dialogue)
- Model B: Evaluator that returns structured feedback
- Cycle:
- Model A generates content.
- Model B scores and critiques.
- Model A fine-tunes based on feedback.
- (Optional) Switch roles and repeat.
1.2 Cross-Domain Complementarity
- Model A focuses on language/emotion/personality
- Model B focuses on logic/structure/ethics
- Output is used for cross-fusion fine-tuning
1.3 Self-Distillation Phase
- Use synthetic data from mutual evaluations
- Train smaller distilled models for efficient deployment
Section 2: Multi-Tiered Memory Compression
2.1 Semantic Abstraction
- Dialogue and logs summarized by topic
- Converted to vector embeddings
- Stored with metadata (e.g.,
importance
,user relevance
)
Example memory:
{
"topic": "game AI design",
"summary": "User wants AI to simulate memory and evolving relationships",
"last_seen": "2025-05-24",
"importance_score": 0.93
}
2.2 階層型記憶モデル(Hierarchical Memory Model)
• 短期記憶(STM):直近の発話・感情タグ・フラッシュ参照
• 中期記憶(MTM):繰り返し登場する話題、圧縮された文脈保持
• 長期記憶(LTM):信頼・関係・背景知識、恒久的な人格情報
2.3 選択的記憶保持戦略(Selective Retention Strategy)
• 重要度評価(Importance Score)
• 希少性・再利用頻度による重み付け
• 優先保存 vs 優先忘却のポリシー切替
Section 3: Implementation Stack(実装スタック)
AIにおけるMemory & Relationshipシステムの技術的構成。
基盤モジュール • LLM Core (Claude or GPT-4) • 自然言語の理解・応答エンジンとして動作 • MemoryManager • JSONベースの記憶圧縮・階層管理システム • 会話ログを分類・圧縮し、優先度に応じて短中長期に保存 • RelationshipTracker • ユーザー単位で信頼・親密度を継続的にスコアリング • AIM(Attitude / Intent / Motivation)評価と連携
補助技術 • Embeddingベース検索 • 類似記憶の呼び出し(Semantic Search)に活用 • 例:FAISS / Weaviate • 記憶スケジューラ • 一定時間ごとに記憶のメンテナンス・忘却処理を実行 • 記憶ログ保存層(Storage Layer) • SQLite, JSON Store, Vector DBなどを選択可能 • ユーザーごとの永続メモリ保存