Учитывая несколько слов ввода, я хочу иметь утилиту, которая будет возвращать разнообразный набор соответствующих терминов, фраз или понятий. Предостережение заключается в том, что для начала потребуется большой граф терминов, иначе эта функция не будет очень полезной.
Например, отправка "бейсбола" вернет
["shortstop", "Babe Ruth", "foul ball", "steroids", ... ]
Google Sets - лучший пример, который я могу найти для такого рода функций, но я не могу использовать его, поскольку у них нет общедоступного API (и я не буду идти против их TOS). Кроме того, ввод одного слова не приводит к очень разнообразному набору результатов. Я ищу решение, которое выходит за рамки касательных.
Самое близкое, с чем я экспериментировал, это использование API WikiPedia для поиска по категориям и обратным ссылкам, но нет способа напрямую отсортировать эти результаты по "релевантности" или " популярность ". Без этого список предложений огромен и повсеместен, что не сразу полезно и его очень трудно свести на нет.
Использование тезауруса также может работать минимально, но это исключит любые собственные существительные или тангенциально релевантные термины (как и любой из результатов, перечисленных выше).
Я бы счастливо повторно использовал бы открытую службу, если она существует, но я не нашел ничего достаточного.
Я ищу способ реализации этого либо внутри компании с прилично заполненным стартовым набором , либо повторного использования бесплатного сервиса , который предлагает это.
Есть решение? Спасибо заранее!
ОБНОВЛЕНИЕ: Спасибо за невероятно насыщенные и информативные ответы. Я выберу победный ответ через 6–12 месяцев, когда, надеюсь, пойму, что вы все предложили =)