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

Мы рады объявить о выпуске codequestion 2.0! Это происходит вслед за выпуском txtai 5.0. Оба этих проекта имеют открытый исходный код (Apache 2.0) и доступны на GitHub.

codequestion — приложение для семантического поиска вопросов разработчиков. Разработчики обычно открывают окно веб-браузера во время работы и запускают веб-поиск по мере возникновения вопросов. С кодовым вопросом поиск выполняется локально, подключение к сети не требуется. Это приложение выполняет запросы на сходство, чтобы найти вопросы, похожие на входной запрос.

codequestion 2.0 содержит ряд интересных новых функций и изменений. Эта статья подытожит все это.

Новые модели

За последние два года в сфере машинного обучения произошло много изменений. Когда был выпущен codequestion 1.0, производительность, скорость и точность векторных моделей слов сделали его наиболее подходящим. Статья ниже является кратким изложением этого.



Модели Трансформеры взлетели 🚀 с тех пор. Когда был выпущен codequestion 1.0, у Hugging Face Transformers было 20 тысяч звезд. По состоянию на октябрь 2022 года у него более 70 тысяч звезд! Создание высококачественных вложений предложений теперь возможно благодаря великолепным моделям, созданным с помощью библиотеки Sentence Transformers. Посмотрите на все эти модели, доступные на Hugging Face Hub на предмет схожести предложений.

В версии 2.0 средний обратный ранг (MRR) улучшился с 77,1 до 85,0 для набора данных Stack Exchange. Это значительное увеличение, ведущее к более релевантным результатам.

Кроме того, модели имеют более широкую и общую базу знаний, как показано с помощью показателей Корреляции Пирсона для набора данных STS.

Справедливости ради следует отметить, что векторные модели слов обучались только на небольшом наборе данных. Таким образом, оценка на самом деле впечатляет, но все же намного ниже, чем у модели Sentence Transformer.

Интеграция семантического графа

В этот выпуск интегрирован txtai 5.0, в который добавлен новый компонент — семантический граф. Семантические графы добавляют возможности тематического моделирования и обхода графа.

При вводе команды .topics отображаются первые N найденных тем. Эта команда также может фильтровать с помощью запроса. Запуск .topics python показывает основные темы, посвященные Python.

Кроме того, обход пути доступен с помощью команды .path. Эта команда принимает два аргумента: идентификатор начала и идентификатор конца. Обход пути — полезный метод для оценки связности набора данных. Это тоже очень интересно! Выполнение .path 219570 167341 показывает, как можно обойти отношения графика, чтобы связать два разных вопроса.

Код Visual Studio

Подсказку с кодовым вопросом можно запустить в Visual Studio Code. Это позволяет задавать вопросы по кодированию прямо из вашей IDE.

Запустите Ctrl+`, чтобы открыть новый терминал, затем введите codequestion, чтобы начать.

Служба API

codequestion создает стандартный индекс встраивания txtai. Таким образом, он поддерживает размещение индекса через службу txtai API. Эта служба возвращает результаты в формате JSON и может быть интегрирована во внешнее приложение. Прочитайте эту ссылку, чтобы узнать больше.

Путешествие сюда

NeuML, компания, стоящая за txtai и codequestion, была основана сразу после выпуска codequestion 1.0 в январе 2020 года. Этот выпуск является кульминацией последних двух лет разработки txtai и того, как все прошло полный круг.

В то время также был выпущен neuspo.



Затем, как мы все знаем, ударил COVID-19, и весь мир изменился. NeuML применил идеи codequestion и neuspo к исследованиям COVID-19. Это привело к многочисленным наградам в конкурсе Kaggle COVID-19.





Семантические графы впервые были придуманы с помощью neuspo, семантический поиск с кодовым вопросом. Работа над вызовом COVID-19 привела к paperai.

txtai 1.0 был выпущен в августе 2020 года, и с тех пор продолжается работа по объединению идей всех этих проектов в единую структуру для создания приложений семантического поиска. codequestion 2.0 — важная веха на этом пути.

Подведение итогов

В этой статье был представлен обзор codequestion 2.0, а также путешествие сюда. Спасибо за чтение! Дополнительные сведения см. по следующим ссылкам.