---
url: /ja/integrations/providers/memory/builtin.md
---
# 内蔵メモリ

Memoh に標準搭載されているデフォルトのメモリバックエンドで、Memoh の抽出／検索フローに接続します。次をサポートします。

* 会話からのメモリ抽出
* チャット時のセマンティック検索
* 手動での作成・編集
* メモリ圧縮とストア全体の再構築

***

## 動作のしくみ

内蔵プロバイダーは **graph** モードで動作します。メモリのノードとエッジは唯一の正となるデータとして PostgreSQL に保存され、そこから Markdown ビュー（Bot ワークスペース内の `memory/` bundle と `MEMORY.md`）が派生して、Agent が読み書きできます。

セマンティック検索は、その上に重ねる任意のレイヤーです。

| レイヤー | ストレージ | 必要なもの | 提供されるもの |
|----|------|------|----------|
| **Graph**（常時有効） | PostgreSQL のメモリノード／エッジ | メインデータベースのみ | 構造化されたリコール、メモリ間の関係、圧縮、再構築 |
| **セマンティックインデックス**（任意） | `pgvector` データベース | Compose スタックの `[pgvector]` データベース**に加えて**、プロバイダーで embedding モデルを選択していること | メモリノードに対するベクトル類似度検索 |

embedding モデルを選んでいない場合や `pgvector` を設定していない場合でも、プロバイダーは graph のみのモードでそのまま動作し、セマンティック検索だけがスキップされます。

***

## 作成する

1. **Memory Providers** を開きます。
2. **Add Memory Provider** をクリックします。
3. **Name** を入力し、**Provider Type** で `builtin` を選びます。
4. **Create** をクリックします。

***

## 設定

| フィールド | 説明 |
|------|------|
| **Embedding Model** | 任意。いずれかのモデルプロバイダーの embedding モデルです。選択すると（かつ `pgvector` が利用可能なら）メモリノードがベクトル化され、セマンティック検索が有効になります。空のままにすると graph のみのモードです。 |

**Edit** と **Delete** は通常どおり使えます。

***

## 依存関係

### graph のみ

メインの PostgreSQL 以外に追加の依存はありません。

### セマンティックインデックス

デフォルトの Docker Compose スタックには `pgvector` サービスが含まれており、`config.toml` にも対応するセクションがあります。

```toml
[pgvector]
enabled = true
host = "pgvector"
port = 5432
user = "memoh"
password = "memoh123"
database = "memoh_vector"
sslmode = "disable"
```

その上で、プロバイダーで **Embedding Model** を 1 つ選びます。ベクトルは選択したモデルプロバイダー（OpenAI、Gemini、Ollama など）で生成されるため、そのプロバイダーで embedding モデルが利用できる必要があります。

***

## Bot に割り当てる

1. **Bots** → Bot
2. **一般** → **Memory Provider**
3. 保存

選択していない場合、実行時にこのプロバイダーは使われません。

***

## 設定後

個々のメモリは、Bot の **メモリ** タブで管理します。

* 手動で新規作成
* 会話から抽出
* 検索・編集・削除
* メモリストアの圧縮・再構築

日常の操作は [長期メモリ](../../../guides/memory.md) を参照してください。
