data-str / config.py
CORVO-AI's picture
Upload 15 files
d2a178c verified
"""
Global configuration and constants.
All settings in one place.
"""
import os
import secrets
# ─── Flask ───
SECRET_KEY = os.environ.get("SECRET_KEY", secrets.token_hex(16))
DEBUG = os.environ.get("DEBUG", "true").lower() == "true"
HOST = os.environ.get("HOST", "0.0.0.0")
PORT = int(os.environ.get("PORT", 5000))
# ─── Database files ───
USERS_DB_FILE = "users.json"
TELEGRAM_DB_FILE = "users_db.json"
CARDS_DB_FILE = "cards.json"
CHAT_HISTORY_DB_FILE = "chat_history_db.json"
# ─── AI endpoints ───
GPT_URL = "https://corvo-ai-gpt-5-4.hf.space/chat"
TTS_URL = "https://corvo-ai-tts.hf.space"
TRANSCRIPT_URL = "https://corvo-ai-transcript.hf.space"
# ─── Cloudinary ───
CLOUDINARY_URL = "https://api.cloudinary.com/v1_1/dwsoob1wh/image/upload"
CLOUDINARY_PRESET = "Cloud-storage"
# ─── Icons8 ───
ICONS8_SEARCH_URL = (
"https://search-app.icons8.com/api/iconsets/v7/search"
"?isAnimated=false&language=en&analytics=true"
"&spellcheck=false&saveAnalytics=true"
"&amount=10&isOuch=true"
"&replaceNameWithSynonyms=true"
"&offset=0&term={term}"
)
ICONS8_IMAGE_URL = "https://img.icons8.com/?size=100&id={icon_id}&format=png"
# ─── Audio ───
AUDIO_OUTPUT_DIR = "static/audio"
MAX_AUDIO_FILES = 200
# ─── Chat history ───
SUMMARY_TRIGGER_COUNT = 10
MAX_CHAT_HISTORY = 20
# ─── Directories to create on startup ───
REQUIRED_DIRS = [
"static/audio",
"templates",
"FINAL",
]
# ─── Mistral cookie (for streaming) ───
MISTRAL_COOKIE = os.environ.get("MISTRAL_COOKIE", (
'''__cf_bm=JrqUGrlLa1VNznB_gcRKdDY.AyPLIvyRVUuKMV0avmc-1771531995-1.0.1.1-gJPuKUhLOcJ6hccPtwfCq6jJOAkQ8xABZJi_RwovhSQrsUTbUv1MCh1IPLvZ3ldPzqHLrPmcWUwLE_q_iVrP.W9PCYLnRq4HMMbVeyuDwlE; _cfuvid=oL4ochUsTJrLY6FlPpKTfocKdvOyum8GRuUBbqS9l8U-1771531995497-0.0.1.1-604800000; csrf_token_1d61ec8f0158ec4868343239ec73dbe1bfebad9908ad860e62f470c767573d0d=6ybeYU0W24tff63a5O/h0wbG6pYuc4w4iKv6SOKnYFc=; ory_session_coolcurranf83m3srkfl=MTc3MTUzMjA2OXxZU1dnRmd5SzNZM3o5VERSMGN5OFBWaHZ4bmdzd2RLOXNTUHNqMVVQbUdqUVFyZXpFN1ZCa0stYmJOR1lmbFNHVWphdWE4UWZ4S2FESjVROVJVYkw3a0MxN01TVVRZSUFGcWdZRHBCSjA2WEFJcFowcERmTWdrTmxuZ01zLWtubWxtd3lELVBBSVhOSzRkS1RRTWlxUHo1WmJwRWZzNlBXOFZWbUQyY2xkRVlOdXczb19kMlA4enc2ZGdVbkhaOUtXNDhEcEtxTVVBUTFYVk5YUXUtbDhjNVBOaG04WDRncmVNeXV4WWZXNC05TTlZRml3Y2hmR1F3QUR4Wk1aS0wwVUFfWGFyb2YxUlUtZXJkMGVhc3B8ITaivuTKOyk2pkoOhT6SPvP7zk-_NWF074pMm1HUl-k=; intercom-device-id-xel0jpx9=16cbae05-b305-4216-9967-e1622600c85c; csrftoken=KevqOi51yhx99LPY2i96wpMb2BxPlbpA; __cflb=0H28vBt3Asif1pksrBB47e5ijRcsvN4rdm4JmqYW3k8; intercom-session-xel0jpx9=K0lUK3E1QkhQemZuN256UXRtUVIxQWRoTVNQVXA2OVhXbDd1UHlGb3hxVmFVN0tJTG5LdFEvelpJck5aR0FjV3VWY0NjR1piMUxUdkZUc09kLzVDMTIrRGZiU3BtRElIQ0FvZUVZdHZyNU5sZU9EU0E3cHFCK1FzdE9kUTFKaG5PclZJTGRxN1c2WUt1NEVLNXBqZUwySStMQ2JHWHo3Z3Vyc2xLSWh2YkVDbWJBOWJWeHpHNFJIUzltZWUvQXVXLS1jdGVHOFVGRTJNS3I2Qm1tWlk3UEVBPT0=--d3764aa89dd7c5400eb27bf4e34ad8c85402eb72'''
))