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:
|
||||
search_query, raw_text_query, _, _ = get_search_query_from_webapp(request.preferences, request.form)
|
||||
# search = Search(search_query) # without plugins
|
||||
original_search_query = 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:
|
||||
if len(search_query.query)>5 and "谁是" in search_query.query:
|
||||
search_query.query = search_query.query.replace("谁是","")
|
||||
if len(search_query.query)>10 and not "谁是" in search_query.query:
|
||||
prompt = search_query.query + "\n对以上问题生成一个Google搜索词:\n"
|
||||
if "今年" in prompt or "今天" in prompt:
|
||||
now = datetime.datetime.now()
|
||||
prompt = prompt.replace("今年",now.strftime('%Y年'))
|
||||
prompt = prompt.replace("今天",now.strftime('%Y年%m月%d日'))
|
||||
gpt = ""
|
||||
gpt_url = "https://api.openai.com/v1/engines/text-davinci-003/completions"
|
||||
gpt_headers = {
|
||||
"Authorization": "Bearer "+os.environ['GPTKEY'],
|
||||
"Content-Type": "application/json",
|
||||
"OpenAI-Organization": os.environ['GPTORG']
|
||||
}
|
||||
gpt_data = {
|
||||
"prompt": prompt,
|
||||
"max_tokens": 256,
|
||||
"temperature": 0.7,
|
||||
"top_p": 1,
|
||||
"frequency_penalty": 0,
|
||||
"presence_penalty": 0,
|
||||
"best_of": 1,
|
||||
"echo": False,
|
||||
"logprobs": 0,
|
||||
"stream": False
|
||||
}
|
||||
gpt_response = requests.post(gpt_url, headers=gpt_headers, data=json.dumps(gpt_data))
|
||||
gpt_json = gpt_response.json()
|
||||
if 'choices' in gpt_json:
|
||||
gpt = gpt_json['choices'][0]['text']
|
||||
for word in gpt.split('\n'):
|
||||
if word != "":
|
||||
gpt = word.replace("\"","").replace("\'","").replace("“","").replace("”","").replace("‘","").replace("’","")
|
||||
break
|
||||
if gpt!="":
|
||||
search_query.query = gpt
|
||||
try:
|
||||
original_search_query = 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:
|
||||
if len(search_query.query)>5 and "谁是" in search_query.query:
|
||||
search_query.query = search_query.query.replace("谁是","")
|
||||
if len(search_query.query)>10 and not "谁是" in search_query.query:
|
||||
prompt = search_query.query + "\n对以上问题生成一个Google搜索词:\n"
|
||||
if "今年" in prompt or "今天" in prompt:
|
||||
now = datetime.datetime.now()
|
||||
prompt = prompt.replace("今年",now.strftime('%Y年'))
|
||||
prompt = prompt.replace("今天",now.strftime('%Y年%m月%d日'))
|
||||
gpt = ""
|
||||
gpt_url = "https://api.openai.com/v1/engines/text-davinci-003/completions"
|
||||
gpt_headers = {
|
||||
"Authorization": "Bearer "+os.environ['GPTKEY'],
|
||||
"Content-Type": "application/json",
|
||||
"OpenAI-Organization": os.environ['GPTORG']
|
||||
}
|
||||
gpt_data = {
|
||||
"prompt": prompt,
|
||||
"max_tokens": 256,
|
||||
"temperature": 0.7,
|
||||
"top_p": 1,
|
||||
"frequency_penalty": 0,
|
||||
"presence_penalty": 0,
|
||||
"best_of": 1,
|
||||
"echo": False,
|
||||
"logprobs": 0,
|
||||
"stream": False
|
||||
}
|
||||
gpt_response = requests.post(gpt_url, headers=gpt_headers, data=json.dumps(gpt_data))
|
||||
gpt_json = gpt_response.json()
|
||||
if 'choices' in gpt_json:
|
||||
gpt = gpt_json['choices'][0]['text']
|
||||
for word in gpt.split('\n'):
|
||||
if word != "":
|
||||
gpt = word.replace("\"","").replace("\'","").replace("“","").replace("”","").replace("‘","").replace("’","")
|
||||
break
|
||||
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
|
||||
|
||||
result_container = search.search()
|
||||
|
|
Loading…
Add table
Reference in a new issue