Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Добавьте индексы векторного поиска в качестве ресурсов Databricks Apps, чтобы включить семантический поиск и поиск на основе сходства в ваших приложениях. Индексы векторного поиска хранят и запрашивают высокоразмерные векторные внедрения, обеспечивая такие варианты использования, как получение, дополненное генерацией (RAG), семантический поиск и рекомендательные системы.
Требования к привилегиям
Чтобы получить доступ к индексу векторного поиска, служебный принципал приложения должен иметь USE CATALOG привилегии в родительском каталоге, USE SCHEMA привилегии родительской схемы и SELECT привилегии индекса. При добавлении ресурса индекса Azure Databricks автоматически предоставляет эти привилегии служебному принципалу приложения.
Для успешного предоставления этой привилегии одно из следующих условий должно выполняться для каждой привилегии:
-
Для
USE CATALOG: у всех пользователей учетной записи естьUSE CATALOGпривилегия на каталоге или у вас естьMANAGEпривилегия на каталоге. -
Для
USE SCHEMA: либо у всех пользователей учетной записи есть привилегияUSE SCHEMAна схему, либо у вас есть привилегияMANAGEна схему. -
Для
SELECT: у всех пользователей учетной записи естьSELECTправа на индекс или у вас естьMANAGEправа на индекс.
Дополнительные сведения о запросах индексов векторного поиска с этими разрешениями см. в статье "Как запросить индекс векторного поиска".
Ознакомьтесь с привилегиями каталога Unity и защищаемыми объектами.
Добавление ресурса индекса векторного поиска
Перед добавлением индекса векторного поиска в качестве ресурса просмотрите предварительные требования к ресурсу приложения.
- При создании или изменении приложения перейдите к шагу "Настройка ".
- В разделе "Ресурсы приложения" нажмите кнопку +Добавить ресурс.
- Выберите индекс векторного поиска в качестве типа ресурса.
- Выберите индекс векторного поиска из доступных индексов в рабочей области. Индекс должен уже существовать в каталоге Unity.
- Выберите уровень разрешений для приложения:
- Может выбрать: Предоставляет приложению разрешение на запрос индекса векторного поиска для поиска сходства. Соответствует привилегии SELECT .
- (Необязательно) Укажите пользовательский ключ ресурса, который является ссылкой на индекс в конфигурации приложения. Ключ по умолчанию —
vector-search-index.
Замечание
Индексы векторного поиска — это таблицы каталога Unity с типом TABLE_ONLINE_VECTOR_INDEX_REPLICA или TABLE_ONLINE_VECTOR_INDEX_DIRECT. При выборе индекса векторного поиска вы выбираете специально настроенную таблицу, которая поддерживает семантические операции поиска.
Переменные среды
При развертывании приложения с ресурсом индекса векторного поиска Azure Databricks предоставляет полное трехуровневое имя с помощью переменных среды, на которые можно ссылаться с помощью valueFrom поля.
Пример конфигурации:
env:
- name: VECTOR_SEARCH_INDEX
valueFrom: vector-search-index # Use your custom resource key if different
Использование индекса в приложении:
import os
from databricks.sdk import WorkspaceClient
# Access the vector search index name
index_name = os.getenv("VECTOR_SEARCH_INDEX")
# Initialize workspace client
w = WorkspaceClient()
# Query the vector search index
results = w.vector_search_indexes.query_index(
index_name=index_name,
query_text="What is machine learning?",
num_results=10
)
# Process results
for result in results.manifest.columns:
print(f"Result: {result}")
Дополнительные сведения см. в разделе "Использование переменных среды для доступа к ресурсам".
Удаление ресурса индекса векторного поиска
При удалении ресурса индекса для векторного поиска из приложения, сервисный принципал приложения теряет доступ к индексу. Сам индекс остается неизменным и по-прежнему доступен для других пользователей и приложений, имеющих соответствующие разрешения.
Лучшие практики
При работе с ресурсами индекса векторного поиска следует учитывать следующее:
- Убедитесь, что сервис-принципал приложения имеет доступ к базовым источникам данных, если индекс содержит ссылки на другие таблицы.
- Отслеживайте производительность запросов и настраивайте конфигурацию индекса или модели внедрения, если время отклика ухудшается.
- Рассмотрите расписание обновления индекса, чтобы обеспечить синхронизацию внедренных данных с исходными данными.
- Используйте соответствующие метрики сходства (cosine, euclidean, dot product) на основе модели внедрения.