chore: prompts improvements

This commit is contained in:
ITQ
2025-02-18 23:57:18 +03:00
parent 21fa9a55cc
commit 5634f2fac1
2 changed files with 8 additions and 9 deletions
@@ -8,22 +8,21 @@ from yandex_cloud_ml_sdk.exceptions import YCloudMLError
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
AD_PROMPT_TEMPLATE = """ AD_PROMPT_TEMPLATE = """
Сгенерируй креативный рекламный текст для рекламодателя с именем: "{advertiser_name}", Сгенерируй креативный рекламный текст для рекламодателя: "{advertiser_name}",
название рекламной кампании: "{ad_title}". который проводит рекламную кампанию с названием: "{ad_title}"
Требования: Требования:
1. Текст должен быть максимально привлекательным и продающим 1. Текст должен быть максимально привлекательным и продающим
2. Использовать современные маркетинговые приемы 2. Использовать современные маркетинговые приемы
3. Включить призыв к действию 3. Включить призыв к действию
4. Соблюдать структуру: заголовок - основной текст - заключение 4. Соблюдать структуру: заголовок - основной текст - заключение
5. Длина: 3-5 коротких предложений 5. Длина: 3-6 коротких предложений
6. Ответ должен содержать только текст рекламы без дополнительных комментариев 6. Ответ должен содержать только текст рекламы без дополнительных комментариев
7. Весь текст должен быть на одной строчке
Пример хорошего текста: Пример хорошего текста:
"Запустите свой бизнес в космос с {{advertiser_name}}! Кампания "{{ad_title}}" предлагает Запустите свой бизнес в космос с {{advertiser_name}}! Кампания "{{ad_title}}" предлагает
уникальные решения для цифрового продвижения. Присоединяйтесь к лидерам рынка - получите уникальные решения для цифрового продвижения. Присоединяйтесь к лидерам рынка - получите
персональную консультацию сегодня!" персональную консультацию сегодня!
""".strip() """.strip()
@@ -46,8 +45,8 @@ class YandexAIAdTextGenerator:
self.sdk.models.completions( self.sdk.models.completions(
"yandexgpt-lite", model_version="latest" "yandexgpt-lite", model_version="latest"
) )
.configure(max_tokens=400, temperature=0.9) .configure(max_tokens=400, temperature=1.0)
.run_deferred([{"role": "system", "text": prompt}]) .run_deferred([{"role": "user", "text": prompt}])
) )
result = promise.wait() result = promise.wait()
@@ -36,7 +36,7 @@ class YandexAIModerator:
self.sdk.models.completions( self.sdk.models.completions(
"yandexgpt-lite", model_version="latest" "yandexgpt-lite", model_version="latest"
) )
.configure(max_tokens=200, temperature=0.1) .configure(max_tokens=500, temperature=0.1)
.run_deferred( .run_deferred(
[ [
{"role": "system", "text": MODERATION_PROMPT}, {"role": "system", "text": MODERATION_PROMPT},