Spaces:
Runtime error
Runtime error
Update app.py
Browse files
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 |
-
|
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="
|
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[:
|
792 |
|
793 |
# 从搜索结果抓取文本并存储到 GGSearchins
|
794 |
scraped_texts = []
|
@@ -802,9 +785,10 @@ def GGSearch(
|
|
802 |
# 更新聊天界面和历史记录
|
803 |
chatbot.append(("联网搜索结果:", GGSearchins))
|
804 |
history.append(("联网搜索结果:", GGSearchins))
|
805 |
-
|
806 |
-
user_input =ggins1+ user_input+ "\n搜索结果:\n"+ GGSearchins
|
807 |
-
|
|
|
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("
|
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=
|
|
|
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")))
|