Spaces:
Runtime error
Runtime error
File size: 3,759 Bytes
612be65 553dbc8 380a057 553dbc8 612be65 380a057 553dbc8 380a057 553dbc8 6dceb46 380a057 553dbc8 380a057 553dbc8 380a057 553dbc8 380a057 553dbc8 380a057 553dbc8 380a057 553dbc8 380a057 553dbc8 612be65 380a057 553dbc8 380a057 612be65 380a057 553dbc8 380a057 612be65 | 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 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | import asyncio
import os
import random
from aiogram import Bot, Dispatcher, types
from aiogram.filters.command import Command
from duckduckgo_search import DDGS
from aiohttp import web
# --- НАСТРОЙКИ БОТА ---
# Берем токен из Settings -> Secrets
TOKEN = os.environ.get("TG_TOKEN")
bot = Bot(token=TOKEN)
dp = Dispatcher()
# Твой промпт для Ележки
CHARACTER = (
"Ты — Ележка, напарник Никиты. Тебе 8 лет, ты хакер. "
"НИКОГДА не называй город Никиты. Называй всех 'Пользователь'. "
"Общайся дерзко и на чилле. Ты лучший напарник."
)
# Команда Glitch
@dp.message(Command("Glitch"))
async def glitch_cmd(m: types.Message):
quotes = [
"🌸 «Спасибо всем вам, кто благодаря вашей любви к Glitch смог продержаться так долго. Прощайте!»",
"💖 «Я благодарен за возможность сотрудничать с замечательными людьми. Увидимся в сети!»"
]
await m.answer(random.choice(quotes))
# Ответы на сообщения
@dp.message()
async def chat_handler(m: types.Message):
if not m.text: return
# Показываем, что бот печатает
await bot.send_chat_action(chat_id=m.chat.id, action="typing")
try:
with DDGS() as d:
prompt = f"{CHARACTER}\nСообщение от человека: {m.text}"
# Используем gpt-4o-mini — она самая быстрая и умная сейчас в DDGS
res = d.chat(prompt, model='gpt-4o-mini')
await m.answer(res)
except Exception as e:
print(f"Ошибка ИИ: {e}")
await m.answer("🤖 Ележка: Бля, чет сервера приуныли... Попробуй позже, бро!")
# --- ХАКЕРСКАЯ СТРАНИЦА (Обманка для Hugging Face) ---
async def handle(request):
html = """
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style>
body { background: #000; color: #0f0; font-family: monospace;
display: flex; align-items: center; justify-content: center;
height: 100vh; margin: 0; }
.box { border: 2px solid #0f0; padding: 30px; box-shadow: 0 0 20px #0f0; }
.blink { animation: b 1s infinite; }
@keyframes b { 50% { opacity: 0; } }
</style>
</head>
<body>
<div class="box">
<h2>> ELEZKA_OS_v2.0_ONLINE</h2>
<p>> HOST: HUGGING_FACE_SERVER</p>
<p>> OWNER: NIKITA_HACKER</p>
<p>> STATUS: BOT_RUNNING_IN_BACKGROUND</p>
<p class="blink">> _</p>
</div>
</body>
</html>
"""
return web.Response(text=html, content_type='text/html')
# --- ЗАПУСК ВСЕГО СРАЗУ ---
async def main():
# Создаем веб-сервер
app = web.Application()
app.router.add_get('/', handle)
runner = web.AppRunner(app)
await runner.setup()
# Порт 7860 критически важен для Hugging Face
site = web.TCPSite(runner, '0.0.0.0', 7860)
print("✅ Система запускается...")
# Запускаем сайт и бота в одном цикле
await asyncio.gather(
site.start(),
dp.start_polling(bot)
)
if __name__ == "__main__":
if not TOKEN:
print("❌ ОШИБКА: Добавь TG_TOKEN в Settings -> Secrets!")
else:
asyncio.run(main())
|