91 lines
2.6 KiB
Markdown
91 lines
2.6 KiB
Markdown
# 🔧 ВИПРАВИТИ: Helion system_prompt не працює
|
||
|
||
## ❌ Поточна проблема
|
||
Бот **працює**, але відповідає як "Qwen" замість "Helion".
|
||
|
||
Telegram бот отримує повідомлення ✅
|
||
Router маршрутизує запити ✅
|
||
Ollama відповідає ✅
|
||
**Але**: Router **ігнорує** `system_prompt` від Gateway ❌
|
||
|
||
## 🎯 Що потрібно виправити
|
||
|
||
### Файл: `gateway-bot/http_api.py`
|
||
|
||
**Знайди функцію** `helion_telegram_webhook` (рядок ~418)
|
||
|
||
**Знайди змінну** `router_request` (рядок ~453)
|
||
|
||
**Поточна структура (НЕПРАВИЛЬНА):**
|
||
```python
|
||
router_request = {
|
||
"message": text,
|
||
"mode": "chat",
|
||
"agent": "helion",
|
||
"metadata": {...},
|
||
"payload": {"context": { # ❌ Тут помилка indent!
|
||
"agent_name": HELION_NAME,
|
||
"system_prompt": HELION_SYSTEM_PROMPT,
|
||
"memory": memory_context,
|
||
},
|
||
},
|
||
}
|
||
```
|
||
|
||
**Виправлена структура (ПРАВИЛЬНА):**
|
||
```python
|
||
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"`.
|
||
|
||
## ✅ Перевірка
|
||
|
||
Після виправлення:
|
||
|
||
```bash
|
||
# Перезапустити gateway
|
||
docker compose restart gateway
|
||
|
||
# Надіслати в Telegram боту:
|
||
"Хто ти і що таке EcoMiner?"
|
||
|
||
# Має відповісти щось про Helion та Energy Union
|
||
# Якщо відповідає "Qwen" - не виправлено
|
||
```
|
||
|
||
## 📝 Важливо
|
||
|
||
- **НЕ** створюй новий `helion_prompt.txt` - він вже існує ✅
|
||
- **НЕ** створюй новий webhook endpoint - він вже є ✅
|
||
- **НЕ** змінюй нічого крім структури `router_request` ✅
|
||
- Просто виправ **indent** в одному місці!
|
||
|
||
---
|
||
|
||
**Це все! Одна проста зміна indent.**
|