Google Natural Language API помогает в понимании не-структурированных текстов. Вы можете передать строку (например отзыв, пост в соцсети, транскрипцию аудиозаписи) в API Natural Language, и он определит сущности (например, человека, места, продукты, события), настроение (довольны ли клиенты вашим брендом или злятся на него) и синтаксис (части речи).

Google Natural Language может анализировать строки на нескольких языках, а также имеет REST API, так что вы можете легко использовать его в своих проектах сценариев Google Apps\Google Ads.

Чтобы начать работу, в консоли разработчиков Google перейдите в раздел API и включите Natural Language API. Затем создайте API-ключ, с помощью которого будете осуществлять обращения к API из скрипта.

Вот, например функция анализа настроения:

function analyzeSentiment(lang, str) {

    var api_key = '************************';
    var requestUrl = `https://language.googleapis.com/v1/documents:analyzeSentiment?key=${api_key}`;

    var data = {
        document: {
            language: lang,
            type: 'PLAIN_TEXT',
            content: str
        },
        encodingType: 'UTF8'
    };
    var options = {
        method: 'POST',
        contentType: 'application/json',
        payload: JSON.stringify(data)
    };

    var response = UrlFetchApp.fetch(requestUrl, options);
    var data = JSON.parse(response);
    return data;
}

Пример ответа для этой функции:

{
    "documentSentiment": {
        "magnitude": 0.8,
        "score": 0.4
    },
    "language": "en-US",
    "sentences": [{
        "text": {
            "content": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent ornare, mi mollis porttitor pretium, dui diam mattis lorem, sed imperdiet...",
            "beginOffset": 0
        },
        "sentiment": {
            "magnitude": 0.8,
            "score": 0.8
        }
    }]
}

Эту же функцию можно использовать и для оценки потенциальных минус-слов в контекстной рекламе. Например для слова «scam» вернётся вот такой ответ:

{
    "documentSentiment": {
        "magnitude": 0.8,
        "score": -0.8
    },
    "language": "en",
    "sentences": [{
        "text": {
            "content": "scam",
            "beginOffset": 0
        },
        "sentiment": {
            "magnitude": 0.8,
            "score": -0.8
        }
    }]
}

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

Ещё интересное


Добавить комментарий