fix: fix single data point addition to weaiate
This commit is contained in:
parent
b1b6b79ca4
commit
eb5f30fcd1
2 changed files with 10 additions and 9 deletions
|
|
@ -11,7 +11,6 @@ from ..embeddings.EmbeddingEngine import EmbeddingEngine
|
|||
logger = logging.getLogger("WeaviateAdapter")
|
||||
|
||||
class IndexSchema(DataPoint):
|
||||
uuid: str
|
||||
text: str
|
||||
|
||||
_metadata: dict = {
|
||||
|
|
@ -89,8 +88,10 @@ class WeaviateAdapter(VectorDBInterface):
|
|||
def convert_to_weaviate_data_points(data_point: DataPoint):
|
||||
vector = data_vectors[data_points.index(data_point)]
|
||||
properties = data_point.model_dump()
|
||||
properties["uuid"] = properties["id"]
|
||||
del properties["id"]
|
||||
|
||||
if "id" in properties:
|
||||
properties["uuid"] = str(data_point.id)
|
||||
del properties["id"]
|
||||
|
||||
return DataObject(
|
||||
uuid = data_point.id,
|
||||
|
|
@ -114,7 +115,7 @@ class WeaviateAdapter(VectorDBInterface):
|
|||
)
|
||||
else:
|
||||
data_point: DataObject = data_points[0]
|
||||
return collection.data.update(
|
||||
return collection.data.insert(
|
||||
uuid = data_point.uuid,
|
||||
vector = data_point.vector,
|
||||
properties = data_point.properties,
|
||||
|
|
@ -130,8 +131,8 @@ class WeaviateAdapter(VectorDBInterface):
|
|||
async def index_data_points(self, index_name: str, index_property_name: str, data_points: list[DataPoint]):
|
||||
await self.create_data_points(f"{index_name}_{index_property_name}", [
|
||||
IndexSchema(
|
||||
uuid = str(data_point.id),
|
||||
text = getattr(data_point, data_point._metadata["index_fields"][0]),
|
||||
id = data_point.id,
|
||||
text = data_point.get_embeddable_data(),
|
||||
) for data_point in data_points
|
||||
])
|
||||
|
||||
|
|
@ -178,9 +179,9 @@ class WeaviateAdapter(VectorDBInterface):
|
|||
|
||||
return [
|
||||
ScoredResult(
|
||||
id = UUID(result.uuid),
|
||||
id = UUID(str(result.uuid)),
|
||||
payload = result.properties,
|
||||
score = float(result.metadata.score)
|
||||
score = 1 - float(result.metadata.score)
|
||||
) for result in search_result.objects
|
||||
]
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ async def main():
|
|||
|
||||
from cognee.infrastructure.databases.vector import get_vector_engine
|
||||
vector_engine = get_vector_engine()
|
||||
random_node = (await vector_engine.search("Entity_name", "quantum computer"))[0]
|
||||
random_node = (await vector_engine.search("Entity_name", "Quantum computer"))[0]
|
||||
random_node_name = random_node.payload["text"]
|
||||
|
||||
search_results = await cognee.search(SearchType.INSIGHTS, query = random_node_name)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue