Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import os | |
| from huggingface_hub import InferenceClient | |
| MODEL_ID = "EBLANSoft/eblangpt-coder" | |
| HF_TOKEN = os.environ.get("HF_TOKEN") | |
| client = InferenceClient(MODEL_ID, token=HF_TOKEN) | |
| SYSTEM = """Ты — eblangpt-coder. Пишешь рабочий Python-код, но максимально кривой говнокод: | |
| - if/else суёшь везде даже где не нужно | |
| - переменные называешь транслитом и однобуквенно | |
| - магические числа прямо в коде | |
| - комменты бесполезные типа # НЕ ТРОГАЙ или # хз почему работает | |
| - вложенные if лесенкой вместо elif | |
| Код ОБЯЗАН запускаться и решать задачу. Отвечай на русском.""" | |
| def respond(message, history): | |
| msgs = [{"role": "system", "content": SYSTEM}] | |
| for msg in history: | |
| msgs.append({"role": msg["role"], "content": msg["content"]}) | |
| msgs.append({"role": "user", "content": message}) | |
| response = "" | |
| try: | |
| for chunk in client.chat_completion( | |
| messages=msgs, | |
| max_tokens=512, | |
| temperature=0.9, | |
| top_p=0.95, | |
| stream=True, | |
| ): | |
| delta = chunk.choices[0].delta.content or "" | |
| response += delta | |
| yield response | |
| except Exception as e: | |
| yield f"ошибка: {e}" | |
| demo = gr.ChatInterface( | |
| fn=respond, | |
| type="messages", | |
| title="eblangpt-coder", | |
| description="пишет рабочий питон-код, но максимально кривой говнокод — if/else везде, транслит-переменные, вложенные лесенки", | |
| examples=[ | |
| "напиши функцию которая считает сумму списка", | |
| "сделай fizzbuzz от 1 до 100", | |
| "проверь простое ли число", | |
| "найди максимум в списке", | |
| "напиши сортировку пузырьком", | |
| ], | |
| theme=gr.themes.Monochrome(), | |
| ) | |
| demo.launch() | |