import os
from prompts import SYSTEM_PROMPTS, IMAGE_PROMPT, ADD_TO_PROMPT, NEW_MD, OLD_MD
from dotenv import load_dotenv

load_dotenv()

# айди аккаунта админа для команд /reset /broadcast /clean и так далее
ADMIN_ID = 8935141038

# поставь "" пустой da если хочешь отключить поддержку голосовых
VOSK_API = "http://127.0.0.1:8080/stt"

# сколько сообщений хранить в контексте
MAX_CONTEXT = 7
# максимальное количество символов в промпте +файлы
MAX_PROMPT = 16000
# макс токены генерация
MAX_TOKENS = 4000
# макс символы (только в режиме стрима работает мне лень фиксить)
MAX_SYMBOLS = 13400
# макс количество кастомных промптов
MAX_PROMPTS = 8

# каждые n (400) символов обновлять стриминг поток
STREAMING_SPLIT_SYMBOLS = 400

# не важно
BEN_IDS = [-1002147940521, -1001834656942, -1003142512395]
ABEN_IDS = [-1002147940521, -1001834656942, -1003142512395]
REPORN_IDS = [-1002147940521, -1002775610996, -1001834656942, -1003142512395]

# юз бота без @
BOT_USERNAME = "UzbekGPTTestBot"
# на что бот откликается
BOT_CALLS = ["узбек", "uzbek", f"@{BOT_USERNAME}"]

# дефолт настройки для новых юзеров
DEFAULT_MODEL = "ollama*gemma4:31b-cloud"
DEFAULT_STREAM = "none"
DEFAULT_CALL = "da"
DEFAULT_PROMPT = "standart"
DEFAULT_NOTIFY = "da"
DEFAULT_MARKDOWN = "old"

# модель которая умеет принимать картинки очень важно
IMAGE_MODEL = "ollama*gemma3:27b-cloud"

# я забыл если честно
SHOW_ACC_MSG = True

# можно отключить некоторые команды
SETTINGS_COMMAND = True
CLEAR_COMMAND = True
PROMPT_COMMAND = True
CONFIG_COMMAND = True

# хочешь ли ты чтобы узбекгпт отвечал ещё и опросами
POLLS = True

# /settings -> о боте
ABOUT_BOT = (
    "✅ *об узбекгпт* ✅\n"
    "- создал @zsh69 (хукер667)\n"
    "- репозиторий бота: https://git.hkr.at.by/cgit.cgi/uzbekgpt\n"
    "- `git clone https://g.hkr.at.by/uzbekgpt`\n"
    "- подпешис: t.me/hukerass"
)

# /settings -> донат, на самом деле можно вставить любой текст а не ссылку
DONATE_LINK = "https://t.me/send?start=IVRLB58MrhCp"

# провайдеры ваши хз
PROVIDERS = {
    "ollama": {
        "name": "оллама",
        "module": "openai",
        "url": "http://127.0.0.1:11434/v1",
        "key": "da",
    },
    "krutoiapi": {
        "name": "ваше крутое api",
        "module": "openai",
        "url": "http://localhost:8080/v1/",
        "key": "qwera",
    },
    # "hzai": {
    #     "name": "хуйзнает ai",
    #     "module": "openai",
    #     "url": os.getenv("HZAI_URL"),
    #     "key": os.getenv("HZAI_KEY"),
    # },
}

# какие модели есть и настройки (все настройки ищи в коде)
# - например тут vision ты указываешь умеет ли эта модель смотреть фото.
#   если нет, то модель в IMAGE_MODEL будет генерить анализ по фото для
#   твоей модели.
#   если да, то модель будет напрямую смотреть фото в messages
MODELS = {
    "ollama": {
        "gemma3:27b-cloud": {"vision": False},
        "gemma4:31b-cloud": {"vision": True},
    },
    "krutoiapi": {
        "claude-mythos-5": {"vision": False},
    },
}

# АХУЕТЬ ТОКЕН!!
API_TOKEN = os.getenv("API_TOKEN")
