docs(get_data): унификация структуры и оформление\n\nДобавлен summary, структура документа, рекомендации и раздел типовых ошибок. Приведён к единому стилю с остальными техническими файлами Simple-LLM.

This commit is contained in:
Sergey Penkovsky
2025-07-23 13:38:19 +03:00
parent 71904ea4e9
commit a895c59bfe

View File

@@ -1,5 +1,28 @@
# Документация по классу GetData
> **Документ актуален для Simple-LLM v1.0 (июль 2025)**
---
**Краткое summary:**
Документ описывает класс GetData для создания датасетов из последовательных данных. Включает алгоритм, параметры, примеры, рекомендации и типовые ошибки.
---
**Структура документа:**
- Назначение
- Основные возможности
- Алгоритм работы
- Пример использования
- Параметры класса
- Методы
- Рекомендации
- Типовые ошибки и их решения
- Применение
- Пример с текстовыми данными
---
## Назначение
Класс `GetData` предназначен для создания датасетов из последовательных данных для обучения языковых моделей и других задач, работающих с последовательностями.
@@ -56,19 +79,31 @@ print(f"Вход: {x.tolist()} → Цель: {y.tolist()}")
- `__len__()`: Возвращает количество обучающих примеров
- `__getitem__(idx)`: Возвращает пару тензоров по индексу
## Ошибки
- `ValueError`: Если `seq_len` <= 0 или >= длины данных
## Рекомендации
- Для текстовых данных предварительно токенизируйте текст
- Для больших датасетов используйте GPU (`device='cuda'`)
- Подбирайте `seq_len` в зависимости от задачи
---
## Типовые ошибки и их решения
### Ошибка: ValueError при создании датасета
**Возможные причины:**
- `seq_len` <= 0
- `seq_len` >= длины данных
**Решение:**
- Задайте `seq_len` > 0 и < длины данных
- Проверьте корректность входных параметров
---
## Применение
1. Обучение языковых моделей
2. Прогнозирование временных рядов
3. Любые задачи, требующие работы с последовательностями
## Рекомендации
- Для текстовых данных предварительно токенизируйте текст
- Для больших датасетов используйте GPU (device='cuda')
- Подбирайте seq_len в зависимости от задачи
## Пример с текстовыми данными
```python
text_tokens = [10, 20, 30, 40] # Токенизированный текст