Библиотека чтения
Объясните AND внутри поля на контрпримерах
Два синтетических примера о квантовании объясняют AND внутри title или text, отличие от поиска фразы и отсутствие управления весами полей или OR.
Нарисуйте примеры отдельных полей
Читателю, добавляющему memory к quantization, нужно понимать влияние слова. Текущий запрос q использует multi_match с type=best_fields и operator=and по title и text. Проанализированные термины должны совпасть внутри подходящего поля. Недостаточно найти один только в title, а второй только в text. Совпадения не будет, если одно ключевое слово находится в заголовке, а другое исключительно в основном тексте. Это объяснение границ полей, а не оценка того, отвечает ли содержание на вопрос читателя.
Нарисуйте таблицу с двумя колонками, title и text, и перечислите предполагаемые в упражнении проанализированные термины. Используйте синтетические фрагменты и явно укажите, что оба слова считаются отдельными терминами после анализа. Реальное сопоставление зависит от анализатора; иллюстрация не устанавливает правила стемминга, синонимов, пунктуации или посимвольного сравнения. Она также не требует одновременного совпадения обоих полей. Одного подходящего поля достаточно, а порядок слов во фразе и их близость этим условием AND не гарантируются.
Проверьте совпадение только в заголовке
В первом примере на бумаге поместите quantization memory в синтетический заголовок, а основной текст оставьте не связанным с этими терминами. При заданных предположениях о токенах заголовок содержит оба нужных термина. Основной текст не обязан повторять их. Это концептуальное совпадение, а не запись, заявленная как существующая в архиве, и не отчёт о выполненном тесте. Заголовок всё равно может относиться к другим условиям. Совпадение терминов лишь даёт материал для изучения.
Теперь сохраните заголовок примера, но измените задачу. Человеку, изучающему условия измерения памяти, могут понадобиться оборудование, модель и метод — два слова этого не устанавливают. Покажите требования отдельной заметкой для чтения. Не ставьте заголовку повышенную оценку качества и не утверждайте, что совпадения в заголовке стоят выше совпадений в тексте. Получение идёт в архивном порядке _doc, а не по релевантности, дате или оценке. Пример объясняет отбор; позиция записи не подтверждает её полезность.
Проверьте отсутствие совпадения при разделении по полям
Во втором примере поместите только quantization в title и только memory в text. Предположим, ни одно поле не содержит другого проанализированного термина. Тогда ни одно из них не удовлетворяет AND из двух терминов, хотя в записи оба слова где-то есть. Это отличается от воображаемого поиска, который собирает слова из обеих колонок. Речь не о двух отдельных документах и не о правиле близости. Не хватает двух терминов в одном подходящем поле, а не обязательно соседних слов.
Осторожно применяйте контрпример к реальной задаче чтения. Отсутствующий результат не доказывает, что его термины разделены по полям: важны также доступность, другие фильтры, анализатор и ограниченное окно. Если читатель расширяет q до одного quantization, явно отправьте новый запрос и сохраните прежнюю формулировку для сравнения. Не предлагайте переключатель OR, синтаксис поиска фраз, произвольный выбор полей или их веса. Таких элементов нет в документированном контракте фильтров API; интерфейс не должен намекать на скрытую возможность.
Напишите объяснение запроса
Короткая подпись у формы может говорить: все проанализированные термины должны совпасть внутри title или внутри text. При необходимости дополните её примером с двумя колонками. Оставляйте отправленную формулировку над ответом, особенно после уточнения. Подсказка должна отличать это условие от поиска точной фразы и понимания смысла. Отделяйте q и от subreddit, author, kind, min_score. Эти ограничения сужают запрос отдельно; min_score не превращает список в ранжирование по релевантности.
Позже, проверяя собственный интерфейс, убедитесь, что добавление слова начинает последовательность со страницы 1, а старые ответы остаются привязаны к прежнему вводу. Это предлагаемые проверки приложения, а не выполненные тесты статьи. Следующие успешные запросы стоят один кредит, включая пустые. Сохраняйте неопределённость в сообщении: отсутствие записей в ответе не означает, что тему никогда не обсуждали. AND внутри поля — одна объяснимая часть ограниченного исторического поиска; она не устанавливает охват, полноту разговора или лучший ответ.