Skip to content

Commit 2bf7e7c

Browse files
authored
Fix multi-index search (#2063)
1 parent 6c66b7c commit 2bf7e7c

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"type": "patch",
3+
"description": "Fix multi-index search."
4+
}

graphrag/utils/api.py

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -168,57 +168,58 @@ def update_context_data(
168168
"""
169169
updated_context_data = {}
170170
for key in context_data:
171+
entries = context_data[key].to_dict(orient="records")
171172
updated_entry = []
172173
if key == "reports":
173174
updated_entry = [
174175
dict(
175-
{k: entry[k] for k in entry},
176+
entry,
176177
index_name=links["community_reports"][int(entry["id"])][
177178
"index_name"
178179
],
179180
index_id=links["community_reports"][int(entry["id"])]["id"],
180181
)
181-
for entry in context_data[key]
182+
for entry in entries
182183
]
183184
if key == "entities":
184185
updated_entry = [
185186
dict(
186-
{k: entry[k] for k in entry},
187+
entry,
187188
entity=entry["entity"].split("-")[0],
188189
index_name=links["entities"][int(entry["id"])]["index_name"],
189190
index_id=links["entities"][int(entry["id"])]["id"],
190191
)
191-
for entry in context_data[key]
192+
for entry in entries
192193
]
193194
if key == "relationships":
194195
updated_entry = [
195196
dict(
196-
{k: entry[k] for k in entry},
197+
entry,
197198
source=entry["source"].split("-")[0],
198199
target=entry["target"].split("-")[0],
199200
index_name=links["relationships"][int(entry["id"])]["index_name"],
200201
index_id=links["relationships"][int(entry["id"])]["id"],
201202
)
202-
for entry in context_data[key]
203+
for entry in entries
203204
]
204205
if key == "claims":
205206
updated_entry = [
206207
dict(
207-
{k: entry[k] for k in entry},
208+
entry,
208209
entity=entry["entity"].split("-")[0],
209210
index_name=links["covariates"][int(entry["id"])]["index_name"],
210211
index_id=links["covariates"][int(entry["id"])]["id"],
211212
)
212-
for entry in context_data[key]
213+
for entry in entries
213214
]
214215
if key == "sources":
215216
updated_entry = [
216217
dict(
217-
{k: entry[k] for k in entry},
218+
entry,
218219
index_name=links["text_units"][int(entry["id"])]["index_name"],
219220
index_id=links["text_units"][int(entry["id"])]["id"],
220221
)
221-
for entry in context_data[key]
222+
for entry in entries
222223
]
223224
updated_context_data[key] = updated_entry
224225
return updated_context_data

0 commit comments

Comments
 (0)