Spaces:
Runtime error
Runtime error
File size: 1,676 Bytes
e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b d950da6 e474e6b |
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 |
import gradio as gr
from transformers import pipeline
# Загружаем модель — легкая для ZeroGPU (CPU-friendly)
qa_pipeline = pipeline("text-generation", model="tiiuae/falcon-rw-1b")
# Инструкция боту
system_prompt = (
"Ты — дружелюбный бот, который отлично знает Университет Иннополис. "
"Отвечай чётко и по делу на вопросы про университет, город Иннополис, обучение и студенческую жизнь."
)
# Ответная функция
def respond(message, history):
prompt = system_prompt + "\n"
for user_msg, bot_msg in history:
prompt += f"Пользователь: {user_msg}\nБот: {bot_msg}\n"
prompt += f"Пользователь: {message}\nБот:"
result = qa_pipeline(
prompt,
max_new_tokens=200,
do_sample=True,
temperature=0.7,
top_k=50,
top_p=0.95,
pad_token_id=50256,
)[0]["generated_text"]
# Отделяем только ответ
response = result.split("Бот:")[-1].strip().split("Пользователь:")[0].strip()
history.append((message, response))
return history
# Интерфейс Gradio
demo = gr.ChatInterface(
fn=respond,
title="Innopolis Bot",
theme="soft",
examples=[
"Когда основан Университет Иннополис?",
"Какие есть направления в бакалавриате?",
"Как подать документы?",
],
)
if __name__ == "__main__":
demo.launch()
|