Initial wiki push - 2026-04-10
This commit is contained in:
132
sources/brd.md
Normal file
132
sources/brd.md
Normal file
@@ -0,0 +1,132 @@
|
||||
---
|
||||
pageType: source
|
||||
id: source.brd
|
||||
title: BRD
|
||||
sourceType: local-file
|
||||
sourcePath: /home/node/.openclaw/workspace/tasks/snowbike-rag/BRD.md
|
||||
ingestedAt: 2026-04-09T22:22:18.682Z
|
||||
updatedAt: 2026-04-09T22:22:18.682Z
|
||||
status: active
|
||||
---
|
||||
|
||||
# BRD
|
||||
|
||||
## Source
|
||||
- Type: `local-file`
|
||||
- Path: `/home/node/.openclaw/workspace/tasks/snowbike-rag/BRD.md`
|
||||
- Bytes: 5102
|
||||
- Updated: 2026-04-09T22:22:18.682Z
|
||||
|
||||
## Content
|
||||
```text
|
||||
# Бизнес-требования: Семантический поиск по данным Telegram (Сноубайк Россия)
|
||||
|
||||
## 1. Проблема
|
||||
|
||||
У нас есть 155 000 сообщений из Telegram-группы «Сноубайк Россия» (12 топиков). Сейчас поиск работает только по точным словам внутри Telegram — найти нужный ответ среди тысяч сообщений практически невозможно.
|
||||
|
||||
**Пример:** чтобы узнать, какое масло рекомендуют для Polaris 850, нужно:
|
||||
- Знать точную формулировку
|
||||
- Листать сотни сообщений вручную
|
||||
- Объединять ответы из разных обсуждений
|
||||
|
||||
---
|
||||
|
||||
## 2. Что хотим получить
|
||||
|
||||
Систему, которая **отвечает на вопросы** по базе знаний, а не просто ищет сообщения.
|
||||
|
||||
**Примеры запросов:**
|
||||
• «Какое масло рекомендуют для Polaris 850?»
|
||||
• «Где лучше кататься зимой в Подмосковье?»
|
||||
• «Какие гусеницы подходят на Timber S800?»
|
||||
• «Кто продавал запчасти для Lynx в Китае?»
|
||||
• «Какие проблемы бывают с Yamaha Mountain Max?»
|
||||
|
||||
---
|
||||
|
||||
## 3. Как должен работать
|
||||
|
||||
1. Пользователь задаёт вопрос на русском языке
|
||||
2. Система находит 10–20 самых релевантных сообщений (по смыслу, не по точным словам)
|
||||
3. LLM формирует ответ на основе найденных сообщений
|
||||
4. В ответе указаны источники: дата, автор, топик
|
||||
5. Если информации недостаточно — система честно говорит об этом
|
||||
|
||||
---
|
||||
|
||||
## 4. Ключевые требования
|
||||
|
||||
### 4.1 Поиск
|
||||
• Понимать смысл запроса (не только точные слова)
|
||||
• Допускать опечатки и синонимы
|
||||
• Искать по всем 12 топикам одновременно
|
||||
• Фильтровать по конкретному топику (опционально)
|
||||
• Сортировать по релевантности или дате
|
||||
|
||||
### 4.2 Ответы
|
||||
• На русском языке
|
||||
• Краткие и по существу
|
||||
• С указанием источников (кто, когда, в каком топике)
|
||||
• Агрегированные (если 5 человек рекомендуют одно масло — обобщить)
|
||||
|
||||
### 4.3 Данные
|
||||
• Работать с сырыми данными Telegram Collector
|
||||
• Обновляться ежедневно после загрузки новых сообщений
|
||||
• Не ломать существующую систему сбора данных
|
||||
|
||||
### 4.4 Скорость
|
||||
• Ответ на запрос: до 3 секунд
|
||||
• Индексация новых сообщений: до 1 минуты в день
|
||||
|
||||
### 4.5 Стоимость
|
||||
• LLM: ~$0.005 за запрос (приемлемо)
|
||||
• Embeddings: бесплатно (локальная модель)
|
||||
• Хранение: ~1.5 ГБ дополнительно (приемлемо)
|
||||
|
||||
---
|
||||
|
||||
## 5. Что НЕ входит в эту задачу
|
||||
|
||||
• Голосовой интерфейс (добавим позже)
|
||||
• Поиск по медиа-файлам (фото, видео)
|
||||
• Учёт пользователей и авторизация
|
||||
• Мобильное приложение
|
||||
• Перевод на другие языки
|
||||
|
||||
---
|
||||
|
||||
## 6. Пользователи
|
||||
|
||||
• **Слава** — основной пользователь
|
||||
• Потенциально: друзья, участники группы (позже, через веб-интерфейс)
|
||||
|
||||
---
|
||||
|
||||
## 7. Критерии приёмки
|
||||
|
||||
✅ Ответ на вопрос «какое масло для Polaris 850» — содержит конкретные рекомендации с источниками
|
||||
✅ Ответ на вопрос «где кататься в Подмосковье» — содержит локации из чата
|
||||
✅ Система честно говорит «не знаю», когда информации нет
|
||||
✅ Ежедневно обновляется после cron-загрузки
|
||||
✅ Работает без интернета (embeddings), кроме LLM
|
||||
|
||||
---
|
||||
|
||||
## 8. Приоритет и этапы
|
||||
|
||||
**Этап 1 (MVP):** Индексация + поиск + LLM ответ — **сейчас**
|
||||
**Этап 2:** Веб-интерфейс (Flask UI) — **позже**
|
||||
**Этап 3:** Голосовой запрос — **позже**
|
||||
**Этап 4:** Множественные источники (другие каналы) — **когда понадобится**
|
||||
|
||||
```
|
||||
|
||||
## Notes
|
||||
<!-- openclaw:human:start -->
|
||||
<!-- openclaw:human:end -->
|
||||
|
||||
## Related
|
||||
<!-- openclaw:wiki:related:start -->
|
||||
- No related pages yet.
|
||||
<!-- openclaw:wiki:related:end -->
|
||||
Reference in New Issue
Block a user