Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenpangpang
open-webui
Commits
8debb711
"vscode:/vscode.git/clone" did not exist on "2684ef64c70a5a0b781103a49d4efb9298e0b1dd"
Commit
8debb711
authored
Jun 09, 2024
by
Timothy J. Baek
Browse files
feat: search query threshold
parent
8b4867de
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
32 additions
and
3 deletions
+32
-3
backend/config.py
backend/config.py
+14
-0
backend/main.py
backend/main.py
+10
-0
src/lib/components/chat/Chat.svelte
src/lib/components/chat/Chat.svelte
+8
-3
No files found.
backend/config.py
View file @
8debb711
...
...
@@ -618,6 +618,11 @@ ADMIN_EMAIL = PersistentConfig(
)
####################################
# TASKS
####################################
TASK_MODEL
=
PersistentConfig
(
"TASK_MODEL"
,
"task.model.default"
,
...
...
@@ -664,6 +669,15 @@ Question:
)
SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD
=
PersistentConfig
(
"SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD"
,
"task.search.prompt_length_threshold"
,
os
.
environ
.
get
(
"SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD"
,
100
,
),
)
####################################
# WEBUI_SECRET_KEY
####################################
...
...
backend/main.py
View file @
8debb711
...
...
@@ -81,6 +81,7 @@ from config import (
TASK_MODEL_EXTERNAL
,
TITLE_GENERATION_PROMPT_TEMPLATE
,
SEARCH_QUERY_GENERATION_PROMPT_TEMPLATE
,
SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD
,
AppConfig
,
)
from
constants
import
ERROR_MESSAGES
...
...
@@ -144,6 +145,9 @@ app.state.config.TITLE_GENERATION_PROMPT_TEMPLATE = TITLE_GENERATION_PROMPT_TEMP
app
.
state
.
config
.
SEARCH_QUERY_GENERATION_PROMPT_TEMPLATE
=
(
SEARCH_QUERY_GENERATION_PROMPT_TEMPLATE
)
app
.
state
.
config
.
SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD
=
(
SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD
)
app
.
state
.
MODELS
=
{}
...
...
@@ -596,6 +600,12 @@ async def generate_title(form_data: dict, user=Depends(get_verified_user)):
async
def
generate_search_query
(
form_data
:
dict
,
user
=
Depends
(
get_verified_user
)):
print
(
"generate_search_query"
)
if
len
(
form_data
[
"prompt"
])
<
app
.
state
.
config
.
SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD
:
raise
HTTPException
(
status_code
=
status
.
HTTP_400_BAD_REQUEST
,
detail
=
f
"Skip search query generation for short prompts (<
{
app
.
state
.
config
.
SEARCH_QUERY_PROMPT_LENGTH_THRESHOLD
}
characters)"
,
)
model_id
=
form_data
[
"model"
]
if
model_id
not
in
app
.
state
.
MODELS
:
raise
HTTPException
(
...
...
src/lib/components/chat/Chat.svelte
View file @
8debb711
...
...
@@ -56,6 +56,7 @@
import
Messages
from
'$lib/components/chat/Messages.svelte'
;
import
Navbar
from
'$lib/components/layout/Navbar.svelte'
;
import
CallOverlay
from
'./MessageInput/CallOverlay.svelte'
;
import
{
error
}
from
'@sveltejs/kit'
;
const
i18n
:
Writable
<
i18nType
>
=
getContext
(
'i18n'
);
...
...
@@ -506,7 +507,13 @@
messages
=
messages
;
const
prompt
=
history
.
messages
[
parentId
].
content
;
let
searchQuery
=
await
generateSearchQuery
(
localStorage
.
token
,
model
,
messages
,
prompt
);
let
searchQuery
=
await
generateSearchQuery
(
localStorage
.
token
,
model
,
messages
,
prompt
).
catch
(
(
error
)
=>
{
console
.
log
(
error
);
return
prompt
;
}
);
if
(
!searchQuery) {
toast
.
warning
($
i18n
.
t
(
'No search query generated'
));
responseMessage
.
status
=
{
...
...
@@ -516,8 +523,6 @@
description
:
'No search query generated'
};
messages
=
messages
;
searchQuery
=
prompt
;
}
responseMessage
.
status
=
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment