/** * Тест embedding-потока (P2). * Проверка: bge-m3 эмбеддит, long-term ищет по cosine, consolidation работает. */ import { OllamaEmbeddingClient, cosineSimilarity } from './src/embedding.js'; import { MemorySystem } from './src/memory.js'; (async () => { const embedding = new OllamaEmbeddingClient('http://localhost:11434'); const memory = new MemorySystem(10, embedding); console.log('[test] эмбеддим 3 тестовые фразы...'); await memory.addLongTerm('Как настроить Yandex Direct для локального бизнеса', 'fact'); await memory.addLongTerm('Сайт-лидер рынка: структура и SEO', 'procedure'); await memory.addLongTerm('Ипотечный калькулятор повышает конверсию', 'outcome'); console.log('[test] long-term наполнен, ищем по запросу...'); const results = await memory.searchLongTerm('Как снизить CPA в Директе?'); console.log('[test] top-K результатов:'); for (const m of results) { console.log(` - ${m.type}: ${m.text}`); } console.log('[test] consolidation переносит мысли в long-term...'); await memory.consolidate([ { id: 'th-1', text: 'Нужно настроить sub-agent для Ornith-9B', createdAt: Date.now() }, ]); console.log('[test] OK — embedding-поток работает'); })();