|
|
import gradio as gr |
|
|
from transformers import pipeline |
|
|
|
|
|
|
|
|
generator = pipeline("text-generation", model="sberbank-ai/rugpt3small_based_on_gpt2") |
|
|
|
|
|
def chat(message, history): |
|
|
|
|
|
prompt = f"Ты полезный ассистент. Отвечай кратко и точно. Вопрос: {message}\nОтвет:" |
|
|
response = generator(prompt, max_length=100, num_return_sequences=1, temperature=0.8)[0]['generated_text'] |
|
|
|
|
|
ai_reply = response.split("Ответ:")[-1].strip() |
|
|
history.append((message, ai_reply)) |
|
|
return history, "" |
|
|
|
|
|
|
|
|
with gr.Blocks(title="Русский Чат-Бот") as demo: |
|
|
gr.Markdown("# Бесплатный ИИ-Чат на русском\nСпрашивай что угодно!") |
|
|
chatbot = gr.Chatbot(height=400) |
|
|
msg = gr.Textbox(placeholder="Напиши сообщение на русском...") |
|
|
clear = gr.Button("Очистить") |
|
|
msg.submit(chat, [msg, chatbot], [chatbot, msg]) |
|
|
clear.click(lambda: None, None, chatbot, queue=False) |
|
|
|
|
|
if __name__ == "__main__": |
|
|
demo.launch() |