Поисковый цикл обычно имеет следующую условную структуру:

*Пока (условие продолжения поиска) {*

*Выполнить один из способов сокращения пространства поиска.*

*Проанализировать текущее состояние и оценить, привело ли это сокращение пространства поиска к нахождению решения.*

*Если решение не найдено, то перейти к следующему шагу поиска.*

*}*

Возможные варианты условий продолжения поиска:

* Ещё не проверены все варианты.
* Ещё не достигнута требуемая точность решения.
* Найденное решение ещё не оптимально и т. д.

Способы сокращения пространства поиска:

* Перебор значений переменных.
* Деление области поиска на подобласти.
* Исключение неперспективных областей и т. п.
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence