# Qdrant: два поиска в одном пакетном запросе

Источник: https://modelium.tech/zhurnal/qdrant-batch-query/

Qdrant принимает несколько поисковых запросов к одной коллекции через `/points/query/batch`: каждый запрос задаётся элементом `searches`, ответы приходят списком `result`. На двух учебных векторах можно проверить, что разные запросы находят разные точки. Это инженерный пример по документации v1.19.x; редакция проверила HTTP-команды на фикстуре, но не запускала Qdrant или модель.

**Технический уровень.** Нужны свой работающий Qdrant v1.19.x и терминал Linux/macOS с `curl`. Это не домашний рецепт установки AI-модели. Инструкция сверена с документацией 19 октября 2026 года; редакция не запускала Qdrant, а проверила команды только на локальной HTTP-фикстуре. Пример без ключа отправляет запросы на `127.0.0.1`: не открывайте незащищённый сервер в сеть. [s1](#src-s1) [s5](#src-s5)

## Когда отправлять запросы пакетом?

Если у вас уже есть числовые представления двух запросов к одной коллекции, их можно передать за одно обращение к Qdrant вместо двух отдельных HTTP-запросов. Вектор — список чисел, по которому ищут похожие записи; **коллекция** хранит такие записи. Пакетный адрес принимает список `searches`, а в ответе `result` — список отдельных результатов с полем `points`. Это не обещание ускорения или улучшения качества: скорость и качество на ваших данных здесь не измерялись. [s1](#src-s1) [s2](#src-s2)

## Как увидеть два разных ответа?

Сначала [подготовьте локальный Qdrant](/zhurnal/qdrant-lokalno/). Команды ниже рассчитаны на терминал Linux/macOS и свободное имя `demo_batch_20261019`: **не запускайте создание коллекции и запись точек для рабочей коллекции**. Два вектора длиной 2 искусственные: они не созданы моделью и не отражают смысл текста. Если меняете имя коллекции, замените его во всех трёх командах. [s3](#src-s3) [s4](#src-s4)

- Создайте учебную коллекцию: `curl -fsS -X PUT 'http://127.0.0.1:6333/collections/demo_batch_20261019' -H 'Content-Type: application/json' -d '{"vectors":{"size":2,"distance":"Cosine"}}'`. Ожидаются `status: ok` и `result: true`. Если коллекция уже есть, не продолжайте: возьмите новое имя. [s3](#src-s3)

- Добавьте две учебные точки: `curl -fsS -X PUT 'http://127.0.0.1:6333/collections/demo_batch_20261019/points?wait=true' -H 'Content-Type: application/json' -d '{"points":[{"id":1,"vector":[1,0]},{"id":2,"vector":[0,1]}]}'`. Ожидаются `status: ok` и `result.status: completed`; повторный вызов с теми же ID перезаписывает точки. [s4](#src-s4)

- Отправьте сразу два поиска: `curl -fsS -X POST 'http://127.0.0.1:6333/collections/demo_batch_20261019/points/query/batch' -H 'Content-Type: application/json' -d '{"searches":[{"query":[1,0],"limit":1,"params":{"exact":true}},{"query":[0,1],"limit":1,"params":{"exact":true}}]}'`. Проверьте `status: ok`, затем ID первого элемента `result[0].points[0].id` и второго `result[1].points[0].id`. Для этих искусственных ортогональных векторов ожидаются ID `1` и `2` соответственно; это расчётный критерий учебного примера, **не** снятый редакцией ответ Qdrant. `exact: true` задаёт поиск без приближения в каждом запросе. [s1](#src-s1) [s2](#src-s2)

## Что делать, если ответ отличается?

Если не появились два элемента `result`, проверьте, что вызвали именно `/points/query/batch` и отправили два объекта в `searches`. Если поиск пуст, сверяйте имя коллекции, успешную запись обеих точек и размерность векторов: здесь везде длина 2. Если сервер требует API-ключ, воспользуйтесь настройкой своей защищённой установки, **не** публикуйте ключ в общедоступном примере и не делайте ради теста сервер открытым. Даже правильные учебные ID не доказывают качество поиска по настоящим документам или работу локальной модели: оцените свои вопросы и ответы отдельно. Следующий пример — [поиск по ID сохранённой точки](/zhurnal/qdrant-poisk-po-id-pohozhey-tochki/). [s1](#src-s1) [s3](#src-s3) [s4](#src-s4) [s5](#src-s5)

## Источники

1. [Qdrant API v1.19.x — Query points in batch](https://api.qdrant.tech/v-1-19-x/api-reference/search/query-batch-points.md) — получено 2026-10-19
2. [Qdrant API v1.19.x — Query points](https://api.qdrant.tech/v-1-19-x/api-reference/search/query-points.md) — получено 2026-10-19
3. [Qdrant API v1.19.x — Create a collection](https://api.qdrant.tech/v-1-19-x/api-reference/collections/create-collection.md) — получено 2026-10-19
4. [Qdrant API v1.19.x — Upsert points](https://api.qdrant.tech/v-1-19-x/api-reference/points/upsert-points.md) — получено 2026-10-19
5. [Qdrant — Local Quickstart](https://qdrant.tech/documentation/quickstart/) — получено 2026-10-19
