Преглед на файлове

refine components retrieval and rewrite (#2818)

### What problem does this PR solve?


### Type of change

- [x] Performance Improvement
tags/v0.13.0
Kevin Hu преди 1 година
родител
ревизия
7d80fc474c
No account linked to committer's email address
променени са 2 файла, в които са добавени 14 реда и са изтрити 7 реда
  1. 9
    6
      agent/component/retrieval.py
  2. 5
    1
      agent/component/rewrite.py

+ 9
- 6
agent/component/retrieval.py Целия файл

@@ -50,12 +50,15 @@ class Retrieval(ComponentBase, ABC):
component_name = "Retrieval"

def _run(self, history, **kwargs):
query = []
for role, cnt in history[::-1][:self._param.message_history_window_size]:
if role != "user":continue
query.append(cnt)
# query = "\n".join(query)
query = query[0]
# query = []
# for role, cnt in history[::-1][:self._param.message_history_window_size]:
# if role != "user":continue
# query.append(cnt)
# # query = "\n".join(query)
# query = query[0]
query = self.get_input()
query = str(query["content"][0]) if "content" in query else ""

kbs = KnowledgebaseService.get_by_ids(self._param.kb_ids)
if not kbs:
raise ValueError("Can't find knowledgebases by {}".format(self._param.kb_ids))

+ 5
- 1
agent/component/rewrite.py Целия файл

@@ -91,7 +91,11 @@ class RewriteQuestion(Generate, ABC):
raise Exception("Sorry! Nothing relevant found.")
self._loop += 1

conv = self._canvas.get_history(4)
hist = self._canvas.get_history(4)
conv = []
for m in hist:
if m["role"] not in ["user", "assistant"]: continue
conv.append("{}: {}".format(m["role"].upper(), m["content"]))
conv = "\n".join(conv)

chat_mdl = LLMBundle(self._canvas.get_tenant_id(), LLMType.CHAT, self._param.llm_id)

Loading…
Отказ
Запис