feat:document summary

This commit is contained in:
aries_ckt 2023-10-31 16:10:06 +08:00
parent 7dcfa1921d
commit b3dbf31209

View File

@ -437,6 +437,9 @@ class KnowledgeService:
summary = self._llm_extract_summary(texts[0]) summary = self._llm_extract_summary(texts[0])
# summaries = self._mapreduce_extract_summary(texts) # summaries = self._mapreduce_extract_summary(texts)
outputs, summary = self._refine_extract_summary(texts[1:], summary) outputs, summary = self._refine_extract_summary(texts[1:], summary)
print(
f"refine summary outputs:{outputs}"
)
summaries = prompt_helper.repack(prompt=DEFAULT_TREE_SUMMARIZE_PROMPT_SEL, text_chunks=outputs) summaries = prompt_helper.repack(prompt=DEFAULT_TREE_SUMMARIZE_PROMPT_SEL, text_chunks=outputs)
summary = self._llm_extract_summary("|".join(summaries)) summary = self._llm_extract_summary("|".join(summaries))
print( print(
@ -530,16 +533,16 @@ class KnowledgeService:
ChatScene.ExtractSummary.value(), **{"chat_param": chat_param} ChatScene.ExtractSummary.value(), **{"chat_param": chat_param}
) )
) )
print(
f"initialize summary is :{summary}"
)
return summary return summary
def _refine_extract_summary(self, docs, summary: str, max_iteration:int = 5): def _refine_extract_summary(self, docs, summary: str, max_iteration:int = 5):
"""Extract refine summary by llm""" """Extract refine summary by llm"""
from pilot.scene.base import ChatScene from pilot.scene.base import ChatScene
from pilot.common.chat_util import llm_chat_response_nostream from pilot.common.chat_util import llm_chat_response_nostream
import uuid import uuid
outputs = [] print(
f"initialize summary is :{summary}"
)
outputs = [summary]
max_iteration = max_iteration if len(docs) > max_iteration else len(docs) max_iteration = max_iteration if len(docs) > max_iteration else len(docs)
for doc in docs[0:max_iteration]: for doc in docs[0:max_iteration]:
chat_param = { chat_param = {