From a929b3e0e65755c0b2548bf005521828defe7fdc Mon Sep 17 00:00:00 2001 From: slhafzjw Date: Wed, 27 May 2026 23:27:51 +0800 Subject: [PATCH] feat(impression): add vector index skeleton --- .../core/cognition/impression/ImpressionCore.java | 2 ++ .../cognition/impression/ImpressionVectorIndex.java | 13 +++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionVectorIndex.java diff --git a/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionCore.java b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionCore.java index 9d32f995..6e9c3477 100644 --- a/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionCore.java +++ b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionCore.java @@ -22,6 +22,7 @@ public class ImpressionCore implements StateSerializable { * Keyed by entity uuid. Subject can be revised or merged later, so it should not be used as the stable key. */ private final ConcurrentHashMap knownEntitiesByUuid = new ConcurrentHashMap<>(); + private final ImpressionVectorIndex vectorIndex = new ImpressionVectorIndex(); @CapabilityMethod public void updateRelation() { @@ -66,6 +67,7 @@ public class ImpressionCore implements StateSerializable { Entity entity = new Entity(uuid, subject); entity.load(); + vectorIndex.sync(entity); knownEntitiesByUuid.put(uuid, entity); } } diff --git a/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionVectorIndex.java b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionVectorIndex.java new file mode 100644 index 00000000..ac638b4b --- /dev/null +++ b/Partner-Core/src/main/java/work/slhaf/partner/core/cognition/impression/ImpressionVectorIndex.java @@ -0,0 +1,13 @@ +package work.slhaf.partner.core.cognition.impression; + +public class ImpressionVectorIndex { + + public void sync(Entity entity){ + // TODO sync entity impressions/features with vector index. + } + + public void upsert(String content, Entity.IndexableData indexableData){ + // TODO update vector for content when embedding/vector client boundary is finalized. + } + +}