|
|
|
|
|
|
|
|
self.rerank_id = "" |
|
|
self.rerank_id = "" |
|
|
self.empty_response = "" |
|
|
self.empty_response = "" |
|
|
self.tavily_api_key = "" |
|
|
self.tavily_api_key = "" |
|
|
|
|
|
self.use_kg = False |
|
|
|
|
|
|
|
|
def check(self): |
|
|
def check(self): |
|
|
self.check_decimal_float(self.similarity_threshold, "[Retrieval] Similarity threshold") |
|
|
self.check_decimal_float(self.similarity_threshold, "[Retrieval] Similarity threshold") |
|
|
|
|
|
|
|
|
self._param.similarity_threshold, 1 - self._param.keywords_similarity_weight, |
|
|
self._param.similarity_threshold, 1 - self._param.keywords_similarity_weight, |
|
|
aggs=False, rerank_mdl=rerank_mdl, |
|
|
aggs=False, rerank_mdl=rerank_mdl, |
|
|
rank_feature=label_question(query, kbs)) |
|
|
rank_feature=label_question(query, kbs)) |
|
|
|
|
|
if self._param.use_kg: |
|
|
|
|
|
ck = settings.kg_retrievaler.retrieval(query, |
|
|
|
|
|
[kbs[0].tenant_id], |
|
|
|
|
|
self._param.kb_ids, |
|
|
|
|
|
embd_mdl, |
|
|
|
|
|
LLMBundle(kbs[0].tenant_id, LLMType.CHAT)) |
|
|
|
|
|
if ck["content_with_weight"]: |
|
|
|
|
|
kbinfos["chunks"].insert(0, ck) |
|
|
|
|
|
|
|
|
if self._param.tavily_api_key: |
|
|
if self._param.tavily_api_key: |
|
|
tav = Tavily(self._param.tavily_api_key) |
|
|
tav = Tavily(self._param.tavily_api_key) |
|
|
tav_res = tav.retrieve_chunks(query) |
|
|
tav_res = tav.retrieve_chunks(query) |