Spaces:
Sleeping
Sleeping
| ### 文言文翻译 | |
| import simplestart as ss | |
| import requests | |
| import json | |
| ##import mymodule as mm | |
| import psutil | |
| #函数部分 | |
| def mychange(event): | |
| ss.session.result = "" | |
| if event.index == 0: | |
| ss.session.prompt1 = "请将文言文拷贝到这里" | |
| data = mytext.data | |
| data["value"] = "子曰:温故而知新" | |
| mytext.data = data | |
| #mytext.value = "子曰:温故而知新" ### todo 随机 | |
| ss.session.method = 0 | |
| else: | |
| ss.session.prompt1 = "请将现代文拷贝到这里" | |
| data = mytext.data | |
| data["value"] = "谦虚使人进步,骄傲使人失败" | |
| mytext.data = data | |
| #mytext.value = "谦虚使人进步,骄傲使人失败" ### todo 随机 | |
| ss.session.method = 1 | |
| def predict(): | |
| ss.session.result = "稍安勿躁,服务器正在运算中..." | |
| ss.message(mytext.value) | |
| method = str(ss.session.method) | |
| input = mytext.value[:100].replace("\n", "") | |
| #本地模式 | |
| ##response = mm.predict("'" + input + "'", ss.session.method) | |
| ##res = response.replace("<|endoftext|>", "") | |
| #服务器模式 | |
| response = inference("'" + input + "'", method) | |
| res = response["processed_text"].replace("<|endoftext|>", "") | |
| myresult.value = res | |
| def inference(input_text, method): | |
| #url = "http://0.0.0.0:8106/process" # 假设POST请求的路径是 /process | |
| url = "https://test2023h5-fastapi-wyw.hf.space/process" | |
| data = {"text": input_text, "method": method} # 将 input_text 和 method 作为 JSON 数据发送 | |
| res = requests.post(url, json=data) # 发送 POST 请求,传递 JSON 数据 | |
| return res.json() # 假设服务器返回 JSON 响应 | |
| def demo1(state, value): | |
| ss.session["result"] = "" | |
| ss.session["comment"] = "" | |
| if ss.session.method == 0: | |
| mytext.value = "己所不欲勿施于人" | |
| else: | |
| mytext.value = "谦虚使人进步" | |
| def mem_info(): | |
| # 获取内存信息 | |
| mem_info = psutil.virtual_memory() | |
| # 剩余内存,单位为字节 | |
| remaining_memory = mem_info.available | |
| # 将字节转换为更易读的单位(例如 GB) | |
| remaining_memory_gb = remaining_memory / (1024 ** 3) | |
| return remaining_memory_gb | |
| #会话变量 | |
| ss.session.method = 0 | |
| ss.session.prompt1 = "请将文言文拷贝到这里" | |
| ss.session.text = "子曰:温故而知新" | |
| ### UI部分 | |
| ss.write("### 😾 古文-现代文翻译演示") | |
| myradio = ss.radio(["古文-现代文", "现代文-古文"], index=0, onchange=mychange) | |
| ss.space() | |
| mytext = ss.textarea("子曰:温故而知新", label="@prompt1") | |
| myresult = ss.textarea("@result", label="翻译结果 (CPU服务器,10秒内出结果,稍安勿躁)") | |
| ss.button("开始翻译", onclick = predict) | |
| ss.space() | |
| ss.write("---") | |
| ###剩余内存测试 | |
| remaining_memory_gb = mem_info() | |
| ss.write(f"剩余内存: {remaining_memory_gb:.2f} GB") | |