chore: prompts improvements

This commit is contained in:
ITQ
2025-02-18 23:57:18 +03:00
parent 65a021b3ba
commit 7a43d7a4af
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},