memento-mcp-server 2.1.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/node_modules/@memento/core/dist/database/schema.sql +10 -3
- package/dist/node_modules/@memento/core/dist/domains/anchor/tools/restore-anchors-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/anchor/tools/search-local-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/anchor/tools/set-anchor-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/consolidation/services/cluster-judge.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/consolidation/services/cluster-judge.js +3 -0
- package/dist/node_modules/@memento/core/dist/domains/consolidation/services/cluster-judge.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/migration-execution.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/migration-execution.js +2 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/migration-execution.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/migration-rollback.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/migration-rollback.js +4 -2
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/migration-rollback.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/types.d.ts +2 -0
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service/types.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service.js +5 -3
- package/dist/node_modules/@memento/core/dist/domains/embedding/services/embedding-migration-service.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/forgetting/repositories/forgetting-event-repository.d.ts +1 -1
- package/dist/node_modules/@memento/core/dist/domains/forgetting/repositories/forgetting-event-repository.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/forgetting/repositories/forgetting-event-repository.js +2 -2
- package/dist/node_modules/@memento/core/dist/domains/forgetting/repositories/forgetting-event-repository.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/forgetting/services/forgetting-policy-service.d.ts +0 -4
- package/dist/node_modules/@memento/core/dist/domains/forgetting/services/forgetting-policy-service.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/forgetting/services/forgetting-policy-service.js +0 -42
- package/dist/node_modules/@memento/core/dist/domains/forgetting/services/forgetting-policy-service.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/introspection/get-introspection-summary-tool.js +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/introspection/get-introspection-summary-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/introspection/introspection-heal-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/procedural/procedural-llm-extractor.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/procedural/procedural-llm-extractor.js +2 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/procedural/procedural-llm-extractor.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-anchor-rotation.d.ts +3 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-anchor-rotation.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-anchor-rotation.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-direct.d.ts +6 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-direct.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-direct.js +2 -2
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-direct.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-envelope.d.ts +7 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-envelope.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-envelope.js +5 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-envelope.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-neighbors-fetch.d.ts +3 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-neighbors-fetch.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-neighbors-fetch.js +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-neighbors-fetch.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-post-search.d.ts +9 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-post-search.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-post-search.js +8 -8
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-post-search.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-search-execution.d.ts +4 -2
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-search-execution.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-search-execution.js +8 -2
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-search-execution.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-types.d.ts +7 -0
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool-types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool.js +65 -35
- package/dist/node_modules/@memento/core/dist/domains/memory/recall/recall-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-augmentation.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-augmentation.js +35 -19
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-augmentation.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-core.js +4 -4
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-core.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-db-helpers.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-db-helpers.js +4 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-db-helpers.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-memory-item.js +4 -4
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-memory-item.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-near-duplicate.js +2 -2
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-near-duplicate.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-vault.js +4 -4
- package/dist/node_modules/@memento/core/dist/domains/memory/remember/remember-tool-vault.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/services/memory-embedding-service.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/services/memory-embedding-service.js +20 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/services/memory-embedding-service.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/feedback-tool.js +3 -3
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/feedback-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/forget-tool.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/forget-tool.js +3 -2
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/forget-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/get-memory-neighbors-tool.js +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/get-memory-neighbors-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/memory-injection-prompt.js +2 -2
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/memory-injection-prompt.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/pin-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/memory/tools/unpin-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/category-quality-aggregator.d.ts +4 -2
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/category-quality-aggregator.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/category-quality-aggregator.js +21 -12
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/category-quality-aggregator.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/quality-metrics-collector.d.ts +2 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/quality-metrics-collector.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/quality-metrics-collector.js +4 -0
- package/dist/node_modules/@memento/core/dist/domains/monitoring/services/quality-assurance/quality-metrics-collector.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/tools/get-meta-memory-stats-tool.js +1 -1
- package/dist/node_modules/@memento/core/dist/domains/monitoring/tools/get-meta-memory-stats-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/personal-agent/config/personal-agent-llm-env.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/personal-agent/config/personal-agent-llm-env.js +2 -2
- package/dist/node_modules/@memento/core/dist/domains/personal-agent/config/personal-agent-llm-env.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/jev-relation-judge.d.ts +34 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/jev-relation-judge.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/jev-relation-judge.js +130 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/jev-relation-judge.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-based-relation-extractor.d.ts +0 -6
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-based-relation-extractor.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-based-relation-extractor.js +2 -25
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-based-relation-extractor.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-relation-extractor/extract-relations-gemini.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-relation-extractor/extract-relations-gemini.js +2 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/llm-relation-extractor/extract-relations-gemini.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-candidate-pool.d.ts +9 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-candidate-pool.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-candidate-pool.js +24 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-candidate-pool.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-extractor.d.ts +5 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-extractor.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-extractor.js +54 -3
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-extractor.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-graph-cycle-detector.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-graph-cycle-detector.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-graph-cycle-detector.js +12 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-graph-cycle-detector.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/remember-relation-extraction.d.ts +27 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/remember-relation-extraction.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/remember-relation-extraction.js +60 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/remember-relation-extraction.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/rule-based-relation-extractor.d.ts +5 -0
- package/dist/node_modules/@memento/core/dist/domains/relation/services/rule-based-relation-extractor.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/relation/services/rule-based-relation-extractor.js +10 -4
- package/dist/node_modules/@memento/core/dist/domains/relation/services/rule-based-relation-extractor.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.d.ts +3 -2
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.js +17 -7
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-provider-parallel.d.ts +4 -0
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-provider-parallel.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-provider-parallel.js +35 -5
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-provider-parallel.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-types.d.ts +12 -0
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-vector-search-executor.d.ts +2 -0
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-vector-search-executor.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-vector-search-executor.js +3 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-vector-search-executor.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-engine/search-engine-ranking.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-engine/search-engine-ranking.js +24 -50
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-engine/search-engine-ranking.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-ranking.d.ts +1 -2
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-ranking.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-ranking.js +3 -5
- package/dist/node_modules/@memento/core/dist/domains/search/algorithms/search-ranking.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/factories/hybrid-search.factory.d.ts +0 -2
- package/dist/node_modules/@memento/core/dist/domains/search/factories/hybrid-search.factory.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/factories/hybrid-search.factory.js +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/factories/hybrid-search.factory.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/ports/relevance-gate-port.d.ts +7 -8
- package/dist/node_modules/@memento/core/dist/domains/search/ports/relevance-gate-port.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/ports/relevance-gate-port.js +5 -6
- package/dist/node_modules/@memento/core/dist/domains/search/ports/relevance-gate-port.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/repositories/vector-search/vector-search-hybrid-query.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/repositories/vector-search/vector-search-hybrid-query.js +5 -1
- package/dist/node_modules/@memento/core/dist/domains/search/repositories/vector-search/vector-search-hybrid-query.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/repositories/vector-search/vector-search-knn-query.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/repositories/vector-search/vector-search-knn-query.js +5 -1
- package/dist/node_modules/@memento/core/dist/domains/search/repositories/vector-search/vector-search-knn-query.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/create-relevance-gate.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/create-relevance-gate.js +3 -2
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/create-relevance-gate.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/jev-relevance-gate.d.ts +8 -24
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/jev-relevance-gate.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/jev-relevance-gate.js +55 -117
- package/dist/node_modules/@memento/core/dist/domains/search/services/relevance-gate/jev-relevance-gate.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/telemetry/repositories/telemetry-repository.d.ts +6 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/repositories/telemetry-repository.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/telemetry/repositories/telemetry-repository.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/telemetry/repositories/telemetry-search-quality-query.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/telemetry/repositories/telemetry-search-quality-query.js +24 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/repositories/telemetry-search-quality-query.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-outcome-extra.d.ts +13 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-outcome-extra.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-outcome-extra.js +28 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-outcome-extra.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-reranked-extra.d.ts +3 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-reranked-extra.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-reranked-extra.js +10 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/build-reranked-extra.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/extra-keys.d.ts +10 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/extra-keys.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/extra-keys.js +10 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/extra-keys.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/index.d.ts +3 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/index.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/index.js +3 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/search-quality/index.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/domains/telemetry/tools/get-telemetry-summary-tool.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/domains/telemetry/tools/get-telemetry-summary-tool.js +5 -2
- package/dist/node_modules/@memento/core/dist/domains/telemetry/tools/get-telemetry-summary-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migrate.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migrate.js +8 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migrate.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/053-narrow-legacy-vec-allowlist.d.ts +13 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/053-narrow-legacy-vec-allowlist.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/053-narrow-legacy-vec-allowlist.js +122 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/053-narrow-legacy-vec-allowlist.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/054-memory-embedding-content-hash.d.ts +13 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/054-memory-embedding-content-hash.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/054-memory-embedding-content-hash.js +37 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/migration/migrations/054-memory-embedding-content-hash.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/vec-schema.d.ts +2 -6
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/vec-schema.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/vec-schema.js +18 -10
- package/dist/node_modules/@memento/core/dist/infrastructure/database/sqlite/vec-schema.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-create.d.ts +2 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-create.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-create.js +6 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-create.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-incremental.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-incremental.js +6 -2
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-incremental.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-replace.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-replace.js +3 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-replace.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-versioned.d.ts +2 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-versioned.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-versioned.js +3 -2
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service/reflexion-procedural-update-versioned.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service.d.ts +4 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service.js +17 -3
- package/dist/node_modules/@memento/core/dist/infrastructure/reflexion-procedural-memory-service.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-recurring-schedules.d.ts +2 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-recurring-schedules.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-recurring-schedules.js +4 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-recurring-schedules.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-context.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-context.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-context.js +2 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-context.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-default-config.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-default-config.js +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-default-config.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-control.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-control.js +3 -2
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-control.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-processor.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-processor.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-processor.js +2 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-processor.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-runners.d.ts +2 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-runners.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-runners.js +6 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-job-runners.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-service-wiring.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-service-wiring.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-service-wiring.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-types.d.ts +2 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler-types.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler.js +5 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/batch-scheduler/batch-scheduler.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/handlers/batch-scheduler-embedding-handlers.d.ts +4 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/handlers/batch-scheduler-embedding-handlers.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/handlers/batch-scheduler-embedding-handlers.js +25 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/handlers/batch-scheduler-embedding-handlers.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/jobs/embedding-reconciliation-batch-job.d.ts +13 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/jobs/embedding-reconciliation-batch-job.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/jobs/embedding-reconciliation-batch-job.js +86 -0
- package/dist/node_modules/@memento/core/dist/infrastructure/scheduler/jobs/embedding-reconciliation-batch-job.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/config/constants.d.ts +13 -0
- package/dist/node_modules/@memento/core/dist/shared/config/constants.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/constants.js +13 -0
- package/dist/node_modules/@memento/core/dist/shared/config/constants.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/environment.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/environment.js +3 -2
- package/dist/node_modules/@memento/core/dist/shared/config/environment.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/index.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/index.js +8 -6
- package/dist/node_modules/@memento/core/dist/shared/config/index.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/llm-model-resolver.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/llm-model-resolver.js +2 -1
- package/dist/node_modules/@memento/core/dist/shared/config/llm-model-resolver.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/llm-provider-override.d.ts +2 -0
- package/dist/node_modules/@memento/core/dist/shared/config/llm-provider-override.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/llm-provider-override.js +5 -1
- package/dist/node_modules/@memento/core/dist/shared/config/llm-provider-override.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/ranking-weights-loader.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/shared/config/ranking-weights-loader.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/ranking-weights-loader.js +1 -0
- package/dist/node_modules/@memento/core/dist/shared/config/ranking-weights-loader.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/relation-extraction-seat.d.ts +30 -0
- package/dist/node_modules/@memento/core/dist/shared/config/relation-extraction-seat.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/config/relation-extraction-seat.js +37 -0
- package/dist/node_modules/@memento/core/dist/shared/config/relation-extraction-seat.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/config/vector-search.config.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/config/vector-search.config.js +0 -1
- package/dist/node_modules/@memento/core/dist/shared/config/vector-search.config.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/constants/relation-constants.d.ts +6 -2
- package/dist/node_modules/@memento/core/dist/shared/constants/relation-constants.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/constants/relation-constants.js +6 -2
- package/dist/node_modules/@memento/core/dist/shared/constants/relation-constants.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/services/typesafe/system-one-client.d.ts +40 -0
- package/dist/node_modules/@memento/core/dist/shared/services/typesafe/system-one-client.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/services/typesafe/system-one-client.js +139 -0
- package/dist/node_modules/@memento/core/dist/shared/services/typesafe/system-one-client.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/types/benchmark.types.d.ts +26 -1
- package/dist/node_modules/@memento/core/dist/shared/types/benchmark.types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/types/benchmark.types.js +7 -0
- package/dist/node_modules/@memento/core/dist/shared/types/benchmark.types.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/types/memory.types.d.ts +6 -0
- package/dist/node_modules/@memento/core/dist/shared/types/memory.types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/types/migration.types.d.ts +1 -0
- package/dist/node_modules/@memento/core/dist/shared/types/migration.types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/types/relation-graph.d.ts +2 -5
- package/dist/node_modules/@memento/core/dist/shared/types/relation-graph.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/types/relation.d.ts +6 -2
- package/dist/node_modules/@memento/core/dist/shared/types/relation.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/types/relation.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/database/schema-initialization.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/database/schema-initialization.js +3 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/database/schema-initialization.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/ensure-memory-embedding-content-hash.d.ts +3 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/ensure-memory-embedding-content-hash.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/ensure-memory-embedding-content-hash.js +27 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/ensure-memory-embedding-content-hash.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-content-hash.d.ts +2 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-content-hash.d.ts.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-content-hash.js +5 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-content-hash.js.map +1 -0
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-embedding-write.d.ts +2 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-embedding-write.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-embedding-write.js +7 -4
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-embedding-write.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-filter-sql.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-filter-sql.js +34 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/memory-filter-sql.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/sql-security-validator.d.ts +0 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/sql-security-validator.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/sql-security-validator.js +0 -2
- package/dist/node_modules/@memento/core/dist/shared/utils/sql-security-validator.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/window-embedding-write.d.ts +2 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/window-embedding-write.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/shared/utils/window-embedding-write.js +26 -19
- package/dist/node_modules/@memento/core/dist/shared/utils/window-embedding-write.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/tools/base-tool.js +2 -2
- package/dist/node_modules/@memento/core/dist/tools/base-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/tools/index.js +1 -1
- package/dist/node_modules/@memento/core/dist/tools/index.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/tools/migrate-embeddings-tool.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/tools/migrate-embeddings-tool.js +2 -0
- package/dist/node_modules/@memento/core/dist/tools/migrate-embeddings-tool.js.map +1 -1
- package/dist/node_modules/@memento/core/dist/tools/types.d.ts +0 -2
- package/dist/node_modules/@memento/core/dist/tools/types.d.ts.map +1 -1
- package/dist/node_modules/@memento/core/dist/tools/types.js.map +1 -1
- package/dist/node_modules/@memento/core/package.json +1 -1
- package/dist/server/routes/admin/admin-batch.routes.d.ts.map +1 -1
- package/dist/server/routes/admin/admin-batch.routes.js +240 -257
- package/dist/server/routes/admin/admin-batch.routes.js.map +1 -1
- package/dist/server/routes/api.routes.d.ts.map +1 -1
- package/dist/server/routes/api.routes.js +7 -4
- package/dist/server/routes/api.routes.js.map +1 -1
- package/dist/server/routes/mcp/message-processor.d.ts.map +1 -1
- package/dist/server/routes/mcp/message-processor.js +5 -29
- package/dist/server/routes/mcp/message-processor.js.map +1 -1
- package/dist/telemetry-cli.d.ts.map +1 -1
- package/dist/telemetry-cli.js +3 -0
- package/dist/telemetry-cli.js.map +1 -1
- package/package.json +2 -1
package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-extractor.js
CHANGED
|
@@ -8,8 +8,13 @@
|
|
|
8
8
|
* 3. 타입별 관계 유형 필터링 적용
|
|
9
9
|
*/
|
|
10
10
|
import { isApplicableRelationType, MEMORY_TYPE_RELATION_MAP } from '../../../shared/types/relation.js';
|
|
11
|
+
import { mementoConfig } from '../../../shared/config/index.js';
|
|
12
|
+
import { resolveRelationExtractionSeat } from '../../../shared/config/relation-extraction-seat.js';
|
|
13
|
+
import { SystemOneClient } from '../../../shared/services/typesafe/system-one-client.js';
|
|
11
14
|
import { RuleBasedRelationExtractor } from './rule-based-relation-extractor.js';
|
|
12
15
|
import { LLMBasedRelationExtractor } from './llm-based-relation-extractor.js';
|
|
16
|
+
import { JevRelationJudge, RELATION_JEV_TIMEOUT_MS } from './jev-relation-judge.js';
|
|
17
|
+
import { UnifiedEmbeddingService } from '../../embedding/services/unified-embedding-service.js';
|
|
13
18
|
import { logger } from '../../../shared/utils/logger.js';
|
|
14
19
|
import { CacheKeyGenerator } from '../../../shared/utils/cache-key-generator.js';
|
|
15
20
|
import { CONFIDENCE, LIMITS, CACHE } from '../../../shared/constants/relation-constants.js';
|
|
@@ -43,13 +48,17 @@ export class RelationExtractor {
|
|
|
43
48
|
const method = options?.method ?? 'hybrid';
|
|
44
49
|
const minConfidence = options?.minConfidence ?? CONFIDENCE.MIN_RULE_BASED;
|
|
45
50
|
const immediate = options?.immediate ?? false;
|
|
51
|
+
const jevSeat = resolveRelationExtractionSeat({
|
|
52
|
+
llmProvider: mementoConfig.llmProvider,
|
|
53
|
+
relationExtractionOverride: mementoConfig.relationExtractionOverride,
|
|
54
|
+
}).kind === 'jev';
|
|
46
55
|
// 타입별 관계 유형 필터링
|
|
47
56
|
const applicableTypes = this.getApplicableRelationTypes(newMemory.type, options?.relationTypes);
|
|
48
57
|
if (applicableTypes.length === 0) {
|
|
49
58
|
return [];
|
|
50
59
|
}
|
|
51
|
-
// 캐시
|
|
52
|
-
if (immediate) {
|
|
60
|
+
// 캐시 키는 엔진을 포함하지 않는다. jev 결과는 넣지 않는다.
|
|
61
|
+
if (immediate && !jevSeat) {
|
|
53
62
|
const cacheKey = this.generateCacheKey(newMemory.id, existingMemories.map(m => m.id), options);
|
|
54
63
|
const cached = this.cache.get(cacheKey);
|
|
55
64
|
if (cached) {
|
|
@@ -69,6 +78,10 @@ export class RelationExtractor {
|
|
|
69
78
|
return await this.ruleExtractor.extractRelations(newMemory, existingMemories, extractOptions);
|
|
70
79
|
}
|
|
71
80
|
if (method === 'llm') {
|
|
81
|
+
const jev = await this.jevArm(newMemory, existingMemories);
|
|
82
|
+
if (jev.seated) {
|
|
83
|
+
return jev.ok ? jev.candidates : [];
|
|
84
|
+
}
|
|
72
85
|
// LLM만 사용하는 경우, LLM이 사용 가능한지 확인 (초기화 완료까지 대기)
|
|
73
86
|
if (!(await this.llmExtractor.isAvailableAsync())) {
|
|
74
87
|
throw new Error('LLM 서비스가 사용 불가능합니다. 규칙 기반 추출을 사용하거나 API 키를 설정해주세요.');
|
|
@@ -94,8 +107,20 @@ export class RelationExtractor {
|
|
|
94
107
|
}
|
|
95
108
|
return filtered;
|
|
96
109
|
}
|
|
97
|
-
// 규칙 기반 결과가 없거나 신뢰도가 낮으면
|
|
110
|
+
// 규칙 기반 결과가 없거나 신뢰도가 낮으면 모델 폴백
|
|
98
111
|
if (!hasAnyResults || !hasHighConfidenceResults) {
|
|
112
|
+
const jev = await this.jevArm(newMemory, existingMemories);
|
|
113
|
+
if (jev.seated) {
|
|
114
|
+
if (jev.ok === false) {
|
|
115
|
+
logger.info('Jev 관계 추출 실패, 규칙 기반 결과 반환', {
|
|
116
|
+
memoryId: newMemory.id,
|
|
117
|
+
reason: jev.reason,
|
|
118
|
+
});
|
|
119
|
+
return ruleCandidates;
|
|
120
|
+
}
|
|
121
|
+
return this.mergeCandidates(ruleCandidates, jev.candidates)
|
|
122
|
+
.filter(candidate => candidate.confidence >= minConfidence);
|
|
123
|
+
}
|
|
99
124
|
// LLM이 사용 가능한지 확인 (진행 중인 초기화 완료까지 대기)
|
|
100
125
|
if (!(await this.llmExtractor.isAvailableAsync())) {
|
|
101
126
|
// 사유는 중립값이다. 초기화가 끝났는데도 프로바이더가 없다는 것만 알 수 있고,
|
|
@@ -138,6 +163,32 @@ export class RelationExtractor {
|
|
|
138
163
|
}
|
|
139
164
|
return ruleCandidates;
|
|
140
165
|
}
|
|
166
|
+
/**
|
|
167
|
+
* Model arms only. A jev seat never calls chat availability or determineLlmProvider.
|
|
168
|
+
* `seated: false` means the caller should keep the chat path.
|
|
169
|
+
*/
|
|
170
|
+
async jevArm(source, existing) {
|
|
171
|
+
const seat = resolveRelationExtractionSeat({
|
|
172
|
+
llmProvider: mementoConfig.llmProvider,
|
|
173
|
+
relationExtractionOverride: mementoConfig.relationExtractionOverride,
|
|
174
|
+
});
|
|
175
|
+
if (seat.kind !== 'jev') {
|
|
176
|
+
return { seated: false };
|
|
177
|
+
}
|
|
178
|
+
const apiKey = mementoConfig.typesafeApiKey?.trim();
|
|
179
|
+
if (!apiKey) {
|
|
180
|
+
return { seated: true, ok: false, reason: 'unavailable' };
|
|
181
|
+
}
|
|
182
|
+
const judged = await new JevRelationJudge(new SystemOneClient({
|
|
183
|
+
apiKey,
|
|
184
|
+
model: mementoConfig.typesafeModel,
|
|
185
|
+
timeoutMs: RELATION_JEV_TIMEOUT_MS,
|
|
186
|
+
}), new UnifiedEmbeddingService()).judge(source, existing);
|
|
187
|
+
if (judged.ok === false) {
|
|
188
|
+
return { seated: true, ok: false, reason: judged.reason };
|
|
189
|
+
}
|
|
190
|
+
return { seated: true, ok: true, candidates: [...judged.candidates] };
|
|
191
|
+
}
|
|
141
192
|
/**
|
|
142
193
|
* 기억 타입에 적용 가능한 관계 유형을 반환합니다.
|
|
143
194
|
*
|
package/dist/node_modules/@memento/core/dist/domains/relation/services/relation-extractor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-extractor.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/relation-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAEvG,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"relation-extractor.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/relation-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-graph-cycle-detector.d.ts","sourceRoot":"","sources":["../../../../src/domains/relation/services/relation-graph-cycle-detector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAItE,qBAAa,0BAA0B;IACzB,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAEzC;;OAEG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,YAAY,EAC1B,QAAQ,GAAE,MAA+B,GACxC,OAAO,CAAC,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"relation-graph-cycle-detector.d.ts","sourceRoot":"","sources":["../../../../src/domains/relation/services/relation-graph-cycle-detector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAItE,qBAAa,0BAA0B;IACzB,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,QAAQ,CAAC,QAAQ;IAEzC,OAAO,CAAC,sBAAsB;IAU9B;;OAEG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,YAAY,EAC1B,QAAQ,GAAE,MAA+B,GACxC,OAAO,CAAC,OAAO,CAAC;IAqFnB;;OAEG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,YAAY,EAC1B,QAAQ,GAAE,MAA+B,GACxC,OAAO,CAAC,OAAO,CAAC;CASpB"}
|
|
@@ -10,6 +10,15 @@ export class RelationGraphCycleDetector {
|
|
|
10
10
|
constructor(db) {
|
|
11
11
|
this.db = db;
|
|
12
12
|
}
|
|
13
|
+
hasInboundSameTypeEdge(nodeId, relationType) {
|
|
14
|
+
const row = DatabaseUtils.get(this.db, `
|
|
15
|
+
SELECT 1 AS ok
|
|
16
|
+
FROM memory_relation
|
|
17
|
+
WHERE target_id = ? AND relation_type = ?
|
|
18
|
+
LIMIT 1
|
|
19
|
+
`, [nodeId, relationType]);
|
|
20
|
+
return Boolean(row);
|
|
21
|
+
}
|
|
13
22
|
/**
|
|
14
23
|
* 순환 참조 감지 내부 로직 (트랜잭션 없이 실행)
|
|
15
24
|
*/
|
|
@@ -17,6 +26,9 @@ export class RelationGraphCycleDetector {
|
|
|
17
26
|
if (sourceId === targetId) {
|
|
18
27
|
return false;
|
|
19
28
|
}
|
|
29
|
+
if (!this.hasInboundSameTypeEdge(sourceId, relationType)) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
20
32
|
const visited = new Set();
|
|
21
33
|
const nodeRelations = new Map();
|
|
22
34
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-graph-cycle-detector.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/relation-graph-cycle-detector.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,iDAAiD,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAEzD,MAAM,OAAO,0BAA0B;IACjB;IAApB,YAAoB,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"relation-graph-cycle-detector.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/relation-graph-cycle-detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { LLMProvider } from '../../../shared/types/memory.types.js';
|
|
2
|
+
import type { MemoryItem } from '../../../shared/types/memory.types.js';
|
|
3
|
+
import type { RelationCandidate } from '../../../shared/types/relation.js';
|
|
4
|
+
import type { SystemOneFailureReason } from '../../../shared/services/typesafe/system-one-client.js';
|
|
5
|
+
import { type RelationExtractionOverride } from '../../../shared/config/relation-extraction-seat.js';
|
|
6
|
+
export type RememberRelationOutcome = {
|
|
7
|
+
readonly status: 'extracted';
|
|
8
|
+
readonly candidates: readonly RelationCandidate[];
|
|
9
|
+
} | {
|
|
10
|
+
readonly status: 'none';
|
|
11
|
+
} | {
|
|
12
|
+
readonly status: 'unavailable';
|
|
13
|
+
} | {
|
|
14
|
+
readonly status: 'failed';
|
|
15
|
+
readonly reason: SystemOneFailureReason | 'chat_failed';
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Remember's configured relation engine. Never throws.
|
|
19
|
+
* A jev seat does not construct a chat extractor and does not fall back to one.
|
|
20
|
+
*/
|
|
21
|
+
export declare function extractForRemember(source: MemoryItem, existing: readonly MemoryItem[], config: {
|
|
22
|
+
readonly llmProvider: LLMProvider;
|
|
23
|
+
readonly relationExtractionOverride: RelationExtractionOverride;
|
|
24
|
+
readonly typesafeApiKey: string | undefined;
|
|
25
|
+
readonly typesafeModel: string;
|
|
26
|
+
}): Promise<RememberRelationOutcome>;
|
|
27
|
+
//# sourceMappingURL=remember-relation-extraction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remember-relation-extraction.d.ts","sourceRoot":"","sources":["../../../../src/domains/relation/services/remember-relation-extraction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wDAAwD,CAAC;AAGrG,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,oDAAoD,CAAC;AAM5D,MAAM,MAAM,uBAAuB,GAC/B;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAAE,GACnF;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;CAAE,GAClC;IACE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,sBAAsB,GAAG,aAAa,CAAC;CACzD,CAAC;AAmCN;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,SAAS,UAAU,EAAE,EAC/B,MAAM,EAAE;IACN,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;IAChE,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC,GACA,OAAO,CAAC,uBAAuB,CAAC,CAqBlC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { SystemOneClient } from '../../../shared/services/typesafe/system-one-client.js';
|
|
2
|
+
import { LIMITS } from '../../../shared/constants/relation-constants.js';
|
|
3
|
+
import { resolveRelationExtractionSeat, } from '../../../shared/config/relation-extraction-seat.js';
|
|
4
|
+
import { UnifiedEmbeddingService } from '../../embedding/services/unified-embedding-service.js';
|
|
5
|
+
import { JevRelationJudge, RELATION_JEV_TIMEOUT_MS } from './jev-relation-judge.js';
|
|
6
|
+
import { LLMBasedRelationExtractor } from './llm-based-relation-extractor.js';
|
|
7
|
+
import { RelationExtractor } from './relation-extractor.js';
|
|
8
|
+
function hasTypesafeKey(apiKey) {
|
|
9
|
+
return typeof apiKey === 'string' && apiKey.trim() !== '';
|
|
10
|
+
}
|
|
11
|
+
async function extractWithChat(source, existing) {
|
|
12
|
+
const llmExtractor = new LLMBasedRelationExtractor();
|
|
13
|
+
if (!(await llmExtractor.isAvailableAsync())) {
|
|
14
|
+
return { status: 'unavailable' };
|
|
15
|
+
}
|
|
16
|
+
try {
|
|
17
|
+
const candidates = await new RelationExtractor(undefined, llmExtractor).extractRelations(source, [...existing],
|
|
18
|
+
// hybrid+rule draws an edge to every template peer. Remember asks the chat model only (#1378).
|
|
19
|
+
{
|
|
20
|
+
method: 'llm',
|
|
21
|
+
minConfidence: 0.5,
|
|
22
|
+
candidateLimit: LIMITS.LLM_CANDIDATE_DEFAULT,
|
|
23
|
+
immediate: true,
|
|
24
|
+
});
|
|
25
|
+
if (candidates.length === 0) {
|
|
26
|
+
return { status: 'none' };
|
|
27
|
+
}
|
|
28
|
+
return { status: 'extracted', candidates };
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return { status: 'failed', reason: 'chat_failed' };
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Remember's configured relation engine. Never throws.
|
|
36
|
+
* A jev seat does not construct a chat extractor and does not fall back to one.
|
|
37
|
+
*/
|
|
38
|
+
export async function extractForRemember(source, existing, config) {
|
|
39
|
+
const seat = resolveRelationExtractionSeat(config);
|
|
40
|
+
if (seat.kind === 'jev') {
|
|
41
|
+
if (!hasTypesafeKey(config.typesafeApiKey)) {
|
|
42
|
+
return { status: 'unavailable' };
|
|
43
|
+
}
|
|
44
|
+
const client = new SystemOneClient({
|
|
45
|
+
apiKey: config.typesafeApiKey.trim(),
|
|
46
|
+
model: config.typesafeModel,
|
|
47
|
+
timeoutMs: RELATION_JEV_TIMEOUT_MS,
|
|
48
|
+
});
|
|
49
|
+
const judged = await new JevRelationJudge(client, new UnifiedEmbeddingService()).judge(source, existing);
|
|
50
|
+
if (judged.ok === false) {
|
|
51
|
+
return { status: 'failed', reason: judged.reason };
|
|
52
|
+
}
|
|
53
|
+
if (judged.candidates.length === 0) {
|
|
54
|
+
return { status: 'none' };
|
|
55
|
+
}
|
|
56
|
+
return { status: 'extracted', candidates: judged.candidates };
|
|
57
|
+
}
|
|
58
|
+
return extractWithChat(source, existing);
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=remember-relation-extraction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remember-relation-extraction.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/remember-relation-extraction.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,6 +45,11 @@ export declare class RuleBasedRelationExtractor implements IRelationExtractor {
|
|
|
45
45
|
* 정규식 특수 문자 이스케이프
|
|
46
46
|
*/
|
|
47
47
|
private escapeRegex;
|
|
48
|
+
/**
|
|
49
|
+
* 에이전트 5줄 템플릿 줄 전체를 제거한다 (라벨만이 아니라 `다음 걸림돌: …` 본문까지).
|
|
50
|
+
* 그 줄의 '다음'·'근거' 등은 관계 단서가 아니다 (#1378 / PR #1381).
|
|
51
|
+
*/
|
|
52
|
+
private stripAgentTemplateLines;
|
|
48
53
|
/**
|
|
49
54
|
* 패턴 매칭 강도를 신뢰도로 변환합니다.
|
|
50
55
|
* 패턴 매칭 강도(0.0~1.0)를 신뢰도(0.5~0.8) 범위로 변환합니다.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule-based-relation-extractor.d.ts","sourceRoot":"","sources":["../../../../src/domains/relation/services/rule-based-relation-extractor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,KAAK,EACZ,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAEhB,MAAM,mCAAmC,CAAC;AAkJ3C;;GAEG;AACH,qBAAa,0BAA2B,YAAW,kBAAkB;IACnE;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAM3B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAmCxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAO3B;;;;;;;OAOG;IACG,gBAAgB,CACpB,SAAS,EAAE,UAAU,EACrB,gBAAgB,EAAE,UAAU,EAAE,EAC9B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,iBAAiB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"rule-based-relation-extractor.d.ts","sourceRoot":"","sources":["../../../../src/domains/relation/services/rule-based-relation-extractor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,KAAK,EACZ,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EAEhB,MAAM,mCAAmC,CAAC;AAkJ3C;;GAEG;AACH,qBAAa,0BAA2B,YAAW,kBAAkB;IACnE;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAI1B;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAM3B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAIvB;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAmCxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAI/B;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAO3B;;;;;;;OAOG;IACG,gBAAgB,CACpB,SAAS,EAAE,UAAU,EACrB,gBAAgB,EAAE,UAAU,EAAE,EAC9B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,iBAAiB,EAAE,CAAC;CA6ChC"}
|
|
@@ -213,6 +213,13 @@ export class RuleBasedRelationExtractor {
|
|
|
213
213
|
escapeRegex(str) {
|
|
214
214
|
return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
215
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* 에이전트 5줄 템플릿 줄 전체를 제거한다 (라벨만이 아니라 `다음 걸림돌: …` 본문까지).
|
|
218
|
+
* 그 줄의 '다음'·'근거' 등은 관계 단서가 아니다 (#1378 / PR #1381).
|
|
219
|
+
*/
|
|
220
|
+
stripAgentTemplateLines(text) {
|
|
221
|
+
return text.replace(/^(결정|근거|버린 대안|안 통한 것|다음 걸림돌)\s*:.*$/gm, '').trim();
|
|
222
|
+
}
|
|
216
223
|
/**
|
|
217
224
|
* 패턴 매칭 강도를 신뢰도로 변환합니다.
|
|
218
225
|
* 패턴 매칭 강도(0.0~1.0)를 신뢰도(0.5~0.8) 범위로 변환합니다.
|
|
@@ -247,12 +254,11 @@ export class RuleBasedRelationExtractor {
|
|
|
247
254
|
: MEMORY_TYPE_RELATION_MAP[newMemory.type];
|
|
248
255
|
// 각 기존 기억에 대해 관계 추출 시도
|
|
249
256
|
for (const existingMemory of limitedMemories) {
|
|
250
|
-
//
|
|
251
|
-
const
|
|
252
|
-
// 각 관계 유형별로 패턴 매칭
|
|
257
|
+
// 키워드는 기존 기억에서만 찾는다. 템플릿 줄은 매칭 전에 뺀다 (#1378).
|
|
258
|
+
const existingText = this.stripAgentTemplateLines(existingMemory.content);
|
|
253
259
|
for (const relationType of applicableTypes) {
|
|
254
260
|
const patterns = RELATION_KEYWORD_PATTERNS[relationType];
|
|
255
|
-
const match = this.findPatternMatch(
|
|
261
|
+
const match = this.findPatternMatch(existingText, patterns);
|
|
256
262
|
if (match.matched) {
|
|
257
263
|
const confidence = this.calculateConfidence(match.strength);
|
|
258
264
|
// 최소 신뢰도 임계값 확인
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rule-based-relation-extractor.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/rule-based-relation-extractor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"rule-based-relation-extractor.js","sourceRoot":"","sources":["../../../../src/domains/relation/services/rule-based-relation-extractor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAC,MAAM,EAAE,MAAM,iDAAiD,CAAC;AAQpF,OAAO,EAAE,wBAAwB,EAAC,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAWtG;;GAEG;AACH,MAAM,yBAAyB,GAA2C;IACxE,MAAM,EAAE;QACN;YACE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC;YAClF,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC;YACtG,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAClC,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,CAAC;YAChE,MAAM,EAAE,GAAG;SACZ;KACF;IACD,UAAU,EAAE;QACV;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAC9C,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,CAAC;YACtF,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAC5B,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,cAAc,EAAE,aAAa,EAAE,YAAY,CAAC;YACvD,MAAM,EAAE,GAAG;SACZ;KACF;IACD,OAAO,EAAE;QACP;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;YACxD,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;YACvF,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YAC5B,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC;YAChD,MAAM,EAAE,GAAG;SACZ;KACF;IACD,cAAc,EAAE;QACd;YACE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YACvD,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC;YAClG,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC;YAC7B,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,cAAc,EAAE,UAAU,EAAE,aAAa,CAAC;YACrD,MAAM,EAAE,GAAG;SACZ;KACF;IACD,UAAU,EAAE;QACV;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC;YAChD,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC;YACtF,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;YAC7B,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,WAAW,CAAC;YACxD,MAAM,EAAE,GAAG;SACZ;KACF;IACD,UAAU,EAAE;QACV;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;YACxC,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,cAAc,CAAC;YAC/E,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;YACzB,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,gBAAgB,CAAC;YAC1D,MAAM,EAAE,GAAG;SACZ;KACF;IACD,UAAU,EAAE;QACV;YACE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC;YAChD,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,CAAC;YACxG,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC;YACxC,MAAM,EAAE,GAAG;SACZ;QACD;YACE,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;YACpE,MAAM,EAAE,GAAG;SACZ;KACF;IACD,cAAc,EAAE,EAAE;IAClB,YAAY,EAAE,EAAE;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,0BAA0B;IACrC;;;;;;;OAOG;IACK,kBAAkB,CAAC,IAAY,EAAE,OAAe;QACtD,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;;;;;;OAOG;IACK,mBAAmB,CAAC,IAAY,EAAE,OAAe;QACvD,kGAAkG;QAClG,MAAM,iBAAiB,GAAG,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChF,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAED;;;;;OAKG;IACK,eAAe,CAAC,OAAe;QACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;OAMG;IACK,gBAAgB,CAAC,IAAY,EAAE,QAA0B;QAK/D,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,cAAc,GAAG,EAAE,CAAC;QAExB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACvC,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;gBAEhD,eAAe;gBACf,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;oBAC7C,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,iBAAiB,CAAC;oBAC5D,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;gBAEhE,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;oBAChC,IAAI,QAAQ,GAAG,WAAW,EAAE,CAAC;wBAC3B,WAAW,GAAG,QAAQ,CAAC;wBACvB,cAAc,GAAG,OAAO,CAAC;oBAC3B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,OAAO,EAAE,WAAW,GAAG,CAAC;YACxB,QAAQ,EAAE,WAAW;YACrB,QAAQ,EAAE,cAAc,IAAI,EAAE;SAC/B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,GAAW;QAC7B,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACK,uBAAuB,CAAC,IAAY;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,uCAAuC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1E,CAAC;IAED;;;;;;OAMG;IACK,mBAAmB,CAAC,QAAgB;QAC1C,8BAA8B;QAC9B,gCAAgC;QAChC,gCAAgC;QAChC,OAAO,UAAU,CAAC,iBAAiB,GAAG,CAAC,QAAQ,GAAG,CAAC,UAAU,CAAC,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACnH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,gBAAgB,CACpB,SAAqB,EACrB,gBAA8B,EAC9B,OAAwB;QAExB,MAAM,UAAU,GAAwB,EAAE,CAAC;QAC3C,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,UAAU,CAAC,cAAc,CAAC;QAC1E,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,MAAM,CAAC,sBAAsB,CAAC;QAChF,MAAM,oBAAoB,GAAG,OAAO,EAAE,aAAa,CAAC;QAEpD,aAAa;QACb,MAAM,eAAe,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAElE,+BAA+B;QAC/B,MAAM,eAAe,GAAG,oBAAoB;YAC1C,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,wBAAwB,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrF,CAAC,CAAC,wBAAwB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE7C,uBAAuB;QACvB,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;YAC7C,8CAA8C;YAC9C,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAC1E,KAAK,MAAM,YAAY,IAAI,eAAe,EAAE,CAAC;gBAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,YAAY,CAAC,CAAC;gBACzD,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;gBAE5D,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;oBAClB,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAE5D,gBAAgB;oBAChB,IAAI,UAAU,IAAI,aAAa,EAAE,CAAC;wBAChC,UAAU,CAAC,IAAI,CAAC;4BACd,SAAS,EAAE,SAAS,CAAC,EAAE;4BACvB,SAAS,EAAE,cAAc,CAAC,EAAE;4BAC5B,aAAa,EAAE,YAAY;4BAC3B,UAAU;4BACV,MAAM,EAAE,MAAM;4BACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;yBACzB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,cAAc;QACd,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;QAEvD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF"}
|
package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.d.ts
CHANGED
|
@@ -10,7 +10,7 @@ import { AdaptiveWeightCalculator } from './adaptive-weight-calculator.js';
|
|
|
10
10
|
import { resolveHybridVectorPrefetchLimit, resolveQueryUnifiedEmbeddingForHybridSearch } from './hybrid-vector-search-executor.js';
|
|
11
11
|
import { SearchError, SearchErrorType } from './search-error.js';
|
|
12
12
|
import { SearchResultCombiner } from './search-result-combiner.js';
|
|
13
|
-
import type { HybridSearchQuery, HybridSearchResult, IAdaptiveWeightCalculator, IEmbeddingService, IProceduralMemoryMatcher, ISearchLogger, ISearchResultCombiner, ITextSearchEngine, IVectorSearchEngine } from './hybrid-search-types.js';
|
|
13
|
+
import type { HybridLaneMs, HybridSearchQuery, HybridSearchResult, IAdaptiveWeightCalculator, IEmbeddingService, IProceduralMemoryMatcher, ISearchLogger, ISearchResultCombiner, ITextSearchEngine, IVectorSearchEngine } from './hybrid-search-types.js';
|
|
14
14
|
import type { IRelevanceGatePort } from '../ports/relevance-gate-port.js';
|
|
15
15
|
import { type RelevanceGateOutcome } from '../ports/relevance-gate-port.js';
|
|
16
16
|
import type { RepositoryProvider } from '../../memory/repositories/repository-provider.port.js';
|
|
@@ -33,7 +33,7 @@ export declare class HybridSearchEngine {
|
|
|
33
33
|
private vectorExecutor;
|
|
34
34
|
private resultRanker;
|
|
35
35
|
private readonly rankingVersion;
|
|
36
|
-
constructor(repositories: RepositoryProvider, textSearchEngine: ITextSearchEngine, embeddingService: IEmbeddingService, vectorSearchEngine: IVectorSearchEngine, resultCombiner: ISearchResultCombiner, weightCalculator: IAdaptiveWeightCalculator, logger: ISearchLogger, queryEmbeddingService?: UnifiedEmbeddingService, relationGraph?: RelationGraph, proceduralMemoryMatcher?: IProceduralMemoryMatcher
|
|
36
|
+
constructor(repositories: RepositoryProvider, textSearchEngine: ITextSearchEngine, embeddingService: IEmbeddingService, vectorSearchEngine: IVectorSearchEngine, resultCombiner: ISearchResultCombiner, weightCalculator: IAdaptiveWeightCalculator, logger: ISearchLogger, queryEmbeddingService?: UnifiedEmbeddingService, relationGraph?: RelationGraph, proceduralMemoryMatcher?: IProceduralMemoryMatcher);
|
|
37
37
|
setRelationGraph(relationGraph: RelationGraph | null): void;
|
|
38
38
|
/** #1095 기각 게이트. null 이면 게이트 없음 — 현행 동작 그대로다. */
|
|
39
39
|
private rejectionGate;
|
|
@@ -47,6 +47,7 @@ export declare class HybridSearchEngine {
|
|
|
47
47
|
vector_count?: number;
|
|
48
48
|
fallback_used?: boolean;
|
|
49
49
|
rejection_gate?: RelevanceGateOutcome;
|
|
50
|
+
stage_ms: HybridLaneMs;
|
|
50
51
|
query_embedding_providers?: EmbeddingProvider[];
|
|
51
52
|
union_count: number;
|
|
52
53
|
reranked_count: number;
|
package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid-search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAElF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAEhG,OAAO,EAAE,aAAa,EAAE,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAE3E,OAAO,EAEL,gCAAgC,EAChC,2CAA2C,EAC5C,MAAM,oCAAoC,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAKnE,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAElB,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAsB,KAAK,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAEhG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uDAAuD,CAAC;AAEhG,OAAO,EACL,gCAAgC,EAChC,2CAA2C,EAC3C,WAAW,EACX,eAAe,EACf,wBAAwB,EAExB,oBAAoB,GACrB,CAAC;AAEF,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,EACzB,iBAAiB,EACjB,wBAAwB,EACxB,aAAa,EACb,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,0BAA0B,CAAC;AAElC,qBAAa,kBAAkB;IAa3B,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,kBAAkB;IAC1B,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,qBAAqB;IAlB/B,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAO;IAC3C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAO;IACzC,OAAO,CAAC,WAAW,CAA2F;IAC9G,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,uBAAuB,CAA2B;IAC1D,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;gBAGtC,YAAY,EAAE,kBAAkB,EACxB,gBAAgB,EAAE,iBAAiB,EACnC,gBAAgB,EAAE,iBAAiB,EACnC,kBAAkB,EAAE,mBAAmB,EACvC,cAAc,EAAE,qBAAqB,EACrC,gBAAgB,EAAE,yBAAyB,EAC3C,MAAM,EAAE,aAAa,EACrB,qBAAqB,GAAE,uBAAuD,EACtF,aAAa,CAAC,EAAE,aAAa,EAC7B,uBAAuB,CAAC,EAAE,wBAAwB
|
|
1
|
+
{"version":3,"file":"hybrid-search-engine.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
|
package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.js
CHANGED
|
@@ -40,7 +40,7 @@ export class HybridSearchEngine {
|
|
|
40
40
|
vectorExecutor;
|
|
41
41
|
resultRanker;
|
|
42
42
|
rankingVersion;
|
|
43
|
-
constructor(repositories, textSearchEngine, embeddingService, vectorSearchEngine, resultCombiner, weightCalculator, logger, queryEmbeddingService = new UnifiedEmbeddingService(), relationGraph, proceduralMemoryMatcher
|
|
43
|
+
constructor(repositories, textSearchEngine, embeddingService, vectorSearchEngine, resultCombiner, weightCalculator, logger, queryEmbeddingService = new UnifiedEmbeddingService(), relationGraph, proceduralMemoryMatcher) {
|
|
44
44
|
this.textSearchEngine = textSearchEngine;
|
|
45
45
|
this.embeddingService = embeddingService;
|
|
46
46
|
this.vectorSearchEngine = vectorSearchEngine;
|
|
@@ -49,8 +49,8 @@ export class HybridSearchEngine {
|
|
|
49
49
|
this.logger = logger;
|
|
50
50
|
this.queryEmbeddingService = queryEmbeddingService;
|
|
51
51
|
this.proceduralMemoryMatcher = proceduralMemoryMatcher ?? new ProceduralMemoryMatcher();
|
|
52
|
-
const config = getRankingWeights(
|
|
53
|
-
this.rankingVersion = getRankingVersion(
|
|
52
|
+
const config = getRankingWeights();
|
|
53
|
+
this.rankingVersion = getRankingVersion();
|
|
54
54
|
this.ranking = new SearchRanking({
|
|
55
55
|
relevance: config.ranking_weights.alpha,
|
|
56
56
|
recency: config.ranking_weights.beta,
|
|
@@ -58,7 +58,7 @@ export class HybridSearchEngine {
|
|
|
58
58
|
usage: config.ranking_weights.delta,
|
|
59
59
|
duplication_penalty: config.ranking_weights.epsilon,
|
|
60
60
|
zeta_fb: config.ranking_weights.zeta_fb ?? 0.05,
|
|
61
|
-
}
|
|
61
|
+
});
|
|
62
62
|
this.relationGraph = relationGraph || null;
|
|
63
63
|
this.vectorExecutor = new HybridVectorSearchExecutor(this.embeddingService, this.vectorSearchEngine, this.queryEmbeddingService, this.logger, db => this.detectAllStoredEmbeddingProviders(db), (query, searchId, preferredProvider) => this.generateQueryVector(query, searchId, preferredProvider));
|
|
64
64
|
this.resultRanker = new HybridResultRanker(this.resultCombiner, this.ranking, this.proceduralMemoryMatcher, () => this.relationGraph, repositories);
|
|
@@ -84,7 +84,8 @@ export class HybridSearchEngine {
|
|
|
84
84
|
this.logRankingExperimentIfApplicable(searchId, query, weights);
|
|
85
85
|
const vectorPromise = this.vectorExecutor.execute(db, query, searchId);
|
|
86
86
|
const textPromise = this.executeTextSearch(db, query, searchId);
|
|
87
|
-
const [
|
|
87
|
+
const [textOut, vectorOut] = await Promise.all([textPromise, vectorPromise]);
|
|
88
|
+
const textResults = textOut.items;
|
|
88
89
|
const unionCount = new Set([...textResults, ...vectorOut.results]
|
|
89
90
|
.map(result => result.id)
|
|
90
91
|
.filter((id) => typeof id === 'string')).size;
|
|
@@ -99,14 +100,17 @@ export class HybridSearchEngine {
|
|
|
99
100
|
let finalResults = await this.resultRanker.combineAndSortResults(textResults, vectorResultsForCombine, weights, outputLimit, db, query.includeRelations || false, query);
|
|
100
101
|
// #1191 게이트 판정을 응답에도 싣는다. 미부착이면 'off', 후보 0건이라 안 탔으면 없음.
|
|
101
102
|
let rejectionGateOutcome = this.rejectionGate ? undefined : { verdict: 'off', top_score: null, unscored: 0 };
|
|
103
|
+
let gateMs;
|
|
102
104
|
// #1095 기각 게이트: 후보 최고 점수가 임계값 미만이면 질의 전체를 기각한다.
|
|
103
105
|
// finalResults 를 재할당하므로 아래 logData·finalIds·return 이 모두 자동으로 따라간다.
|
|
104
106
|
if (this.rejectionGate && finalResults.length > 0) {
|
|
105
|
-
//
|
|
107
|
+
// 임계값은 top-10 안의 최고 점수로 교정한다. 후보를 더 넣으면 최고 점수가
|
|
106
108
|
// 올라가기만 해서 기각이 느슨해진다. 측정한 조건 그대로 상위 10건만 본다.
|
|
107
109
|
const gateCandidates = finalResults.slice(0, 10);
|
|
108
110
|
const gateDocs = gateCandidates.map((item) => item.content ?? '');
|
|
111
|
+
const gateStart = process.hrtime.bigint();
|
|
109
112
|
const gateScores = await this.rejectionGate.score(query.query, gateDocs);
|
|
113
|
+
gateMs = Number(process.hrtime.bigint() - gateStart) / 1_000_000;
|
|
110
114
|
const verdict = judgeRelevanceGate(gateScores, mementoConfig.searchRejectionGateThreshold, mementoConfig.searchRejectionGateOnError);
|
|
111
115
|
// #922 어떤 후보가 몇 점을 받았는지 세 경로 모두에 남긴다. 본문은 넣지 않는다 —
|
|
112
116
|
// id 로 되짚을 수 있고 검색 로그에 기억 본문이 새어 나가면 안 된다.
|
|
@@ -178,6 +182,12 @@ export class HybridSearchEngine {
|
|
|
178
182
|
reranked_count: finalResults.length,
|
|
179
183
|
fallback_used: vectorOut.fallback_used,
|
|
180
184
|
...(rejectionGateOutcome ? { rejection_gate: rejectionGateOutcome } : {}),
|
|
185
|
+
stage_ms: {
|
|
186
|
+
text_ms: textOut.text_ms,
|
|
187
|
+
...(vectorOut.embedding_ms !== undefined ? { embedding_ms: vectorOut.embedding_ms } : {}),
|
|
188
|
+
...(vectorOut.vector_ms !== undefined ? { vector_ms: vectorOut.vector_ms } : {}),
|
|
189
|
+
...(gateMs !== undefined ? { gate_ms: gateMs } : {}),
|
|
190
|
+
},
|
|
181
191
|
query_embedding_providers: vectorOut.query_embedding_providers,
|
|
182
192
|
tfidf_query_embedding_fallback: vectorOut.tfidf_query_embedding_fallback,
|
|
183
193
|
tfidf_query_embedding_fallback_providers: vectorOut.tfidf_query_embedding_fallback_providers,
|
|
@@ -227,7 +237,7 @@ export class HybridSearchEngine {
|
|
|
227
237
|
resultCount: textSearchResult.items.length,
|
|
228
238
|
searchTime: `${textSearchTime.toFixed(2)}ms`,
|
|
229
239
|
});
|
|
230
|
-
return textSearchResult.items;
|
|
240
|
+
return { items: textSearchResult.items, text_ms: textSearchTime };
|
|
231
241
|
}
|
|
232
242
|
catch (error) {
|
|
233
243
|
throw new SearchError(SearchErrorType.TEXT_SEARCH_FAILED, '텍스트 검색 실행 중 오류가 발생했습니다', error instanceof Error ? error : new Error(String(error)), { query: query.query, searchId });
|
package/dist/node_modules/@memento/core/dist/domains/search/algorithms/hybrid-search-engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid-search-engine.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hybrid-search-engine.js","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ type ProviderVectorRaceResult = {
|
|
|
17
17
|
error: string | null;
|
|
18
18
|
queryEmbeddingProvider?: EmbeddingProvider;
|
|
19
19
|
tfidfQueryEmbeddingFallback?: boolean;
|
|
20
|
+
embeddingMs?: number;
|
|
21
|
+
vectorMs?: number;
|
|
20
22
|
};
|
|
21
23
|
type ProviderSearchExecutionSummary = {
|
|
22
24
|
allResults: VectorResultWithProvider[];
|
|
@@ -31,6 +33,8 @@ type ProviderSearchExecutionSummary = {
|
|
|
31
33
|
queryEmbeddingProviders?: EmbeddingProvider[];
|
|
32
34
|
tfidfQueryEmbeddingFallback: boolean;
|
|
33
35
|
tfidfQueryEmbeddingFallbackProviders?: EmbeddingProvider[];
|
|
36
|
+
embedding_ms?: number;
|
|
37
|
+
vector_ms?: number;
|
|
34
38
|
};
|
|
35
39
|
export type SearchStepLogger = (searchId: string, step: string, data: unknown) => void;
|
|
36
40
|
export type ProviderVectorSearchOptions = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hybrid-search-provider-parallel.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-provider-parallel.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAClF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mDAAmD,CAAC;AAE5F,KAAK,wBAAwB,GAAG,kBAAkB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,0FAA0F;AAC1F,KAAK,wBAAwB,GAAG;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,wBAAwB,EAAE,CAAC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,sBAAsB,CAAC,EAAE,iBAAiB,CAAC;IAC3C,2BAA2B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"hybrid-search-provider-parallel.d.ts","sourceRoot":"","sources":["../../../../src/domains/search/algorithms/hybrid-search-provider-parallel.ts"],"names":[],"mappings":"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"}
|