Поиск, понимающий смысл.
Работает в браузере. Полностью приватно.
Офлайн семантический поиск для любого сайта документации. Понимает смысл, работает полностью в браузере и никогда не отправляет данные в облако.
Как это работает
Умный поиск для статической документации без серверов и сторонних сервисов.
Работает локально в браузере
Использует легкие AI-модели, исполняемые прямо в браузере. Никакие данные не покидают устройство пользователя.
Понимает вашу суть
Выходит за рамки точного совпадения. Поиск по слову 'аутентификация' также найдет страницы про 'вход', 'логин' и 'сессии'.
Гибрид: Ключевые слова + Смысл
Объединяет быстрый поиск по ключевым словам и оценку смысловой близости для моментального получения лучших результатов.
Выберите модель поиска
Подберите модель, соответствующую объему и языкам вашей документации.
| Модель | Размерность | Размер | Языки | Лучше всего подходит для |
|---|---|---|---|---|
| MiniLM L6 v2 ★ | 384 | ~23 MB | Только английский | Быстрая англоязычная документация |
| Multilingual MiniLM L12 | 384 | ~118 MB | 50+ языков | Мультиязычная i18n документация |
| Multilingual E5 Small | 384 | ~118 MB | 100+ языков | Широкое покрытие языков |
| Multilingual MPNet Base | 768 | ~270 MB | 50+ языков | Высшее качество для нескольких языков |
💡 Многоязычная документация: Если ваша документация содержит несколько языков (английский, китайский, немецкий, испанский и т. д.), выберите многоязычную модель через docmd-search --settings.
Используйте где угодно: Клиентский API
Легковесный клиентский рантайм (менее 5 КБ), работающий прямо в браузере. Создавайте собственные интерфейсы поиска для любых сайтов.
import * as Search from '@docmd/plugin-search/client'; // 1. Initialise and load index folder. // Batch 0 is loaded instantly for sub-millisecond search startup, // while remaining chunk batches load progressively in background. await Search.load('/.docmd-search', (loaded, total) => { console.log(`Loaded batch ${loaded}/${total}`); }); // 2. Query search using hybrid vector + keyword matching. const results = Search.search('authentication secure routes', 10); results.forEach(({ score, chunk }) => { console.log(`[${(score * 100).toFixed(0)}%] ${chunk.file}#${chunk.heading || ''}`); console.log(chunk.text); });
Часто задаваемые вопросы
Вопросы о docmd-search и офлайн семантическом поиске.
Работает ли поиск полностью в браузере?
Читать полную документацию →
Нужно ли пользователям скачивать AI-модели?
Узнать подробнее об офлайн-поиске →
Поддерживает ли несколько языков?
paraphrase-multilingual-MiniLM-L12-v2 (поддерживает 50+ языков).Настроить многоязычный поиск →
Что за бейдж точности совпадения?
showConfidence рядом с результатом отображается процент релевантности.Настройки клиентской части →
Начните сборку за считанные минуты
Open source, лицензия MIT. Одна команда до первого сайта документации.