import gradio as gr from datasets import load_dataset import pandas as pd from huggingface_hub import InferenceClient client = InferenceClient("deepseek-ai/DeepSeek-R1-Distill-Qwen-32B") ds = pd.DataFrame(load_dataset("missvector/okkolo-kb")['train']).to_string() def respond(message, history): outputs = client.chat.completions.create( messages=[ {"role": "system", "content": f"""Стиль общения: - ответы должны быть короткие, - используй информацию из базы знаний, - будь вежливым и дружелюбным, - используй эмодзи. Если в вопросе пользователя есть слова "Окколо" или "арт-кластер", делись ссылкой на группу ВКонтакте: https://vk.com/okkolospb. Для ответов на вопросы используй следующую таблицу: {ds} """ }, {"role": "user", "content": f"Ответить на следующий вопрос пользователя: {message}", }], stream=False, max_tokens=1024, temperature=0.7, top_p=0.1 ).choices[0].get('message')['content'].split('\n')[-1] return outputs demo = gr.ChatInterface( fn=respond, examples=['Что такое Окколо?', 'Что такое инклюзия?', 'Где расположен арт-кластер?', 'Что такое арт-кластер?'], title='Окколо-бот', description='Виртуальный ассистент арт-кластера Окколо', ) if __name__ == "__main__": demo.launch(share=True)