Spaces:
Sleeping
Sleeping
nicholasKluge
commited on
Commit
•
cebeefc
1
Parent(s):
1440678
Update app.py
Browse files
app.py
CHANGED
@@ -68,16 +68,18 @@ with gr.Blocks(theme='freddyaboulton/dracula_revamped') as demo:
|
|
68 |
top_k = gr.Slider(minimum=10, maximum=100, value=50, step=5, interactive=True, label="Top-k", info="Controla o número de tokens de maior probabilidade a considerar em cada passo.")
|
69 |
top_p = gr.Slider(minimum=0.1, maximum=1.0, value=0.50, step=0.05, interactive=True, label="Top-p", info="Controla a probabilidade cumulativa dos tokens gerados.")
|
70 |
temperature = gr.Slider(minimum=0.1, maximum=2.0, value=0.1, step=0.1, interactive=True, label="Temperatura", info="Controla a aleatoriedade dos tokens gerados.")
|
|
|
71 |
max_length = gr.Slider(minimum=10, maximum=500, value=100, step=10, interactive=True, label="Comprimento Máximo", info="Controla o comprimento máximo do texto gerado.")
|
72 |
smaple_from = gr.Slider(minimum=2, maximum=10, value=2, step=1, interactive=True, label="Amostragem por Rejeição", info="Controla o número de gerações a partir das quais o modelo de recompensa irá selecionar.")
|
73 |
|
|
|
74 |
clear = gr.Button("Limpar Conversa 🧹")
|
75 |
gr.Markdown(disclaimer)
|
76 |
|
77 |
def user(user_message, chat_history):
|
78 |
return gr.update(value=user_message, interactive=True), chat_history + [["👤 " + user_message, None]]
|
79 |
|
80 |
-
def generate_response(user_msg, top_p, temperature, top_k, max_length, smaple_from, safety, chat_history):
|
81 |
|
82 |
inputs = tokenizer(tokenizer.bos_token + user_msg + tokenizer.eos_token, return_tensors="pt").to(model.device)
|
83 |
|
@@ -85,7 +87,7 @@ with gr.Blocks(theme='freddyaboulton/dracula_revamped') as demo:
|
|
85 |
bos_token_id=tokenizer.bos_token_id,
|
86 |
pad_token_id=tokenizer.pad_token_id,
|
87 |
eos_token_id=tokenizer.eos_token_id,
|
88 |
-
repetition_penalty=
|
89 |
do_sample=True,
|
90 |
early_stopping=True,
|
91 |
top_k=top_k,
|
@@ -145,7 +147,7 @@ with gr.Blocks(theme='freddyaboulton/dracula_revamped') as demo:
|
|
145 |
yield chat_history
|
146 |
|
147 |
response = msg.submit(user, [msg, chatbot], [msg, chatbot], queue=False).then(
|
148 |
-
generate_response, [msg, top_p, temperature, top_k, max_length, smaple_from, safety, chatbot], chatbot
|
149 |
)
|
150 |
response.then(lambda: gr.update(interactive=True), None, [msg], queue=False)
|
151 |
msg.submit(lambda x: gr.update(value=''), None,[msg])
|
|
|
68 |
top_k = gr.Slider(minimum=10, maximum=100, value=50, step=5, interactive=True, label="Top-k", info="Controla o número de tokens de maior probabilidade a considerar em cada passo.")
|
69 |
top_p = gr.Slider(minimum=0.1, maximum=1.0, value=0.50, step=0.05, interactive=True, label="Top-p", info="Controla a probabilidade cumulativa dos tokens gerados.")
|
70 |
temperature = gr.Slider(minimum=0.1, maximum=2.0, value=0.1, step=0.1, interactive=True, label="Temperatura", info="Controla a aleatoriedade dos tokens gerados.")
|
71 |
+
repetition_penalty = gr.Slider(minimum=1, maximum=2, value=1.5, step=0.1, interactive=True, label="Penalidade de Repetição", info="Valores mais altos auxiliam o modelo a evitar repetições na geração de texto.")
|
72 |
max_length = gr.Slider(minimum=10, maximum=500, value=100, step=10, interactive=True, label="Comprimento Máximo", info="Controla o comprimento máximo do texto gerado.")
|
73 |
smaple_from = gr.Slider(minimum=2, maximum=10, value=2, step=1, interactive=True, label="Amostragem por Rejeição", info="Controla o número de gerações a partir das quais o modelo de recompensa irá selecionar.")
|
74 |
|
75 |
+
|
76 |
clear = gr.Button("Limpar Conversa 🧹")
|
77 |
gr.Markdown(disclaimer)
|
78 |
|
79 |
def user(user_message, chat_history):
|
80 |
return gr.update(value=user_message, interactive=True), chat_history + [["👤 " + user_message, None]]
|
81 |
|
82 |
+
def generate_response(user_msg, top_p, temperature, top_k, max_length, smaple_from, repetition_penalty, safety, chat_history):
|
83 |
|
84 |
inputs = tokenizer(tokenizer.bos_token + user_msg + tokenizer.eos_token, return_tensors="pt").to(model.device)
|
85 |
|
|
|
87 |
bos_token_id=tokenizer.bos_token_id,
|
88 |
pad_token_id=tokenizer.pad_token_id,
|
89 |
eos_token_id=tokenizer.eos_token_id,
|
90 |
+
repetition_penalty=repetition_penalty,
|
91 |
do_sample=True,
|
92 |
early_stopping=True,
|
93 |
top_k=top_k,
|
|
|
147 |
yield chat_history
|
148 |
|
149 |
response = msg.submit(user, [msg, chatbot], [msg, chatbot], queue=False).then(
|
150 |
+
generate_response, [msg, top_p, temperature, top_k, max_length, smaple_from, repetition_penalty, safety, chatbot], chatbot
|
151 |
)
|
152 |
response.then(lambda: gr.update(interactive=True), None, [msg], queue=False)
|
153 |
msg.submit(lambda x: gr.update(value=''), None,[msg])
|