Files
microdao-daarion/CURSOR-FIX-HELION.md

2.6 KiB
Raw Permalink Blame History

🔧 ВИПРАВИТИ: Helion system_prompt не працює

Поточна проблема

Бот працює, але відповідає як "Qwen" замість "Helion".

Telegram бот отримує повідомлення
Router маршрутизує запити
Ollama відповідає
Але: Router ігнорує system_prompt від Gateway

🎯 Що потрібно виправити

Файл: gateway-bot/http_api.py

Знайди функцію helion_telegram_webhook (рядок ~418)

Знайди змінну router_request (рядок ~453)

Поточна структура (НЕПРАВИЛЬНА):

router_request = {
    "message": text,
    "mode": "chat",
    "agent": "helion",
    "metadata": {...},
    "payload": {"context": {    # ❌ Тут помилка indent!
        "agent_name": HELION_NAME,
        "system_prompt": HELION_SYSTEM_PROMPT,
        "memory": memory_context,
    },
    },
}

Виправлена структура (ПРАВИЛЬНА):

router_request = {
    "message": text,
    "mode": "chat",
    "agent": "helion",
    "metadata": {...},
    "payload": {
        "context": {           # ✅ Правильний indent
            "agent_name": HELION_NAME,
            "system_prompt": HELION_SYSTEM_PROMPT,
            "memory": memory_context,
        }
    },
}

🔍 Проблема простими словами

Router очікує структуру:

payload → context → system_prompt

Gateway зараз надсилає:

payload → "context": { → context → system_prompt  (подвійна вкладеність!)

Треба виправити indent, щоб "context": { був на правильному рівні всередині "payload".

Перевірка

Після виправлення:

# Перезапустити gateway
docker compose restart gateway

# Надіслати в Telegram боту:
"Хто ти і що таке EcoMiner?"

# Має відповісти щось про Helion та Energy Union
# Якщо відповідає "Qwen" - не виправлено

📝 Важливо

  • НЕ створюй новий helion_prompt.txt - він вже існує
  • НЕ створюй новий webhook endpoint - він вже є
  • НЕ змінюй нічого крім структури router_request
  • Просто виправ indent в одному місці!

Це все! Одна проста зміна indent.