Генераторы ответов

Доступно 3 режима генерации, для использования передается соответсвующий параметр. Файл передается через --file

Подстановка имен пользователей и названия бренда

В любом режиме можно заполнить список stop_words. Если слово из списка будет встречено в отзыве, то на него программа не ответит.

--probabilistic

алгоритм составления

Если оценка больше или равна 4, то
в 30% случаев к ответу будет добавлен один из шаблонов раздела с соответствующей оценкой.

В остальных 70% случаях, если комментарий не пустой, то к ответу добавится один из шаблонов раздела 'gratitude'. Если пустой, то добавится один из шаблонов раздела 'gratitude no comment'.

Дальше с вероятностью 0.5 совместно добавляются шаблоны из разделов 'main' и 'recommendations'.

Если оценка равна 3 и у отзыва есть комментарий, то к ответу добавляется шаблон из раздела '3', если комментария нет, то добавляется шаблон из раздела '3 no comment'.

Если оценка меньше 3 в 30% случаях добавляется шаблон из раздела с соответствующей оценкой. В остальных случаях шаблон выбирается из раздела 'apologies'. Если отзыв не пустой, то к нему также добавляется шаблон из раздела 'examination'.

В конце ко всем ответам добавляется шаблон из раздела 'goodbye'.

шаблон файла

{
    "greetings": [
        "Здравствуйте, $name$!",
        "Добрый день!"
    ],

    "gratitude":[
        "Спасибо, что выбрали нашу продукцию!",
        "Мы рады, что Вы обратили внимание на нашу продукцию!",
    ],

    "gratitude no comment":[
        "Спасибо, что выбрали нашу продукцию!",
        "Мы рады, что Вы обратили внимание на нашу продукцию!",
    ],

    "apologies":[
        "Нам жаль, что мы не смогли оправдать Ваши ожидания.",
        "Нам очень жаль.",
    ],

    "examination":[
        "Мы разберемся с данным вопросом.",
        "Мы обязательно разберемся с данным вопросом.",
    ],

    "main": [
        "Нам будет приятно видеть Вас в числе наших постоянных покупателей.",
    ],

    "recommendations": [
        "Обратите внимание на другие наши товары.",
    ],

    "goodbye":[
        "С уважением, представитель $brand$.",
    ],

    "5" : [
        "Спасибо за Ваши 5 звездочек!"
    ],

    "4" : [
        "Спасибо за Ваши 4 звездочки!"
    ],

    "3" : [
        "Cпасибо за отзыв.",
    ],

    "3 no comment" : [
        "Cпасибо за оценку.",
    ],

    "2" : [
        "Нам жаль, что Вы оценили наш продукт всего на 2 звездочки."
    ],

    "1" : [
        "Нам жаль, что Вы оценили наш продукт всего на 1 звездочку."
    ],

    "0" : [
        "Нам жаль, что мы Вас разочаровали."
    ],

    "stop_words" : [

    ]
}

--fromlist

алгоритм составления

В качестве отзыва берется отзыв из соответствующего списка. В файле две группы списков: обычные (normal) и отмененные (canceled).

Отзывы делятся на обычные и отмененные только для ozon. Программа может быть настроена на пропуск одного или другого вида отзывов через параметры --skipnormal и --skipcanceled

шаблон файла

{
    "normal": {
        "5": [
            "answer for 5"
        ],
        "4": [
            "answer for 4"
        ],
        "3": [
            "answer for 3"
        ],
        "2": [
            "answer for 2"
        ], 
        "1": [
            "answer for 1"
        ]
    },
    "canceled": {
        "5": [
            "answer for 5 canceled"
        ],
        "4": [
            "answer for 4 canceled"
        ],
        "3": [
            "answer for 3 canceled"
        ],
        "2": [
            "answer for 2 canceled"
        ],
        "1": [
            "answer for 1 canceled"
        ]
    },

    "stop_words" : [
    ]
}

--llm

алгоритм составления

Для составления ответов будет использоваться API GigaChat. Для доступа к нему необходимо зарегистрироваться на сайте и сгенерировать Client Secret. Его необходимо будет вставить в файл с шаблоном. Пример файла с шаблоном ниже. В нем можно задать инструкцию, как нейросети отвечать на отзывы.

шаблон файла

{
    "system" : "Ты менеджер маркетплейсов. Твоя задача отвечать на отзывы на товары. Отзывы будут в таком формате:\nstar = оценка товара\ncomment = комментарий пользователя, может быть пустым\nname = название товара\nclient_name = имя пользователя. Может быть пустым или чем-то вроде 'пользователь предпочёл скрыть свои данные'\n\nЕсли указано имя пользователя, то к нему можно обратиться по имени.\nЕсли комментарий пустой, то давай краткий ответ!",
    "credentials" : "<credentials>",
    "stop_words" : [
    ]
}

За использование GigaChat может взиматься дополнительная плата.