Как стать автором
Обновить

Open Deep Search: как сделать открытый аналог Perplexity своими руками

Время на прочтение4 мин
Количество просмотров3K

Искусственный интеллект (ИИ) - ключевой компонент современных поисковых систем. Однако большинство популярных решений, таких как Google, Perplexity и ChatGPT остаются проприетарными, что затрудняет научные исследования и развитие таких технологий. В то же время, открытые решения для интеллектуального поиска часто оказываются менее качественными. Это создает разрыв между закрытыми коммерческими системами и доступными для разработчиков инструментами, которые не обладают такой же производительностью и качеством. Для устранения этого разрыва исследователи представили открытый фреймворк Open Deep Search (ODS), который позволяет интегрировать мощные инструменты для веб-поиска с любыми большими языковыми моделями (LLM), обеспечивая конкуренцию с коммерческими системами.

Цель исследования

Авторы статьи Open Deep Search: Democratizing Search with Open-source Reasoning Agents ставят перед собой цель «демократизировать» интеллектуальные поисковые системы, предлагая полностью открытое и масштабируемое решение. В частности, исследование направлено на:

  • Разработку фреймворка для эффективной работы больших языковых моделей и поисковых механизмов, доступных для всех;

  • Демонстрацию того, что даже без закрытых корпоративных API можно достигать результатов, сопоставимых с коммерческими продуктами;

  • Презентацию двух ключевых модулей: Open Search Tool и Open Reasoning Agent.

Из чего состоит Open Deep Search

Open Deep Search (ODS) задуман как система «plug-and-play», которую можно интегрировать как с открытыми моделями (например, DeepSeek-R1), так и с закрытыми (GPT-4o, Claude).

ODS состоит из двух ключевых компонентов, работающих на базе выбранной языковой модели:

  • Open Search Tool - этот модуль получает запрос и извлекает информацию из интернета, которую затем можно предоставить языковой модели в качестве контекста. Open Search Tool выполняет несколько важных действий для улучшения качества поиска и релевантности контекста:

    1. Переформулирование исходного запроса различными способами, чтобы расширить охват поиска и получить более широкий спектр результатов;

    2. Получение результатов из поисковой системы, извлечение контекста из самых релевантных документов (сниппеты и связанные страницы);

    3. «Дробление» информации (chunking) и повторная сортировка (re-ranking), чтобы выделить наиболее релевантный контент;

    4. Специальная обработка отдельных источников (например, Wikipedia, ArXiv, PubMed); при наличии противоречивых данных инструмент может отдавать приоритет более надежным источникам.

  • Open Reasoning Agent - этот агент принимает пользовательский запрос и, используя базовую LLM и различные инструменты (включая Open Search Tool), формирует финальный ответ. Sentient предлагает две архитектуры агентов в составе ODS:

    1. ODS-v1: Использует ReAct-агент в сочетании с «Chain-of-Thought» (CoT) рассуждениями. ReAct-агенты чередуют шаги рассуждения («мысли») с действиями (например, обращение к инструменту поиска) и наблюдениями (результаты поиска). ODS-v1 итеративно задействует ReAct для получения ответа. Если ReAct-агент испытывает затруднения (что определяется отдельной моделью-судьей), он переходит к методике самосогласованности CoT (Self-Consistency), где модель генерирует несколько вариантов рассуждений, и выбирается наиболее часто встречающийся ответ.

    2. ODS-v2: Применяет «Chain-of-Code» (CoC) и агент CodeAct, реализованный с помощью библиотеки SmolAgents от Hugging Face. CoC использует способность LLM генерировать и выполнять фрагменты кода, а CodeAct применяет генерацию кода для планирования действий. ODS-v2 может управлять несколькими инструментами и агентами, что позволяет решать более сложные задачи, требующие продуманного планирования и при необходимости многократных итераций поиска.

Результаты

ODS с открытой моделью DeepSeek-R1, сравнили с популярными проприетарными аналогами, такими как Perplexity AI и GPT-4o Search Preview от OpenAI, а также со стандартными моделями вроде GPT-4o и Llama-3.1-70B. Для оценки использовались наборы FRAMES и SimpleQA, адаптированные под задачу проверки точности ответов в условиях поиска.

Пример работы Open Deep Search
Пример работы Open Deep Search

Результаты показали конкурентоспособность ODS. Обе версии — ODS-v1 и ODS-v2 — в сочетании с DeepSeek-R1 превзошли флагманские продукты Perplexity. Особенно примечательно, что ODS-v2 в паре с DeepSeek-R1 обошла GPT-4o Search Preview на сложном бенчмарке FRAMES и почти сравнялась с ним по показателям SimpleQA.

Также была отмечена эффективность фреймворка: агенты в ODS научились эффективно пользоваться поиском, зачастую сами определяя, нужен ли еще один поиск или хватает уже полученных результатов. К примеру, ODS-v2 делала меньше веб-запросов для более простых вопросов SimpleQA по сравнению с более сложными многошаговыми задачами в FRAMES, тем самым оптимизируя расход ресурсов.

Выводы

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

ODS разрабатывался с учетом модульности - он динамически решает, какие инструменты использовать, опираясь на их описания в промпте. Это означает, что он может легко взаимодействовать даже с незнакомыми инструментами, если они хорошо описаны, без необходимости дополнительной донастройки». Исходный код Open Deep Search доступен на Github.

***

Если вам интересна тема ИИ, подписывайтесь на мой Telegram-канал - там я регулярно делюсь инсайтами по внедрению ИИ в бизнес, запуску ИИ-стартапов и объясняю, как работают все эти ИИ-чудеса.

Теги:
Хабы:
+9
Комментарии3

Публикации

Работа

Data Scientist
41 вакансия

Ближайшие события