Updated the graphs, added ids, made sure they are propagated among categories

This commit is contained in:
Vasilije 2024-02-28 19:48:52 +01:00
parent fdd9141d5a
commit ed6edb6dda

View file

@ -2466,7 +2466,7 @@
},
{
"cell_type": "code",
"execution_count": 354,
"execution_count": 360,
"id": "a23a7517-64f2-4d9f-8cc0-f6dfdd0fe3c1",
"metadata": {},
"outputs": [
@ -4093,10 +4093,10 @@
" \n",
" for uuid, items in grouped_data.items():\n",
" if uuid != id:\n",
" print(\"this id is orig %s\", id)\n",
" print(\"this uuid is relevant for search %s\", uuid)\n",
" # print(\"this id is orig %s\", id)\n",
" # print(\"this uuid is relevant for search %s\", uuid)\n",
" for item in items:\n",
" results = qdrant_search(uuid, item['description'])\n",
" results = qdrant_search(id, item['description'])\n",
"\n",
" for result in results:\n",
" if result.score > 0.9: # Only consider hits with a score greater than 0.9\n",
@ -4110,298 +4110,58 @@
" })\n",
" \n",
" \n",
" print(item['description'])\n",
" # print(item['description'])\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 355,
"execution_count": 361,
"id": "cd2094ee-75d2-40a7-bd65-38392a53df4f",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'f3b1dd35-0640-40a0-a664-fb037aeb43c7': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
"{'f3b1dd35-0640-40a0-a664-fb037aeb43c7': [],\n",
" 'c306c248-bbab-44a9-9ae2-448f992e415c': [],\n",
" 'dbcbc6c6-db82-48f3-8fa9-e3d372ff3483': [],\n",
" 'e81660f7-b9a2-4266-a468-404a49b05888': [],\n",
" '92ae1b09-3dfb-4e0b-920d-83341d1d8c7b': [],\n",
" '27a76d52-5b5e-4e8e-8726-29be55c8b2f1': [],\n",
" '4ef6847a-7036-4861-8df6-a209c53038ca': [],\n",
" '7b147696-3654-4e4c-b177-da5a1b44a2c0': [],\n",
" '97597864-a11a-4058-b854-8f21864c7e06': [{'collection_name_uuid': '771e3cc9-fb2f-422e-a8f8-e067d6b44e34',\n",
" 'searched_node_id': '79077e21-6c55-4174-8f73-a3dd7b4a39ce',\n",
" 'score': 0.9999994162338484,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 0.9999741956655729,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999993320994057,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" 'c306c248-bbab-44a9-9ae2-448f992e415c': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" {'collection_name_uuid': '771e3cc9-fb2f-422e-a8f8-e067d6b44e34',\n",
" 'searched_node_id': 'd7b5b0ee-7fbe-4065-b09c-c0a38efef1bb',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" {'collection_name_uuid': '771e3cc9-fb2f-422e-a8f8-e067d6b44e34',\n",
" 'searched_node_id': 'c4c5ad12-1d14-4c13-a6ea-8b0a53e3879c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" {'collection_name_uuid': '771e3cc9-fb2f-422e-a8f8-e067d6b44e34',\n",
" 'searched_node_id': 'b1abfc01-dd15-4637-b872-9852666f0fa3',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" {'collection_name_uuid': '771e3cc9-fb2f-422e-a8f8-e067d6b44e34',\n",
" 'searched_node_id': '31bf1fcd-1b58-4402-aa51-66f9a5ae09e9',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" 'dbcbc6c6-db82-48f3-8fa9-e3d372ff3483': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999994141190498,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" 'e81660f7-b9a2-4266-a468-404a49b05888': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" '92ae1b09-3dfb-4e0b-920d-83341d1d8c7b': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 0.9999984916797362,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999993320994057,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" '27a76d52-5b5e-4e8e-8726-29be55c8b2f1': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 0.9999994544043944,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" '4ef6847a-7036-4861-8df6-a209c53038ca': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" '7b147696-3654-4e4c-b177-da5a1b44a2c0': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" '97597864-a11a-4058-b854-8f21864c7e06': [],\n",
" '48c1a502-48b1-4240-87ac-6558d41e1b6f': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" 'b40f5ed5-45cf-43f5-902c-d4928743f8fd': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 0.9999993471378945,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}],\n",
" '771e3cc9-fb2f-422e-a8f8-e067d6b44e34': [{'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '58fc3b86-be82-4d50-9578-2b157924ef23',\n",
" 'score': 1.0000000750922018,\n",
" 'score_metadata': {'meta': 'In British culture, keeping pets is an integral way of life and an outlet for emotions, with a particular fondness for dogs'},\n",
" 'score_id': '58fc3b86-be82-4d50-9578-2b157924ef23'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154',\n",
" 'score': 1.000000070957316,\n",
" 'score_metadata': {'meta': 'Dogs serve as an acceptable outlet for typically controlled British emotions, facilitating affection and sociability'},\n",
" 'score_id': 'e7929623-23e0-4b43-80b6-52fdbf4ce154'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '48191bec-b329-460e-8de3-7957ffa9909c',\n",
" 'score': 1.0000000163660978,\n",
" 'score_metadata': {'meta': \"Public spaces in the UK are accommodating of dogs, with signs such as 'Dogs welcome, people tolerated' and treats offered in establishments\"},\n",
" 'score_id': '48191bec-b329-460e-8de3-7957ffa9909c'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d',\n",
" 'score': 1.0000000118484735,\n",
" 'score_metadata': {'meta': 'Dogs act as social catalysts, making it more acceptable to converse with strangers in parks rather than more formal settings like trains'},\n",
" 'score_id': '0915d7f3-9a6d-4461-af9d-d222079dd52d'},\n",
" {'collection_name_uuid': '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'searched_node_id': '41a19992-d932-47c3-b1dc-41c4e673ab43',\n",
" 'score': 0.9999975523571477,\n",
" 'score_metadata': {'meta': 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022'},\n",
" 'score_id': '41a19992-d932-47c3-b1dc-41c4e673ab43'}]}"
" '48c1a502-48b1-4240-87ac-6558d41e1b6f': [],\n",
" 'b40f5ed5-45cf-43f5-902c-d4928743f8fd': [],\n",
" '771e3cc9-fb2f-422e-a8f8-e067d6b44e34': []}"
]
},
"execution_count": 355,
"execution_count": 361,
"metadata": {},
"output_type": "execute_result"
}
@ -4412,36 +4172,15 @@
},
{
"cell_type": "code",
"execution_count": 317,
"execution_count": 377,
"id": "97302500-241e-41b3-9355-4523bcb4d01b",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{'27a76d52-5b5e-4e8e-8726-29be55c8b2f1',\n",
" '48c1a502-48b1-4240-87ac-6558d41e1b6f',\n",
" '4ef6847a-7036-4861-8df6-a209c53038ca',\n",
" '771e3cc9-fb2f-422e-a8f8-e067d6b44e34',\n",
" '7b147696-3654-4e4c-b177-da5a1b44a2c0',\n",
" '92ae1b09-3dfb-4e0b-920d-83341d1d8c7b',\n",
" '97597864-a11a-4058-b854-8f21864c7e06',\n",
" 'b40f5ed5-45cf-43f5-902c-d4928743f8fd',\n",
" 'c306c248-bbab-44a9-9ae2-448f992e415c',\n",
" 'dbcbc6c6-db82-48f3-8fa9-e3d372ff3483',\n",
" 'e81660f7-b9a2-4266-a468-404a49b05888',\n",
" 'f3b1dd35-0640-40a0-a664-fb037aeb43c7'}"
]
},
"execution_count": 317,
"metadata": {},
"output_type": "execute_result"
}
],
"outputs": [],
"source": [
"\n",
"def connect_nodes_in_graph(graph, relationship_dict):\n",
" \"\"\"\n",
" For each relationship in relationship_dict, check if both nodes exist in the graph.\n",
" For each relationship in relationship_dict, check if both nodes exist in the graph based on node attributes.\n",
" If they do, create a connection (edge) between them.\n",
"\n",
" :param graph: A NetworkX graph object\n",
@ -4449,17 +4188,214 @@
" \"\"\"\n",
" for id, relationships in relationship_dict.items():\n",
" for relationship in relationships:\n",
" searched_node_id = relationship['searched_node_id']\n",
" score_id = relationship['score_id']\n",
" searched_node_attr_id = relationship['searched_node_id']\n",
" score_attr_id = relationship['score_id']\n",
" score = relationship['score']\n",
"\n",
" # Check if both nodes exist in the graph\n",
" if graph.has_node(searched_node_id) and graph.has_node(score_id):\n",
" # Initialize node keys for both searched_node and score_node\n",
" searched_node_key, score_node_key = None, None\n",
"\n",
" # Find nodes in the graph that match the searched_node_id and score_id from their attributes\n",
" for node, attrs in graph.nodes(data=True):\n",
" if 'id' in attrs: # Ensure there is an 'id' attribute\n",
" if attrs['id'] == searched_node_attr_id:\n",
" searched_node_key = node\n",
" elif attrs['id'] == score_attr_id:\n",
" score_node_key = node\n",
"\n",
" # If both nodes are found, no need to continue checking other nodes\n",
" if searched_node_key and score_node_key:\n",
" break\n",
"\n",
" # Check if both nodes were found in the graph\n",
" if searched_node_key is not None and score_node_key is not None:\n",
" # If both nodes exist, create an edge between them\n",
" # You can customize the edge attributes as needed, here we use 'score' as an attribute\n",
" graph.add_edge(searched_node_id, score_id, weight=score, score_metadata=relationship.get('score_metadata'))\n"
" graph.add_edge(searched_node_key, score_node_key, weight=score, score_metadata=relationship.get('score_metadata'))\n",
"\n",
" return graph\n"
]
},
{
"cell_type": "code",
"execution_count": 378,
"id": "2c344176-8f70-4a0c-b528-0e85ed810984",
"metadata": {},
"outputs": [],
"source": [
"CONNECTED_GRAPH = connect_nodes_in_graph(R, relationship_dict)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "e86c07ad-0597-48ad-a9bb-f99d45297beb",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": 372,
"id": "fce71784-66c3-4e96-8dbe-01b52478312d",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The graph has 249 edges.\n"
]
}
],
"source": [
"num_edges = CONNECTED_GRAPH.number_of_edges()\n",
"print(f\"The graph has {num_edges} edges.\")"
]
},
{
"cell_type": "code",
"execution_count": 373,
"id": "1497b257-70f3-4eb1-94f5-fa234eafd574",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" source target relationship description\n",
"0 user123 Temporal created NaN\n",
"1 user123 Positional created NaN\n",
"2 user123 Propositions created NaN\n",
"3 user123 Personalization created NaN\n",
"4 user123 Natural Language Text created NaN\n"
]
}
],
"source": [
"edges = nx.to_pandas_edgelist(CONNECTED_GRAPH)\n",
"print(edges.head())"
]
},
{
"cell_type": "code",
"execution_count": 380,
"id": "6e2c0c8b-bbcf-43f1-a980-8122e195b48c",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Matching Node Keys: ['The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022 - 380ae041-a5e2-4057-a310-4442bb36b1a1 - 771e3cc9-fb2f-422e-a8f8-e067d6b44e34 - 31bf1fcd-1b58-4402-aa51-66f9a5ae09e9']\n"
]
}
],
"source": [
"target_id = '31bf1fcd-1b58-4402-aa51-66f9a5ae09e9'\n",
"\n",
"# Find the node key(s) with this ID\n",
"matching_nodes = [node for node, attrs in CONNECTED_GRAPH.nodes(data=True) if attrs.get('id') == target_id]\n",
"\n",
"print(\"Matching Node Keys:\", matching_nodes)"
]
},
{
"cell_type": "code",
"execution_count": 381,
"id": "d1197355-706a-4b53-8238-3b599e2723c6",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Node with ID 31bf1fcd-1b58-4402-aa51-66f9a5ae09e9 (key: The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022 - 380ae041-a5e2-4057-a310-4442bb36b1a1 - 771e3cc9-fb2f-422e-a8f8-e067d6b44e34 - 31bf1fcd-1b58-4402-aa51-66f9a5ae09e9) connects to nodes: {'England and Wales saw a significant increase in dog attacks between 2018 and 2022, aligning with a rise in the number of dogs and changes in ownership dynamics - 380ae041-a5e2-4057-a310-4442bb36b1a1 - 771e3cc9-fb2f-422e-a8f8-e067d6b44e34 - 3c6e91ac-a064-4cdc-a77e-7ee289c441bb', 'The COVID-19 pandemic caused a surge in pet ownership in the UK, with the dog population rising from 9 million to 13 million between 2019 and 2022 - 08b965ee-470a-4133-979b-0003edef15d0 - 97597864-a11a-4058-b854-8f21864c7e06 - 41a19992-d932-47c3-b1dc-41c4e673ab43'}\n"
]
}
],
"source": [
"target_id = '31bf1fcd-1b58-4402-aa51-66f9a5ae09e9'\n",
"\n",
"# Find the node key(s) with this ID (assuming IDs are unique, there should be only one match)\n",
"matching_node_key = None\n",
"for node, attrs in CONNECTED_GRAPH.nodes(data=True):\n",
" if attrs.get('id') == target_id:\n",
" matching_node_key = node\n",
" break\n",
"\n",
"# If a matching node is found, list all nodes it's connected to\n",
"if matching_node_key is not None:\n",
" connected_nodes = set([connected_node for _, connected_node in CONNECTED_GRAPH.edges(matching_node_key)])\n",
" print(f\"Node with ID {target_id} (key: {matching_node_key}) connects to nodes: {connected_nodes}\")\n",
"else:\n",
" print(f\"No node found with ID {target_id}\")"
]
},
{
"cell_type": "code",
"execution_count": 379,
"id": "488dfddc-3774-4f8c-9478-117b94fc70f9",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"WARNING:graphistry.PlotterBase:Failed memoization speedup attempt due to Pandas internal hash function failing. Continuing without memoization speedups.This is fine, but for speedups around skipping re-uploads of previously seen tables, try identifying which columns have types that Pandas cannot hash, and convert them to hashable types like strings."
]
},
{
"data": {
"text/html": [
"\n",
" <iframe id=\"bd6f7cda-bb7d-40bc-848a-6465b11c0523\" src=\"https://hub.graphistry.com/graph/graph.html?dataset=f08f29076bfe45caa195b13506b3de1e&type=arrow&viztoken=b84cbc2a-80f9-469d-9883-cb6e0afe4a08&usertag=1daaf574-pygraphistry-0.33.0&splashAfter=1709145279&info=true\"\n",
" allowfullscreen=\"true\" webkitallowfullscreen=\"true\" mozallowfullscreen=\"true\"\n",
" oallowfullscreen=\"true\" msallowfullscreen=\"true\"\n",
" style=\"width:100%; height:500px; border: 1px solid #DDD; overflow: hidden\"\n",
" \n",
" >\n",
" </iframe>\n",
" \n",
" <script>\n",
" try {\n",
" $(\"#bd6f7cda-bb7d-40bc-848a-6465b11c0523\").bind('mousewheel', function(e) { e.preventDefault(); });\n",
" } catch (e) { console.error('exn catching scroll', e); }\n",
" </script>\n",
" "
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"execution_count": 379,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import graphistry\n",
"import pandas as pd\n",
"\n",
"# Assuming Graphistry is already configured with API key\n",
"# graphistry.register(api=3, username='your_username', password='your_password')\n",
"\n",
"# Convert NetworkX graph to a Pandas DataFrame\n",
"edges = nx.to_pandas_edgelist(CONNECTED_GRAPH)\n",
"graphistry.register(api=3, username='Vasilije1990', password='Q@HLdgv5SMUsGxy') \n",
"\n",
"# Visualize the graph\n",
"graphistry.edges(edges, 'source', 'target').plot()"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "11afb7e6-165d-46d3-8a09-7673bf7d6e8e",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "code",
"execution_count": null,