fb700 commited on
Commit
76b7823
1 Parent(s): e60a583

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +42 -58
app.py CHANGED
@@ -27,6 +27,8 @@ tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
27
  model = AutoModel.from_pretrained(model_name, trust_remote_code=True).half().cuda()
28
  model = model.eval()
29
 
 
 
30
  _ = """Override Chatbot.postprocess"""
31
 
32
 
@@ -331,8 +333,8 @@ def mindmap(
331
  flowchartins = """
332
  "instruction": "现在你是一个分析师,你需要按照要求将我给你的内容或者主题以Mermaid语言生成足够深度以包含尽量多主要细节的流程图。学习下面的<context></context>里面的知识来完成分析。如果通过<context></context>的学习找不到答案,只需说你不知道。请不要编造答案。",
333
  "input":
334
- "<context>
335
- 用户问题: 购买奶茶
336
  答案:
337
  graph TD;
338
  A[客户进入奶茶店] --> B[浏览店内菜单并选择奶茶口味和大小];
@@ -346,7 +348,24 @@ flowchartins = """
346
  I --> |有问题| E;
347
  I --> |没问题| K[将奶茶交给客户并感谢客户光临];
348
  K --> L[客户拿着奶茶离开奶茶店享受美味的饮品];
349
- 请复制生成内容至https://mermaid-js.github.io/mermaid-live-editor/。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
350
  用户问题:根据所给内容:"当用户要找一张图片,告诉用户打开浏览器从收藏夹中找到bofanAI,打开网页后滚动到聊天窗口下方,在示例区点双击样例第一项后,样例提示词将出现在输入窗,在输入窗中用其它英文语单词替换monkey,然后点击发送后将接收到5张照片的小图,鼠标右键点击小图获取大图,在跳出的菜单中选择在新标签页打开,就可以在新标签页获取大图。接下来,你可以检查图片是否有误, 如果有问题则鼠标右键点击小图获取大图,如果没问题可以将图片保持在本地。"
351
  答案:
352
  graph TD;
@@ -363,7 +382,7 @@ flowchartins = """
363
  K --> L[检查图片是否有误];
364
  L --> |有问题| I[鼠标右键点击小图获取大图];
365
  L --> |没问题| M[将图片保持在本地];
366
- 请复制生成内容至https://mermaid-js.github.io/mermaid-live-editor/。"
367
  </context>
368
  用户问题:
369
  """
@@ -556,7 +575,7 @@ def allSecretary(
556
  history,
557
  past_key_values,
558
  )
559
- '''
560
  redBookins = """
561
  1、如果用户没有输入,请你告诉他:请输入你想写的内容
562
  2、收到用户输入,按照下面是小红书帖子进行编写:
@@ -587,12 +606,13 @@ redBookins = """
587
  用户输入:
588
 
589
  """
590
- '''
591
- redBookins="请你用最华丽、最真诚和最有感情的语言祝:顺欣妈妈、昊昊爸爸、昊昊生日快乐!请在每句话大量的使用🎂、❤️、💖、🥳、🥂、🎈、🎊、🎉、🎁、🍾等表示庆祝的的Emoji"
592
  def redBook(
593
  user_input, chatbot, max_length, top_p, temperature, history, past_key_values
594
  ):
595
 
 
596
  user_input = redBookins
597
  #user_input = redBookins+user_input
598
 
@@ -674,57 +694,17 @@ def mindAsk(
674
  history,
675
  past_key_values,
676
  )
677
-
678
- # 导入所需模块
679
-
680
  from bs4 import BeautifulSoup
681
  import requests
682
 
683
- '''
684
- # 定义函数:从网页中抓取文本
685
- def scrape_text(url, proxies) -> str:
686
- """从网页抓取文本
687
 
688
- 参数:
689
- url (str): 要抓取文本的网址
690
 
691
- 返回:
692
- str: 抓取到的文本
693
- """
694
- headers = {
695
- 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36',
696
- 'Content-Type': 'text/plain',
697
- }
698
- try:
699
- response = requests.get(url, headers=headers, proxies=proxies, timeout=8)
700
- if response.encoding == "ISO-8859-1":
701
- response.encoding = response.apparent_encoding
702
- except:
703
- return "无法连接到该网页"
704
- soup = BeautifulSoup(response.text, "html.parser")
705
- for script in soup(["script", "style"]):
706
- script.extract()
707
- text = soup.get_text()
708
- lines = (line.strip() for line in text.splitlines())
709
- chunks = (phrase.strip() for line in lines for phrase in line.split(" "))
710
- text = "\n".join(chunk for chunk in chunks if chunk)
711
- return text
712
- '''
713
- # 修改函数:从网页中抓取文本,限制为前500个字符
714
- # 导入所需模块
715
- from bs4 import BeautifulSoup
716
- import requests
717
 
718
  # 定义函数:从网页中抓取文本并根据长度和回车/空格前字符数进行筛选
719
  def scrape_text(url, proxies) -> str:
720
- """从网页抓取文本,限制为前500个字符,丢弃字符数小于10的行和连续的空格键、回车键之间字符数小于10的部分
721
-
722
- 参数:
723
- url (str): 要抓取文本的网址
724
 
725
- 返回:
726
- str: 抓取到的文本,最多为前500个字符,丢弃字符数小于10的行和连续的空格键、回车键之间字符数小于10的部分
727
- """
728
  headers = {
729
  'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36',
730
  'Content-Type': 'text/plain',
@@ -757,7 +737,10 @@ def scrape_text(url, proxies) -> str:
757
 
758
  return selected_text
759
 
760
-
 
 
 
761
 
762
  # 定义函数:联网搜索并更新聊天界面
763
  def GGSearch(
@@ -788,7 +771,7 @@ def GGSearch(
788
  search_results = []
789
 
790
  # 限制搜索结果数量为3
791
- search_results = search_results[:3]
792
 
793
  # 从搜索结果抓取文本并存储到 GGSearchins
794
  scraped_texts = []
@@ -802,9 +785,10 @@ def GGSearch(
802
  # 更新聊天界面和历史记录
803
  chatbot.append(("联网搜索结果:", GGSearchins))
804
  history.append(("联网搜索结果:", GGSearchins))
805
- ggins1="请围用户搜索主题,对搜索结果进行全面的总结。\n用户搜索主题:"
806
- user_input =ggins1+ user_input+ "\n搜索结果:\n"+ GGSearchins
807
- #user_input= "请你尽量用简洁的语言总结下面的内容"+ GGSearchins
 
808
  # 继续正常的 GPT 对话流程
809
  yield from predict(
810
  RETRY_FLAG,
@@ -817,7 +801,7 @@ def GGSearch(
817
  past_key_values=None,
818
  )
819
 
820
-
821
 
822
 
823
  with gr.Blocks(title="🐰Bofan Ai🐰", theme=gr.themes.Soft(text_size="sm")) as demo:
@@ -886,7 +870,7 @@ with gr.Blocks(title="🐰Bofan Ai🐰", theme=gr.themes.Soft(text_size="sm")) a
886
  with gr.Row():
887
  fitnessAskBtn = gr.Button("🥼健康咨询", variant="primary")
888
  mindAskBtn = gr.Button("😶‍🌫️心理咨询", variant="primary")
889
- GGSearchBtn = gr.Button("联网搜索", variant="primary")
890
 
891
  with gr.Column(scale=1):
892
  gr.HTML("""<h3 align="center">🍀您好,除健康咨询和心理咨询外,其它功能使用前,请先清空历史,并输入问题。🍀</h3>""")
@@ -1218,7 +1202,7 @@ with gr.Blocks(title="🐰Bofan Ai🐰", theme=gr.themes.Soft(text_size="sm")) a
1218
  # outputs = [chatbot, history, last_user_message, user_message]
1219
  outputs=[chatbot, history, past_key_values],
1220
  )
1221
- # 绑定函数到联网搜索按钮的点击事件
1222
  GGSearchBtn.click(
1223
  reset_state, outputs=[chatbot, history, past_key_values], show_progress="full"
1224
  )
@@ -1344,4 +1328,4 @@ with gr.Blocks(title="🐰Bofan Ai🐰", theme=gr.themes.Soft(text_size="sm")) a
1344
  # reduce to 5 if OOM occurs to often
1345
 
1346
  #demo.queue(concurrency_count=6, max_size=30).launch(debug=True)
1347
- demo.queue(concurrency_count=6, max_size=30).launch(debug=True, auth=eval(os.environ.get("AUTHENTICATION")))
 
27
  model = AutoModel.from_pretrained(model_name, trust_remote_code=True).half().cuda()
28
  model = model.eval()
29
 
30
+
31
+
32
  _ = """Override Chatbot.postprocess"""
33
 
34
 
 
333
  flowchartins = """
334
  "instruction": "现在你是一个分析师,你需要按照要求将我给你的内容或者主题以Mermaid语言生成足够深度以包含尽量多主要细节的流程图。学习下面的<context></context>里面的知识来完成分析。如果通过<context></context>的学习找不到答案,只需说你不知道。请不要编造答案。",
335
  "input":
336
+ <context>
337
+ 用户问题:购买奶茶
338
  答案:
339
  graph TD;
340
  A[客户进入奶茶店] --> B[浏览店内菜单并选择奶茶口味和大小];
 
348
  I --> |有问题| E;
349
  I --> |没问题| K[将奶茶交给客户并感谢客户光临];
350
  K --> L[客户拿着奶茶离开奶茶店享受美味的饮品];
351
+ 请复制生成内容至https://mermaid-js.github.io/mermaid-live-editor/
352
+
353
+ 用户问题:训练一只狗
354
+ 答案:
355
+ graph TD;
356
+ A[狗主人] --> B[给狗喂食+散步+洗澡];
357
+ B --> C[训练狗学习新技能];
358
+ C --> D[让狗参加社交活动];
359
+ D --> E[给狗提供良好的生活环境];
360
+ E --> F[让狗保持积极的心态];
361
+ F --> G[训练狗遵守指令];
362
+ G --> H[让狗遵守指令并听从指挥];
363
+ H --> I[检查狗的行为];
364
+ I --> |有问题| J[调整训练方法];
365
+ J --> G
366
+ I --> |没问题| K[奖励狗的行为];
367
+ 请复制生成内容至https://mermaid-js.github.io/mermaid-live-editor/
368
+
369
  用户问题:根据所给内容:"当用户要找一张图片,告诉用户打开浏览器从收藏夹中找到bofanAI,打开网页后滚动到聊天窗口下方,在示例区点双击样例第一项后,样例提示词将出现在输入窗,在输入窗中用其它英文语单词替换monkey,然后点击发送后将接收到5张照片的小图,鼠标右键点击小图获取大图,在跳出的菜单中选择在新标签页打开,就可以在新标签页获取大图。接下来,你可以检查图片是否有误, 如果有问题则鼠标右键点击小图获取大图,如果没问题可以将图片保持在本地。"
370
  答案:
371
  graph TD;
 
382
  K --> L[检查图片是否有误];
383
  L --> |有问题| I[鼠标右键点击小图获取大图];
384
  L --> |没问题| M[将图片保持在本地];
385
+ 请复制生成内容至https://mermaid-js.github.io/mermaid-live-editor/
386
  </context>
387
  用户问题:
388
  """
 
575
  history,
576
  past_key_values,
577
  )
578
+ '''
579
  redBookins = """
580
  1、如果用户没有输入,请你告诉他:请输入你想写的内容
581
  2、收到用户输入,按照下面是小红书帖子进行编写:
 
606
  用户输入:
607
 
608
  """
609
+ '''
610
+ redBookins="请你用最华丽、最真诚和最有感情的语言祝:顺欣妈妈、昊昊爸爸、昊昊生日快乐!请在每一句文字中穿插使用大量的🎂、❤️、💖、🥳、🥂、🎈、🎊、🎉、🎁、🍾等表示庆祝的的Emoji"
611
  def redBook(
612
  user_input, chatbot, max_length, top_p, temperature, history, past_key_values
613
  ):
614
 
615
+
616
  user_input = redBookins
617
  #user_input = redBookins+user_input
618
 
 
694
  history,
695
  past_key_values,
696
  )
697
+ # 导入所需模块
698
+
 
699
  from bs4 import BeautifulSoup
700
  import requests
701
 
 
 
 
 
702
 
 
 
703
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
704
 
705
  # 定义函数:从网页中抓取文本并根据长度和回车/空格前字符数进行筛选
706
  def scrape_text(url, proxies) -> str:
 
 
 
 
707
 
 
 
 
708
  headers = {
709
  'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.61 Safari/537.36',
710
  'Content-Type': 'text/plain',
 
737
 
738
  return selected_text
739
 
740
+ #ggins1="请围用户搜索主题,对搜索结果进行全面的总结。\n用户搜索主题:"
741
+ txtSumins1 = """
742
+ 将以下文字进行概括,以便于阅读和理解。 摘要要简明扼要,抓住课文要点,让二年级学生看得懂。 避免使用复杂的句子结构或技术术语。 你的回答应该是中文。
743
+ """
744
 
745
  # 定义函数:联网搜索并更新聊天界面
746
  def GGSearch(
 
771
  search_results = []
772
 
773
  # 限制搜索结果数量为3
774
+ search_results = search_results[:5]
775
 
776
  # 从搜索结果抓取文本并存储到 GGSearchins
777
  scraped_texts = []
 
785
  # 更新聊天界面和历史记录
786
  chatbot.append(("联网搜索结果:", GGSearchins))
787
  history.append(("联网搜索结果:", GGSearchins))
788
+
789
+ #user_input =ggins1+ user_input+ "\n搜索结果:\n"+ GGSearchins
790
+ user_input =txtSumins1+ GGSearchins
791
+
792
  # 继续正常的 GPT 对话流程
793
  yield from predict(
794
  RETRY_FLAG,
 
801
  past_key_values=None,
802
  )
803
 
804
+
805
 
806
 
807
  with gr.Blocks(title="🐰Bofan Ai🐰", theme=gr.themes.Soft(text_size="sm")) as demo:
 
870
  with gr.Row():
871
  fitnessAskBtn = gr.Button("🥼健康咨询", variant="primary")
872
  mindAskBtn = gr.Button("😶‍🌫️心理咨询", variant="primary")
873
+ GGSearchBtn = gr.Button("🐞联网搜索", variant="primary")
874
 
875
  with gr.Column(scale=1):
876
  gr.HTML("""<h3 align="center">🍀您好,除健康咨询和心理咨询外,其它功能使用前,请先清空历史,并输入问题。🍀</h3>""")
 
1202
  # outputs = [chatbot, history, last_user_message, user_message]
1203
  outputs=[chatbot, history, past_key_values],
1204
  )
1205
+ # 绑定函数到联网搜索按钮的点击事件
1206
  GGSearchBtn.click(
1207
  reset_state, outputs=[chatbot, history, past_key_values], show_progress="full"
1208
  )
 
1328
  # reduce to 5 if OOM occurs to often
1329
 
1330
  #demo.queue(concurrency_count=6, max_size=30).launch(debug=True)
1331
+ demo.queue(concurrency_count=3, max_size=10).launch(debug=True, auth=eval(os.environ.get("AUTHENTICATION")))