MongoDB Atlas: векторный поиск — интеграция

Автор: Ai Flowi · Опубликовано

MongoDB Atlas: векторный поиск в AI Flowi Workflow настраивается через поля URI кластера, базы данных, коллекции и векторного индекса. Настройте эти поля для подготовленной развёрнутой системы, подключите совместимую модель эмбеддингов и изучите результаты поиска JSON или Table. Этот интерфейс относится к векторному поиску и загрузке данных, а не к универсальному редактору запросов MongoDB.

MongoDB Atlas описан в каталоге; не проверен Ai Flowi в рабочей среде. Специфичные для Atlas поля определяют коллекцию, векторное поле и поисковый индекс. Пошаговое описание — пример настройки, а не зафиксированный тест.

1. Определите развёрнутую систему и индекс

Для Atlas выясните, какие права на базу данных даёт URI кластера, прежде чем выбирать тестовую коллекцию.

Запишите нужную базу данных и коллекцию вместе с именем индекса и векторным полем. Это разные селекторы: коллекция определяет записи, а настройки индекса описывают цель поиска. Экспорт не демонстрирует автоматическое создание индекса и не предоставляет процедуру настройки поставщика. Проверьте подготовленную систему до передачи в неё реального содержимого.

Не включайте URI подключения в копируемые снимки экрана и общедоступные примеры процессов. Он может содержать чувствительные сведения для аутентификации. Если среда использует клиентский сертификат, выясните, как передавать его конфиденциально и обслуживать, прежде чем включать соответствующий переключатель.

2. Изучите все входы Atlas

Интерфейс Atlas имеет более явные настройки индекса, чем интерфейс PGVector. Среди полей, помеченных как обязательные, — размерность и переключатель mTLS; «обязательное» не означает, что mTLS должен быть включён.

MongoDB Atlas: экспортированные входы и решения по настройке
ПолеЧто нужно определитьТип / обязательностьТипы подключений / варианты
collection_nameИспользуйте идентификатор нужной коллекции в выбранной базе данных.str / ДаAtlas: input_types отсутствует
db_nameУточните, с какой базой данных идёт работа, отдельно от имени коллекции.str / ДаAtlas: input_types отсутствует
embeddingПодключите объект Embeddings, совместимый с подготовленными векторами; в экспорте это поле помечено как необязательное.other / НетПодключения Atlas: Embeddings
enable_mtlsОсознанно задайте обязательное логическое значение согласно проверенной настройке подключения.bool / ДаAtlas: input_types отсутствует
filter_fieldВыберите только поле, подтверждённое в настройке индекса; синтаксис фильтра не описан.str / НетAtlas: input_types отсутствует
index_fieldУкажите нужное векторное поле и проверьте его структуру в подготовленных записях.str / ДаAtlas: input_types отсутствует
index_nameИспользуйте идентификатор подготовленного векторного индекса; не считайте эту настройку подтверждением создания индекса.str / ДаAtlas: input_types отсутствует
ingest_dataПодключайте Data, DataFrame или Table только после проверки поведения загрузки.other / НетПодключения Atlas: Data, DataFrame, Table
insert_modeОсторожно выбирайте "append" или "overwrite"; затрагиваемая область и поведение повторного запуска не указаны.str / НетAtlas: input_types отсутствует; варианты: "append", "overwrite"
mongodb_atlas_client_certПередавайте конфиденциальные данные сертификата только в формате, принимаемом настроенной средой.str / НетAtlas: input_types имеет значение []
mongodb_atlas_cluster_uriВведите URI подключения к кластеру с нужными правами конфиденциально и скройте его в общедоступных материалах.str / ДаAtlas: input_types имеет значение []
number_dimensionsСогласуйте с проверенным сохранённым представлением; универсальное значение размерности здесь не приведено.int / ДаAtlas: input_types отсутствует
number_of_resultsИспользуйте ограниченное число результатов для начальной проверки поиска.int / НетAtlas: input_types отсутствует
quantizationУказанные варианты — "scalar" и "binary"; проверьте совместимость до выбора любого из них.str / НетAtlas: input_types отсутствует; варианты: "scalar", "binary"
search_queryПередайте вопрос для поиска через поле запроса, совместимое с Message.query / НетПодключения Atlas: Message
should_cache_vector_storeПроверьте актуальность данных после изменения коллекции или учётных данных; поведение кэша не указано.bool / НетAtlas: input_types отсутствует
similarityСогласуйте с подготовленным индексом, используя "cosine", "euclidean" или "dotProduct", в зависимости от настройки.str / НетAtlas: input_types отсутствует; варианты: "cosine", "euclidean", "dotProduct"

3. Определите размерность и метрику сходства до поиска

Общие понятия описаны в разделе текстовых эмбеддингов; решение для Atlas здесь касается конкретных настроек индекса.

Скопируйте number_dimensions из проверенной настройки выбранного index_field, затем согласуйте similarity с записанной настройкой этого индекса. Точные варианты — "cosine", "euclidean" и "dotProduct". Сохраните этот регистр букв: настройка, скопированная у другого поставщика, может использовать другие метки. Если в коллекции несколько возможных векторных полей, определите нужное поле до задания размерности; одного имени коллекции недостаточно для выбора.

Отдельно проверьте quantization, используя экспортированные варианты "scalar" или "binary" только после проверки подготовленного индекса. Пометка «необязательное» не задаёт значение по умолчанию и не подтверждает, что изменение параметра перестраивает существующие записи. При исследовании другого варианта сохраняйте настройки до и после изменения и сравнивайте известные исходные фрагменты, вместо того чтобы обещать экономию памяти или точность по одной метке. Каталог указывает поставщиков эмбеддингов для отдельного подключения модели.

4. Настройте один синтетический поиск

  1. Выберите тестовую коллекцию с известными исходными материалами, которую можно удалить и подтвердите готовность её векторного индекса в своей среде.
  2. Добавьте MongoDB Atlas, конфиденциально задайте mongodb_atlas_cluster_uri и заполните db_name, collection_name, index_name и index_field по подготовленной настройке.
  3. Задайте number_dimensions равным подтверждённой размерности представления, а enable_mtls — согласно проверенному режиму подключения. Если он включён, настройте mongodb_atlas_client_cert в соответствии с требованиями среды.
  4. Подключите соответствующий компонент эмбеддингов к embedding, введите вопрос для поиска по этой коллекции в search_query и задайте number_of_results равным 3 как предлагаемый предел числа результатов для проверки.
  5. Исключите загрузку данных из начального исследования. Изучите состояние базы данных вместе с выходом поиска, поскольку отсутствие подключения загрузки не доказывает, что записи Atlas остались неизменными.
  6. Проверьте возвращённые ссылки на источники и принадлежность результата нужной коллекции до передачи любого текста другому узлу.

5. Изучите принимающий порт и данные

Порты поиска Atlas — JSON (search_results) и Table (dataframe). Эти типы устанавливают совместимость портов, а не фиксированную схему результата. В экспорт не включены ни ключи результата, ни столбцы таблицы.

Желаемый выход — доступное для изучения найденное содержимое из подготовленной коллекции. Определите его фактические поля текста и ссылок в синтетическом запуске до построения ответа. Если позднее примените фильтр, подтвердите, что он меняет выбранные записи как задумано; селектор Atlas filter_field не может доказать соблюдение всех прав читателя.

Границы вставки и повторных попыток

insert_mode предлагает "append" и "overwrite". Эти имена требуют проверки до подключения исходных данных, особенно если существующая коллекция содержит материал, который нужно сохранить. Область перезаписи Atlas отсутствует в экспортированном контракте: она может касаться элемента, пакета или более широкого ресурса, поэтому этот пример не утверждает ничего об удалении.

Тестируйте загрузку отдельно на тестовых записях, которые можно удалить. Изучите повторные отправки и прерванные запуски, прежде чем решать, допустима ли автоматическая повторная попытка. Ни одно поле каталога не предоставляет ключ идемпотентности, и отдельный выход ошибки для этого компонента не экспортирован.

Когда интерфейс MongoDB Atlas не подходит?

Используйте другой путь для обычных задач MongoDB CRUD или обработки событий; эти действия не описаны полями векторного хранилища. Не используйте в рабочей среде, если неизвестны совместимость индекса или работа с сертификатами либо не определена область доступа при чтении. Страница не предоставляет измеренного качества поиска или гарантии безопасной изоляции.

Страница Pinecone описывает контракт другого поставщика с селекторами индекса и пространства имён. Сравнивайте эти конкретные границы настройки, а не предполагайте, что имена полей одного поставщика можно использовать в Atlas. Каталог интеграций содержит ссылки на связанные сервисы.

Особенности использования

Каждый запуск узла расходует 1 Flowi Token. Ежемесячный объём токенов: Go — 5,000; Plus — 10,000; Pro 100 — 50,000; Pro 200 — 100,000; Pro 500 — 250,000. Заказать демо

Считайте узлы и повторные попытки, наблюдаемые в рабочем процессе, а не принимайте число результатов или настройку размерности за общий объём использования.