# Урок 4: Параметры моделей

Приветствуем вас на новом уроке посвященном параметрам ChatGPT! Мы уже изучили основы написания промптов и теперь можем перейти к параметрам модели, чтобы в полной мере раскрыть ее потенциал. На этом уроке мы подробно разберемся с такими параметрами, как токены, температура, top\_p, Frequency penalty, Presence penalty и длина контекста.

### **Описание параметров:**

* **Токены:** В мире ИИ, токенами называют минимальные единицы текста, которые модель может обрабатывать. Токенами могут выступать целые слова, их фрагменты, знаки препинания или эмодзи.

{% hint style="info" %}
Например, в русском 1 токен равен примерно 2 символам без пробелов, а в английском - 4 символам без пробелов.\
Количество токенов в ваших запросах и ответах влияет на то, как долго модель будет генерировать ответ, и на то, сколько вам придется заплатить за каждый запрос.
{% endhint %}

* **Температура:** Параметр "Температура" управляет случайностью ответов модели. Более высокое значение температуры (ближе к 1) делает ответы более случайными, а более низкое значение (ближе к 0) делает ответы более предсказуемыми и консервативными. Однако важно понимать, что повышение температуры может сделать ваши ответы не просто креативными, а превратить их в бессмысленный набор слов и символов.
* **Top\_p (Nucleus Sampling):** Top\_p - это вероятность, с которой модель выбирает следующий токен (слово или часть слова) при генерации текста. Значение 1 означает, что модель будет учитывать все возможные токены для следующего слова, тогда как значение, близкое к 0, заставит модель выбирать только самые вероятные токены.
* **Frequency penalty:** Этот параметр помогает контролировать частоту встречаемости определенных слов в ответах модели. Более высокое значение штрафа уменьшит вероятность повторения слов, в то время как более низкое значение позволит модели чаще использовать одни и те же слова.
* **Presence penalty:** Параметр контролирует, насколько модель предпочитает использовать слова и фразы, которые уже присутствуют в контексте. Более высокое значение увеличит шансы на использование новых слов и фраз, в то время как более низкое значение позволит модели повторять уже упомянутые слова и фразы.
* **Длина контекста:** Это параметр, который определяет, насколько длинным может быть текст, который модель использует для генерации ответа. Более длинный контекст позволяет модели "помнить" больше информации из предыдущих сообщений, но также может привести к большему времени обработки и стоимости.

### **Применение параметров на практике**

Теперь давайте взглянем, как эти параметры могут изменить выходные данные модели. Допустим, мы хотим, чтобы ChatGPT написал статью про будущее ИИ.

Температура = 0.2

Ответ:

<figure><img src="/files/YA6swjURX4BXppiKCnQv" alt=""><figcaption></figcaption></figure>

Температура = 1,2

Ответ:

<figure><img src="/files/5DNiq3dOcnOal2TwEgzD" alt=""><figcaption></figcaption></figure>

Видите разницу? При низкой температуре история была предсказуемой и классической, в то время как при высокой температуре мы получили необычную и оригинальную историю, однако, в выдаче присутствовали странные слова.

### **Рассмотрим на примере реального кейса:**

* Запрос: "Напиши 5 идей вовлекающих заголовков на Habr для статьи с обзором на новую нейросеть". Пробуем температуру 0.7 и top\_p 0.8:

<figure><img src="/files/hhRzAQhfVY9s3aO8FVr9" alt=""><figcaption></figcaption></figure>

Затем меняем на температуру 0.3 и top\_p 0.5:

<figure><img src="/files/YvbJzDFbdMq2vUmsfTpQ" alt=""><figcaption></figcaption></figure>

Тот же запрос, но теперь с Frequency penalty 1.0 и Presence penalty 1.0:

<figure><img src="/files/tP5UNOCX2oIUnYzSr0TE" alt=""><figcaption></figcaption></figure>

Для примера возьмем 1 заголовок и попросим ChatGPT написать к нему статью, но будет условие -  длина контекста 245 токенов. Затем поменяем на 1223 токена и сравним результаты.

Длина контекста 245 токенов:&#x20;

<figure><img src="/files/wxwhFaAFLnOzmaLTRbNM" alt=""><figcaption></figcaption></figure>

Длина контекста 1223 токена:

<div><figure><img src="/files/hB5IMa9eel4qluRmssVT" alt=""><figcaption></figcaption></figure> <figure><img src="/files/Ug8HSsHYxIexJXCQkzmI" alt=""><figcaption></figcaption></figure></div>

Как видите, в первом варианте текст получился очень маленьким и оборванным посреди повествования, все из-за того, что мы выставили очень маленькую длину контекста. Во втором же случае, текст получился большого объема и затрагивает тему статьи с разных сторон, даже есть заключение.&#x20;

{% hint style="success" %}
Не забывайте записывать свои наблюдения и выводы. Это поможет вам развить навыки работы с различными параметрами и улучшить понимание работы модели. До встречи на практическом задании!
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://academy.bothub.chat/modul-1-vvodnyi-modul/urok-4-parametry-modelei.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
