From 04d7ddb7419e8138e789ff2e52078fdc8959da0c Mon Sep 17 00:00:00 2001 From: Wenjie Zhang Date: Mon, 24 Feb 2025 14:58:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=BD=91=E9=A1=B5=E6=A3=80?= =?UTF-8?q?=E7=B4=A2=EF=BC=8C=E9=9C=80=E8=A6=81=E9=85=8D=E7=BD=AETAVILY=5F?= =?UTF-8?q?API=5FKEY?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/config/__init__.py | 2 +- src/core/retriever.py | 5 +- src/static/models.yaml | 1 + web/src/components/ChatComponent.vue | 5 +- web/src/components/RefsComponent.vue | 124 ++++++++++++++++++++++++++- web/src/views/SettingView.vue | 10 +-- 6 files changed, 134 insertions(+), 13 deletions(-) diff --git a/src/config/__init__.py b/src/config/__init__.py index e40f363f..660e6ea1 100644 --- a/src/config/__init__.py +++ b/src/config/__init__.py @@ -55,7 +55,7 @@ class Config(SimpleConfig): self.add_item("enable_knowledge_base", default=False, des="是否开启知识库") self.add_item("enable_knowledge_graph", default=False, des="是否开启知识图谱") self.add_item("enable_search_engine", default=False, des="是否开启搜索引擎") - self.add_item("enable_web_search", default=False, des="是否开启网页搜索") + self.add_item("enable_web_search", default=False, des="是否开启网页搜索(需配置 TAVILY_API_KEY)") # 模型配置 ## 注意这里是模型名,而不是具体的模型路径,默认使用 HuggingFace 的路径 ## 如果需要自定义本地模型路径,则在 src/.env 中配置 MODEL_DIR diff --git a/src/core/retriever.py b/src/core/retriever.py index d86e65fc..1bd14f1e 100644 --- a/src/core/retriever.py +++ b/src/core/retriever.py @@ -30,6 +30,7 @@ class Retriever: return refs def construct_query(self, query, refs, meta): + logger.debug(f"{refs=}") if not refs or len(refs) == 0: return query @@ -52,7 +53,7 @@ class Retriever: # 解析网络搜索的结果 web_res = refs.get("web_search", {}).get("results", []) if web_res: - web_text = "\n".join(f"{r['title']}: {r['snippet']}" for r in web_res) + web_text = "\n".join(f"{r['title']}: {r['content']}" for r in web_res) external_parts.extend(["网络搜索信息:", web_text]) # 构造查询 @@ -131,7 +132,7 @@ class Retriever: return {"results": [], "message": "Web search is disabled"} try: - search_results = self.web_searcher.search(query) + search_results = self.web_searcher.search(query, max_results=5) except Exception as e: logger.error(f"Web search error: {str(e)}") return {"results": [], "message": "Web search error"} diff --git a/src/static/models.yaml b/src/static/models.yaml index ca649011..da6f419c 100644 --- a/src/static/models.yaml +++ b/src/static/models.yaml @@ -76,6 +76,7 @@ MODEL_NAMES: - Qwen/Qwen2.5-7B-Instruct - deepseek-ai/DeepSeek-R1 - deepseek-ai/DeepSeek-V3 + - deepseek-ai/DeepSeek-R1-Distill-Qwen-7B EMBED_MODEL_INFO: local/BAAI/bge-m3: diff --git a/web/src/components/ChatComponent.vue b/web/src/components/ChatComponent.vue index 8e8197de..1ac31040 100644 --- a/web/src/components/ChatComponent.vue +++ b/web/src/components/ChatComponent.vue @@ -78,10 +78,7 @@
图数据库
-
- 搜索引擎(Bing)
-
-
+
网页搜索
+
{{ items?.enable_reranker.des }}