diff --git a/src/core/retriever.py b/src/core/retriever.py
index 1bd14f1e..1cfb862a 100644
--- a/src/core/retriever.py
+++ b/src/core/retriever.py
@@ -128,7 +128,7 @@ class Retriever:
def query_web(self, query, history, refs):
"""查询网络"""
- if not (refs["meta"].get("enable_web_search") and self.config.enable_web_search):
+ if not (refs["meta"].get("use_web") and self.config.enable_web_search):
return {"results": [], "message": "Web search is disabled"}
try:
diff --git a/src/routers/chat_router.py b/src/routers/chat_router.py
index ceb86c9e..12a60100 100644
--- a/src/routers/chat_router.py
+++ b/src/routers/chat_router.py
@@ -35,12 +35,15 @@ def chat_post(
**kwargs
}, ensure_ascii=False).encode('utf-8') + b"\n"
+ def need_retrieve(meta):
+ return meta.get("use_web") or meta.get("use_graph") or meta.get("db_name")
+
def generate_response():
modified_query = query
refs = None
# 处理知识库检索
- if meta and meta.get("enable_retrieval"):
+ if meta and need_retrieve(meta):
chunk = make_chunk(status="searching")
yield chunk
diff --git a/web/src/components/ChatComponent.vue b/web/src/components/ChatComponent.vue
index 1ac31040..6f4b1092 100644
--- a/web/src/components/ChatComponent.vue
+++ b/web/src/components/ChatComponent.vue
@@ -16,26 +16,6 @@
@@ -148,18 +93,60 @@
-
请注意辨别内容的可靠性 模型供应商:{{ configStore.config?.model_provider }}: {{ configStore.config?.model_name }}
+
请注意辨别内容的可靠性 By {{ configStore.config?.model_provider }}: {{ configStore.config?.model_name }}
@@ -173,6 +160,8 @@ import {
LoadingOutlined,
BookOutlined,
BookFilled,
+ CompassOutlined,
+ ArrowUpOutlined,
CompassFilled,
GoldenFilled,
GoldOutlined,
@@ -222,10 +211,8 @@ const opts = reactive({
})
const meta = reactive(JSON.parse(localStorage.getItem('meta')) || {
- enable_retrieval: false,
use_graph: false,
use_web: false,
- enable_web_search: false,
graph_name: "neo4j",
// use_rewrite_query: "off",
selectedKB: null,
@@ -459,10 +446,7 @@ const fetchChatResponse = (user_input, cur_res_id) => {
if (done) {
const msg = conv.value.messages.find((msg) => msg.id === cur_res_id)
console.log(msg)
- if (msg.meta.enable_retrieval) {
- console.log("fetching refs")
- groupRefs(cur_res_id);
- }
+ groupRefs(cur_res_id);
updateMessage({showThinking: "no", id: cur_res_id});
isStreaming.value = false;
if (conv.value.messages.length === 2) { renameTitle(); }
@@ -819,13 +803,12 @@ watch(
.input-box {
display: flex;
+ flex-direction: column;
width: 100%;
height: auto;
max-width: 900px;
margin: 0 auto;
- align-items: flex-end;
padding: 0.25rem 0.5rem;
- // box-shadow: rgba(42, 60, 79, 0.1) 0px 6px 10px 0px;
border: 2px solid #E5E5E5;
border-radius: 1rem;
background: #fcfdfd;
@@ -833,7 +816,43 @@ watch(
&:focus-within {
border: 2px solid var(--main-500);
background: white;
- // box-shadow: rgb(42 60 79 / 5%) 0px 4px 10px 0px;
+ }
+
+ .input-options {
+ display: flex;
+ padding: 4px 8px;
+
+ .options__left,
+ .options__right {
+ display: flex;
+ align-items: center;
+ gap: 8px;
+ }
+
+ .options__left {
+ flex: 1;
+
+ .opt-item {
+ border-radius: 12px;
+ border: 1px solid var(--gray-300);
+ padding: 4px 8px;
+ cursor: pointer;
+ font-size: 12px;
+ color: var(--gray-700);
+
+ &.active {
+ color: var(--main-600);
+ border: 1px solid var(--main-500);
+ background-color: var(--main-10);
+ }
+ }
+ }
+ }
+
+ .input-area {
+ display: flex;
+ align-items: flex-end;
+ gap: 8px;
}
textarea.user-input {
@@ -843,7 +862,7 @@ watch(
background-color: transparent;
border: none;
font-size: 1.2rem;
- margin: 0 0.6rem;
+ margin: 0 0;
color: #111111;
font-size: 16px;
font-variation-settings: 'wght' 400, 'opsz' 10.5;
@@ -861,21 +880,23 @@ watch(
}
button.ant-btn-icon-only {
- font-size: 1.25rem;
+ height: 32px;
+ width: 32px;
cursor: pointer;
- background-color: transparent;
+ background-color: var(--main-color);
+ border-radius: 50%;
border: none;
transition: color 0.3s;
box-shadow: none;
- color: var(--main-700);;
+ color: white;
padding: 0;
&:hover {
- color: var(--gray-1000);
+ background-color: var(--main-800);
}
&:disabled {
- color: #ccc;
+ background-color: var(--gray-400);
cursor: not-allowed;
}
}
diff --git a/web/src/components/RefsComponent.vue b/web/src/components/RefsComponent.vue
index d2f2d5f2..2c908f5c 100644
--- a/web/src/components/RefsComponent.vue
+++ b/web/src/components/RefsComponent.vue
@@ -15,9 +15,9 @@
- 网页搜索 {{ msg.refs.web_search.results.length }}
+ 网页搜索 {{ msg.refs.web_search?.results.length }}
{
- if (msg.refs.web_search) {
- webResults.value = msg.refs.web_search.results
+ if (msg.refs?.web_search) {
+ webResults.value = msg.refs?.web_search.results
webResultVisible.value = true
} else {
console.error('无法获取网页搜索结果')