Можливості
- Пошук за ключовими словами через повнотекстове індексування FTS5 (оцінювання BM25).
- Векторний пошук через вбудовування від будь-якого підтримуваного постачальника.
- Гібридний пошук, який поєднує обидва підходи для найкращих результатів.
- Підтримка CJK через триграмну токенізацію для китайської, японської та корейської мов.
- Прискорення sqlite-vec для векторних запитів у базі даних (необов’язково).
Початок роботи
За замовчуванням вбудований рушій використовує вбудовування OpenAI. ЯкщоOPENAI_API_KEY або models.providers.openai.apiKey уже налаштовано, векторний
пошук працює без додаткового налаштування пам’яті.
Щоб явно вказати постачальника:
local.modelPath файл GGUF:
Підтримувані постачальники вбудовувань
Змініть
memorySearch.provider, щоб перейти з OpenAI на іншого постачальника.
Як працює індексування
OpenClaw розбиваєMEMORY.md і memory/*.md на фрагменти (за замовчуванням
по 400 токенів із перекриттям у 80 токенів), індексує їх і зберігає в окремій
для кожного агента базі даних SQLite.
- Розташування індексу: база даних відповідного агента за адресою
~/.openclaw/agents/<agentId>/agent/openclaw-agent.sqlite - Обслуговування сховища: розмір супровідних файлів WAL SQLite обмежується періодичними контрольними точками та контрольними точками під час завершення роботи.
- Відстеження файлів: зміни у файлах пам’яті запускають повторне індексування із затримкою для усунення брязкоту (за замовчуванням 1,5 с).
- Автоматичне повторне індексування: індекс автоматично перебудовується, коли змінюються постачальник вбудовувань, модель, конфігурація розбиття, налаштовані джерела або область дії.
- Повторне індексування на вимогу:
openclaw memory index --force
За допомогою
memorySearch.extraPaths також можна індексувати файли Markdown
поза робочою областю. Див. довідник із конфігурації.Коли використовувати
Вбудований рушій — оптимальний вибір для більшості користувачів:- Працює одразу без додаткових залежностей.
- Добре виконує пошук за ключовими словами та векторний пошук.
- Підтримує всіх постачальників вбудовувань.
- Гібридний пошук поєднує переваги обох підходів до пошуку інформації.
Усунення несправностей
Пошук у пам’яті вимкнено? Перевіртеopenclaw memory status. Якщо
постачальника не виявлено, укажіть його явно або додайте ключ API.
Локального постачальника не виявлено? Переконайтеся, що локальний шлях існує,
і виконайте:
local. Установіть memorySearch.provider: "local", якщо хочете
використовувати локальні вбудовування.
Застарілі результати? Виконайте openclaw memory index --force, щоб
перебудувати індекс. У рідкісних граничних випадках засіб відстеження може
не помітити зміни.
sqlite-vec не завантажується? OpenClaw автоматично переходить до обчислення
косинусної подібності в процесі. openclaw memory status --deep показує локальне
векторне сховище окремо від постачальника вбудовувань, тому Vector store: unavailable указує на проблему із завантаженням sqlite-vec, а Embeddings: unavailable
— на проблему з постачальником, автентифікацією або готовністю моделі. Перевірте
журнали, щоб знайти конкретну помилку завантаження.