mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
Update webapp.py
This commit is contained in:
parent
e753999663
commit
2ba967f1c0
1 changed files with 42 additions and 39 deletions
|
@ -686,45 +686,48 @@ def search():
|
||||||
try:
|
try:
|
||||||
search_query, raw_text_query, _, _ = get_search_query_from_webapp(request.preferences, request.form)
|
search_query, raw_text_query, _, _ = get_search_query_from_webapp(request.preferences, request.form)
|
||||||
# search = Search(search_query) # without plugins
|
# search = Search(search_query) # without plugins
|
||||||
original_search_query = search_query.query
|
try:
|
||||||
if "介绍一下" in search_query.query or "为什么" in search_query.query or "什么是" in search_query.query or "有什么" in search_query.query or "怎样" in search_query.query or "给我" in search_query.query or "如何" in search_query.query or "谁是" in search_query.query or "查询" in search_query.query or "告诉我" in search_query.query or "查一下" in search_query.query or "找一个" in search_query.query or "什么样" in search_query.query or "哪个" in search_query.query or "哪些" in search_query.query or "哪一个" in search_query.query or "哪一些" in search_query.query or len(search_query.query)>25:
|
original_search_query = search_query.query
|
||||||
if len(search_query.query)>5 and "谁是" in search_query.query:
|
if "介绍一下" in search_query.query or "为什么" in search_query.query or "什么是" in search_query.query or "有什么" in search_query.query or "怎样" in search_query.query or "给我" in search_query.query or "如何" in search_query.query or "谁是" in search_query.query or "查询" in search_query.query or "告诉我" in search_query.query or "查一下" in search_query.query or "找一个" in search_query.query or "什么样" in search_query.query or "哪个" in search_query.query or "哪些" in search_query.query or "哪一个" in search_query.query or "哪一些" in search_query.query or len(search_query.query)>25:
|
||||||
search_query.query = search_query.query.replace("谁是","")
|
if len(search_query.query)>5 and "谁是" in search_query.query:
|
||||||
if len(search_query.query)>10 and not "谁是" in search_query.query:
|
search_query.query = search_query.query.replace("谁是","")
|
||||||
prompt = search_query.query + "\n对以上问题生成一个Google搜索词:\n"
|
if len(search_query.query)>10 and not "谁是" in search_query.query:
|
||||||
if "今年" in prompt or "今天" in prompt:
|
prompt = search_query.query + "\n对以上问题生成一个Google搜索词:\n"
|
||||||
now = datetime.datetime.now()
|
if "今年" in prompt or "今天" in prompt:
|
||||||
prompt = prompt.replace("今年",now.strftime('%Y年'))
|
now = datetime.datetime.now()
|
||||||
prompt = prompt.replace("今天",now.strftime('%Y年%m月%d日'))
|
prompt = prompt.replace("今年",now.strftime('%Y年'))
|
||||||
gpt = ""
|
prompt = prompt.replace("今天",now.strftime('%Y年%m月%d日'))
|
||||||
gpt_url = "https://api.openai.com/v1/engines/text-davinci-003/completions"
|
gpt = ""
|
||||||
gpt_headers = {
|
gpt_url = "https://api.openai.com/v1/engines/text-davinci-003/completions"
|
||||||
"Authorization": "Bearer "+os.environ['GPTKEY'],
|
gpt_headers = {
|
||||||
"Content-Type": "application/json",
|
"Authorization": "Bearer "+os.environ['GPTKEY'],
|
||||||
"OpenAI-Organization": os.environ['GPTORG']
|
"Content-Type": "application/json",
|
||||||
}
|
"OpenAI-Organization": os.environ['GPTORG']
|
||||||
gpt_data = {
|
}
|
||||||
"prompt": prompt,
|
gpt_data = {
|
||||||
"max_tokens": 256,
|
"prompt": prompt,
|
||||||
"temperature": 0.7,
|
"max_tokens": 256,
|
||||||
"top_p": 1,
|
"temperature": 0.7,
|
||||||
"frequency_penalty": 0,
|
"top_p": 1,
|
||||||
"presence_penalty": 0,
|
"frequency_penalty": 0,
|
||||||
"best_of": 1,
|
"presence_penalty": 0,
|
||||||
"echo": False,
|
"best_of": 1,
|
||||||
"logprobs": 0,
|
"echo": False,
|
||||||
"stream": False
|
"logprobs": 0,
|
||||||
}
|
"stream": False
|
||||||
gpt_response = requests.post(gpt_url, headers=gpt_headers, data=json.dumps(gpt_data))
|
}
|
||||||
gpt_json = gpt_response.json()
|
gpt_response = requests.post(gpt_url, headers=gpt_headers, data=json.dumps(gpt_data))
|
||||||
if 'choices' in gpt_json:
|
gpt_json = gpt_response.json()
|
||||||
gpt = gpt_json['choices'][0]['text']
|
if 'choices' in gpt_json:
|
||||||
for word in gpt.split('\n'):
|
gpt = gpt_json['choices'][0]['text']
|
||||||
if word != "":
|
for word in gpt.split('\n'):
|
||||||
gpt = word.replace("\"","").replace("\'","").replace("“","").replace("”","").replace("‘","").replace("’","")
|
if word != "":
|
||||||
break
|
gpt = word.replace("\"","").replace("\'","").replace("“","").replace("”","").replace("‘","").replace("’","")
|
||||||
if gpt!="":
|
break
|
||||||
search_query.query = gpt
|
if gpt!="":
|
||||||
|
search_query.query = gpt
|
||||||
|
except Exception as ee:
|
||||||
|
logger.exception(ee, exc_info=True)
|
||||||
search = SearchWithPlugins(search_query, request.user_plugins, request) # pylint: disable=redefined-outer-name
|
search = SearchWithPlugins(search_query, request.user_plugins, request) # pylint: disable=redefined-outer-name
|
||||||
|
|
||||||
result_container = search.search()
|
result_container = search.search()
|
||||||
|
|
Loading…
Add table
Reference in a new issue