30 lines
1.4 KiB
TypeScript
30 lines
1.4 KiB
TypeScript
/**
|
|
* Тест 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-поток работает');
|
|
})();
|