Procházet zdrojové kódy

pref: optimize add hit count query performance when dataset hit (#2436)

tags/0.5.5
takatost před 1 rokem
rodič
revize
e1045f01c6
Žádný účet není propojen s e-mailovou adresou tvůrce revize

+ 8
- 4
api/core/callback_handler/index_tool_callback_handler.py Zobrazit soubor

@@ -42,12 +42,16 @@ class DatasetIndexToolCallbackHandler:
def on_tool_end(self, documents: list[Document]) -> None:
"""Handle tool end."""
for document in documents:
doc_id = document.metadata['doc_id']
query = db.session.query(DocumentSegment).filter(
DocumentSegment.index_node_id == document.metadata['doc_id']
)

# if 'dataset_id' in document.metadata:
if 'dataset_id' in document.metadata:
query = query.filter(DocumentSegment.dataset_id == document.metadata['dataset_id'])

# add hit count to document segment
db.session.query(DocumentSegment).filter(
DocumentSegment.index_node_id == doc_id
).update(
query.update(
{DocumentSegment.hit_count: DocumentSegment.hit_count + 1},
synchronize_session=False
)

Načítá se…
Zrušit
Uložit