Update pages/gpt.py
Browse files- pages/gpt.py +11 -8
pages/gpt.py
CHANGED
|
@@ -5,7 +5,7 @@ import textwrap
|
|
| 5 |
import plotly.express as px
|
| 6 |
|
| 7 |
|
| 8 |
-
|
| 9 |
|
| 10 |
tokenizer = GPT2Tokenizer.from_pretrained('sberbank-ai/rugpt3small_based_on_gpt2')
|
| 11 |
model = GPT2LMHeadModel.from_pretrained(
|
|
@@ -17,8 +17,6 @@ model = GPT2LMHeadModel.from_pretrained(
|
|
| 17 |
model.load_state_dict(torch.load('models/modelgpt.pt', map_location=torch.device('cpu')))
|
| 18 |
|
| 19 |
|
| 20 |
-
|
| 21 |
-
|
| 22 |
length = st.sidebar.slider('Длина генерируемой последовательности:', 8, 256, 15)
|
| 23 |
num_samples = st.sidebar.slider('Число генераций:', 1, 10, 1)
|
| 24 |
temperature = st.sidebar.slider('Температура:', 1.0, 10.0, 2.0)
|
|
@@ -26,8 +24,11 @@ top_k = st.sidebar.slider('Количество наиболее вероятн
|
|
| 26 |
top_p = st.sidebar.slider('Минимальная суммарная вероятность топовых слов:', 0.4, 1.0, 0.9)
|
| 27 |
|
| 28 |
|
| 29 |
-
|
| 30 |
-
|
|
|
|
|
|
|
|
|
|
| 31 |
|
| 32 |
with torch.inference_mode():
|
| 33 |
prompt = tokenizer.encode(prompt, return_tensors='pt')
|
|
@@ -44,7 +45,9 @@ if st.button('Сгенерировать текст'):
|
|
| 44 |
).cpu().numpy()
|
| 45 |
st.write('**_Результат_** 👇')
|
| 46 |
for i, out_ in enumerate(out):
|
| 47 |
-
|
| 48 |
-
with st.expander(f'Текст {i+1}:'):
|
| 49 |
st.write(textwrap.fill(tokenizer.decode(out_), 100))
|
| 50 |
-
st.image("pict/wow.png")
|
|
|
|
|
|
|
|
|
| 5 |
import plotly.express as px
|
| 6 |
|
| 7 |
|
| 8 |
+
|
| 9 |
|
| 10 |
tokenizer = GPT2Tokenizer.from_pretrained('sberbank-ai/rugpt3small_based_on_gpt2')
|
| 11 |
model = GPT2LMHeadModel.from_pretrained(
|
|
|
|
| 17 |
model.load_state_dict(torch.load('models/modelgpt.pt', map_location=torch.device('cpu')))
|
| 18 |
|
| 19 |
|
|
|
|
|
|
|
| 20 |
length = st.sidebar.slider('Длина генерируемой последовательности:', 8, 256, 15)
|
| 21 |
num_samples = st.sidebar.slider('Число генераций:', 1, 10, 1)
|
| 22 |
temperature = st.sidebar.slider('Температура:', 1.0, 10.0, 2.0)
|
|
|
|
| 24 |
top_p = st.sidebar.slider('Минимальная суммарная вероятность топовых слов:', 0.4, 1.0, 0.9)
|
| 25 |
|
| 26 |
|
| 27 |
+
code = '''st.markdown('## Генерация текста GPT-моделью')
|
| 28 |
+
prompt = st.text_input('Введите текст 👇:')
|
| 29 |
+
if st.button('Сгенерировать текст'):'''
|
| 30 |
+
st.code(code, language='python')
|
| 31 |
+
|
| 32 |
|
| 33 |
with torch.inference_mode():
|
| 34 |
prompt = tokenizer.encode(prompt, return_tensors='pt')
|
|
|
|
| 45 |
).cpu().numpy()
|
| 46 |
st.write('**_Результат_** 👇')
|
| 47 |
for i, out_ in enumerate(out):
|
| 48 |
+
|
| 49 |
+
code1 = '''with st.expander(f'Текст {i+1}:'):
|
| 50 |
st.write(textwrap.fill(tokenizer.decode(out_), 100))
|
| 51 |
+
st.image("pict/wow.png")'''
|
| 52 |
+
st.code(code1, language='python')
|
| 53 |
+
|