# Параметры генерации ответа модели: temperature, top_p, max_tokens

from django.db import migrations, models
import django.core.validators


class Migration(migrations.Migration):

    dependencies = [
        ('homework', '0017_remove_homeworkaiagent_access_id_and_more'),
    ]

    operations = [
        migrations.AddField(
            model_name='homeworkaiagent',
            name='temperature',
            field=models.FloatField(
                blank=True,
                help_text='Случайность ответа: 0 = детерминированный, 2 = максимально разнообразный. Обычно 0.3–0.7 для проверки ДЗ. Пусто — значение по умолчанию провайдера.',
                null=True,
                validators=[django.core.validators.MinValueValidator(0.0), django.core.validators.MaxValueValidator(2.0)],
                verbose_name='Temperature'
            ),
        ),
        migrations.AddField(
            model_name='homeworkaiagent',
            name='top_p',
            field=models.FloatField(
                blank=True,
                help_text='Доля наиболее вероятных токенов для выбора (0–1). Меньше — более фокусный ответ. Пусто — по умолчанию провайдера.',
                null=True,
                validators=[django.core.validators.MinValueValidator(0.0), django.core.validators.MaxValueValidator(1.0)],
                verbose_name='Top P (nucleus sampling)'
            ),
        ),
        migrations.AddField(
            model_name='homeworkaiagent',
            name='max_tokens',
            field=models.PositiveIntegerField(
                blank=True,
                help_text='Максимальная длина ответа в токенах. Пусто — лимит провайдера. Для развёрнутого комментария можно 2000–4000.',
                null=True,
                verbose_name='Max output tokens'
            ),
        ),
    ]
