diff --git a/simpleGradio.py b/simpleGradio.py index 9884610..44dd41e 100644 --- a/simpleGradio.py +++ b/simpleGradio.py @@ -9,19 +9,25 @@ import os dashscope.api_key = os.getenv("DASHSCOPE_API_KEY") # Vincent's API key - -def response(prompt, instruction=None): +# todo: add question variable +def response(prompt, temp, question=None): + # if instruction is not None: # 如果提供了指令,则添加到messages中 + # messages.insert(0, {'role': 'system', 'content': instruction}) + if question is not None: # 如果提供了问题,则添加到messages中 + # if no {question}, raise error + if '{question}' not in prompt: + raise ValueError('Please provide a question variable') + prompt = prompt.replace('{question}', question) + else: + pass messages = [{'role': 'user', 'content': prompt}] - if instruction is not None: # 如果提供了指令,则添加到messages中 - messages.insert(0, {'role': 'system', 'content': instruction}) - response = Generation.call(model='qwen-plus', messages=messages, seed=1234, result_format='message', stream=False, incremental_output=False, - temperature=1.8, + temperature=temp, top_p=0.9, top_k=999 ) @@ -37,14 +43,15 @@ def response(prompt, instruction=None): with gr.Blocks() as demo: - input_text = gr.Textbox(label="输入文本") + input_text = gr.Textbox(label="prompt") + question_text = gr.Textbox(label="question") output_text = gr.Textbox(label="输出文本") submit_button = gr.Button("submit") # 使用 gr.ClearButton 来清除指定的输出组件 clear_button = gr.ClearButton(components=[output_text], value="Clear processed data") - + temp = gr.Slider(label="Temperature", minimum=0.1, maximum=2.0, step=0.05, value=1.8) # 当输入文本发生变化时,调用 response 函数并将结果显示在输出文本框中 - submit_button.click(fn=response, inputs=input_text, outputs=output_text) + submit_button.click(fn=response, inputs=[input_text, temp, question_text], outputs=output_text) demo.launch()