Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -56,4 +56,36 @@ def get_model_outputs(question_or_prompt, context, max_length=100):
|
|
56 |
elif qa_model and not context:
|
57 |
output_qa = "问答模型需要提供上下文才能回答问题。"
|
58 |
|
59 |
-
return output_text_gen, output_qa
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
elif qa_model and not context:
|
57 |
output_qa = "问答模型需要提供上下文才能回答问题。"
|
58 |
|
59 |
+
return output_text_gen, output_qa
|
60 |
+
|
61 |
+
|
62 |
+
# Arena 选项卡内容创建函数 (40分)
|
63 |
+
def create_arena_tab():
|
64 |
+
with gr.Blocks() as arena_block:
|
65 |
+
gr.Markdown("## ⚔️ Arena: 模型实时对比")
|
66 |
+
gr.Markdown("在这里,您可以输入一个问题或提示词,并提供一段上下文。文本生成模型将根据问题和上下文生成文本,问答模型将从上下文中抽取答案。")
|
67 |
+
|
68 |
+
with gr.Row():
|
69 |
+
# 统一输入框 1: 问题/提示词
|
70 |
+
question_input = gr.Textbox(label="问题/提示词:", placeholder="请输入您的问题或想让模型生成的提示词...", lines=3)
|
71 |
+
# 统一输入框 2: 上下文 (主要用于问答模型)
|
72 |
+
context_input = gr.Textbox(label="上下文 (Context):", placeholder="请输入问答模型需要从中抽取答案的上下文...", lines=5)
|
73 |
+
|
74 |
+
with gr.Row():
|
75 |
+
# 增加生成长度控制(主要针对文本生成模型)
|
76 |
+
gen_length_slider = gr.Slider(minimum=20, maximum=300, value=100, step=10, label="文本生成最大长度")
|
77 |
+
generate_btn = gr.Button("🚀 生成并对比")
|
78 |
+
|
79 |
+
with gr.Row():
|
80 |
+
# 模型 1 输出 (文本生成)
|
81 |
+
output_text_gen = gr.Textbox(label=f"模型 1 (文本生成: {model1_name}) 输出:", interactive=False, lines=10)
|
82 |
+
# 模型 2 输出 (问答)
|
83 |
+
output_qa = gr.Textbox(label=f"模型 2 (问答: {model2_name}) 输出:", interactive=False, lines=10)
|
84 |
+
|
85 |
+
# 绑定按钮点击事件到推理函数
|
86 |
+
generate_btn.click(
|
87 |
+
fn=get_model_outputs,
|
88 |
+
inputs=[question_input, context_input, gen_length_slider],
|
89 |
+
outputs=[output_text_gen, output_qa]
|
90 |
+
)
|
91 |
+
return arena_block
|