diff --git a/searx/webapp.py b/searx/webapp.py index 287c0518d..3b7889135 100755 --- a/searx/webapp.py +++ b/searx/webapp.py @@ -711,8 +711,11 @@ def search(): if res['content'] == '': continue new_url = 'https://url'+str(len(url_pair)+1) url_pair[new_url] = res['url'] + res['content'] = res['content'].replace("Translate Tweet. ","") + res['content'] = res['content'].replace("Learn more ","") + tmp_prompt = res['title'] +'\n'+ res['content'] + '\n' + new_url +'\n' - if len(prompt)+len(tmp_prompt)<=1500: + if len(prompt)+len(tmp_prompt)<2000: prompt += tmp_prompt +'\n' if prompt != "": gpt = "" @@ -723,8 +726,8 @@ def search(): "OpenAI-Organization": os.environ['GPTORG'] } gpt_data = { - "prompt": prompt+"\n以上是搜索引擎对关键词 " + search_query.query + " 的结果,用简体中文分条总结简报,在文中用markdown脚注指对应内容来源链接:", - "max_tokens": 1024, + "prompt": prompt+"\n以上是搜索引擎对关键词 " + search_query.query + " 的结果,以搜索机器人(名字是Search)的口吻,用简体中文分条总结简报,在文中用markdown脚注指对应内容来源链接:", + "max_tokens": 2000, "temperature": 0.7, "top_p": 1, "frequency_penalty": 0, @@ -740,13 +743,40 @@ def search(): gpt = gpt_json['choices'][0]['text'] for urls in url_pair.keys(): gpt = gpt.replace(urls,url_pair[urls]) + rgpt = gpt if gpt and gpt!="": for i in range(1,16): gpt = gpt.replace("["+str(i)+"] http","[^"+str(i)+"]: http").replace("["+str(i)+"]http","[^"+str(i)+"]: http").replace("["+str(i)+"]","[^"+str(i)+"]") + rgpt = gpt gpt = markdown.markdown( gpt , extensions=['footnotes']) + for urls in url_pair.keys(): gpt = gpt.replace("#fn:"+urls.replace("https://url",""),url_pair[urls]) gpt = gpt.replace("#fn:url"+urls.replace("https://url",""),url_pair[urls]) + gpt = re.sub(r'