Files
ai-memory-network-mcp-server/Модель даних.md
T

69 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
tags: [архітектура, база-даних, postgresql]
created: 2026-07-14
---
# Модель даних
База: `ai_memory` у **PostgreSQL 18, що працює окремим контейнером у stack'у проекту** (образ `pgvector/pgvector:pg18` — розширення pgvector вже в комплекті, лишається `CREATE EXTENSION vector;`). Див. [[Деплой на TrueNAS]].
## Таблиці
### `projects`
Логіка проектів за аналогією з project-agent.
| Колонка | Тип | Примітка |
|---------|-----|----------|
| id | bigserial PK | |
| name | text UNIQUE | kebab-case |
| summary | text | опис проекту |
| status | text | active / archived |
| metadata | jsonb | розширювані атрибути (repo url тощо) |
| created_at, updated_at | timestamptz | |
### `memories`
Універсальні записи пам'яті.
| Колонка | Тип | Примітка |
|---------|-----|----------|
| id | bigserial PK | |
| project_id | bigint FK → projects, NULL | NULL = глобальний scope |
| type | text | fact / note / session_state / document / entity / … |
| title | text | |
| content | text | markdown |
| content_tsv | tsvector (generated) | FTS-індекс, конфіг simple+ukrainian |
| embedding | vector(1024), NULL | заповнюється у фазі 2 (bge-m3) |
| metadata | jsonb | теги, джерело, агент-автор тощо |
| created_at, updated_at | timestamptz | |
### `memory_links`
Граф зв'язків — аналог `[[wiki-посилань]]` Obsidian.
| Колонка | Тип | Примітка |
|---------|-----|----------|
| source_id | bigint FK → memories | |
| target_id | bigint FK → memories | |
| link_type | text | related / parent / derived-from / … |
| PK | (source_id, target_id, link_type) | |
### `sessions`
Стан сесій проекту (аналог claude_memory у project-agent).
| Колонка | Тип | Примітка |
|---------|-----|----------|
| id | bigserial PK | |
| project_id | bigint FK → projects | |
| session_summary | text | |
| todo_json | jsonb | `{ tasks: [{ task, priority, note }] }` |
| changes | text | |
| bugs | text | |
| architecture_notes | text | |
| created_at | timestamptz | |
## Пошук
- **Фаза 1:** FTS по `content_tsv` + фільтри (project, type, metadata) + ranking `ts_rank`.
- **Фаза 2:** гібридний скоринг — cosine similarity (pgvector, HNSW-індекс) + FTS, об'єднання через RRF (Reciprocal Rank Fusion).
Пов'язане: [[Огляд архітектури]], [[MCP інструменти]]