File size: 3,060 Bytes
fc98ba7 3254981 fc98ba7 3254981 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 fc98ba7 9992e59 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
# This file is .....
# Author: Hanbin Wang
# Date: 2023/4/18
import transformers
import streamlit as st
from PIL import Image
from transformers import RobertaTokenizer, T5ForConditionalGeneration
from transformers import pipeline
# @st.cache_resource
# def load_model(model_name):
# # load model
# model = T5ForConditionalGeneration.from_pretrained("E:\DenseRetrievalGroup\卢帅学长ckpt\py150_model\checkpoint")
# # load tokenizer
# tokenizer = RobertaTokenizer.from_pretrained("E:\DenseRetrievalGroup\卢帅学长ckpt\py150_model\checkpoint")
# return model,tokenizer
def main():
# `st.set_page_config` is used to display the default layout width, the title of the app, and the emoticon in the browser tab.
st.set_page_config(
layout="centered", page_title="MaMaL-Com Demo(代码补全)", page_icon="❄️"
)
c1, c2 = st.columns([0.32, 2])
# The snowflake logo will be displayed in the first column, on the left.
with c1:
st.image(
"images/panda.png",
width=100,
)
# The heading will be on the right.
with c2:
st.caption("")
st.title("MaMaL-Gen(代码生成)")
############ SIDEBAR CONTENT ############
st.sidebar.image("images/panda.png",width=270)
st.sidebar.markdown("---")
st.sidebar.write(
"""
# 使用方法:
在【输入】文本框输入未完成的代码,点击【补全】按钮,即会显示补全的代码。
"""
)
# For elements to be displayed in the sidebar, we need to add the sidebar element in the widget.
# We create a text input field for users to enter their API key.
# API_KEY = st.sidebar.text_input(
# "Enter your HuggingFace API key",
# help="Once you created you HuggingFace account, you can get your free API token in your settings page: https://huggingface.co/settings/tokens",
# type="password",
# )
#
# # Adding the HuggingFace API inference URL.
# API_URL = "https://api-inference.huggingface.co/models/valhalla/distilbart-mnli-12-3"
#
# # Now, let's create a Python dictionary to store the API headers.
# headers = {"Authorization": f"Bearer {API_KEY}"}
st.sidebar.markdown("---")
# Let's add some info about the app to the sidebar.
st.sidebar.write(
"""
App 由 东北大学NLP课小组成员创建, 使用 [Streamlit](https://streamlit.io/)🎈 和 [HuggingFace](https://huggingface.co/inference-api)'s [MaMaL-Gen](https://huggingface.co/hanbin/MaMaL-Gen) 模型.
"""
)
generator = pipeline('text-generation', model="hanbin/MaMaL-Com")
# model, tokenizer = load_model("hanbin/MaMaL-Gen")
st.write("### 输入:")
input = st.text_area("",height=200)
output = generator(input)
# code = '''def hello():
# print("Hello, Streamlit!")'''
if st.button('补全'):
st.write("### 输出:")
st.code(output, language='python')
else:
st.write('')
if __name__ == '__main__':
main() |