Джанго и приблизительная категория
Я работаю в компании, которая разрабатывает компаратор цен с Django (1.11). Мы загрузили каталоги от продавцов, и моя задача - найти соответствующую категорию для каждого продукта. Тогда на нашем сайте у нас есть около 22 категорий (товары для дома, платья, очки, барбекю, колонки и т. Д.). Каждый каталог, загруженный продавцом, имеет тысячи товаров со следующими свойствами: - имя - описание - категория - цена - .. В каждой категории может быть слово или полный путь к категории (например: платье> обувь> ребенок> ...)
Мой вопрос: как мне найти лучшую категорию из представленной информации? Я пытался использовать поиск триграмм по названию, но у меня слишком много ошибок.
categories_by_title = Category.objects\
.annotate(distance=TrigramDistance('name', product_title))\
.filter(distance__lte=0.9)\
.order_by('distance')
Знаете ли вы, как я могу найти наиболее подходящую функцию категории представленных продуктов? Есть много компараторов цен, но я не знаю, как они делают. Спасибо