Files
gpt_academic/test.py
2023-05-14 20:04:12 +08:00

116 lines
2.7 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#! .\venv\
# encoding: utf-8
# @Time : 2023/4/19
# @Author : Spike
# @Descr :
import gradio as gr
import func_box
class my_class():
def __init__(self):
self.numb = 0
def coun_up(self):
self.numb += 1
def set_obj(sts):
btn = sts['btn'].update(visible=False)
btn2 = sts['btn2'].update(visible=True)
sts['obj'] = my_class()
return sts, btn, btn2
def print_obj(sts):
print(sts)
print(sts['btn'], type(sts['btn']))
sts['obj'].coun_up()
print(sts['obj'].numb)
class ChatBotFrame:
def __init__(self):
self.cancel_handles = []
self.initial_prompt = "Serve me as a writing and programming assistant."
self.title_html = f"<h1 align=\"center\">ChatGPT For Tester"
self.description = """代码开源和更新[地址🚀](https://github.com/binary-husky/chatgpt_academic),感谢热情的[开发者们❤️](https://github.com/binary-husky/chatgpt_academic/graphs/contributors)"""
class ChatBot:
def __init__(self):
self.demo = gr.Blocks()
def draw_test(self):
with self.demo:
with gr.Tab('122121', id='add_') as self.tab1:
self.txt = gr.Textbox(label="Input", lines=2)
self.btn = gr.Button(value="Submit1")
self.pro_prompt_list = gr.Dataset(components=[gr.HTML(visible=False)], samples_per_page=10,label="Prompt usage frequency",
samples=[['None'],['None'],['None'],['None'],['None'],['None'],['None'],['None'],['None'],['None'],['None'],], type='index')
self.list_staus = gr.State(self.pro_prompt_list)
self.tab_state = gr.State(self.tab1)
self.btn.click(fn=self.on_button_click, inputs=[self.tab_state], outputs=[self.tab1])
self.demo.launch()
# Add a new input textbox when self.btn is clicked
def on_button_click(self, tab):
tab.children.append(gr.Button(value="Submit2"))
return tab
if __name__ == '__main__':
from flask import Flask, render_template
import gradio as gr
app = Flask(__name__)
# 第一个 Gradio 实例用于页面1
def greet(name):
return f"Hello, {name}!"
gr_interface1 = gr.Interface(fn=greet, inputs="text", outputs="text")
# 第二个 Gradio 实例用于页面2
def square(x):
return x * x
gr_interface2 = gr.Interface(fn=square, inputs="number", outputs="number")
@app.route('/')
def index():
return render_template('index.html')
@app.route('/page1')
def page1():
return gr_interface1.launch()
@app.route('/page2')
def page2():
return gr_interface2.launch()
if __name__ == '__main__':
app.run()