Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
По умолчанию стандартные конечные точки поддерживают 20–200 QPS в зависимости от размера индекса. Приложения в режиме реального времени, такие как панели поиска, системы рекомендаций и сопоставление сущностей, часто требуют 100–1000+ QPS. Только в стандартных конечных точках можно задать целевой QPS. Databricks подготавливает инфраструктуру к оптимальному уровню пропускной способности (не гарантируется).
Внимание
Установка целевого значения QPS приводит к выделению дополнительных ресурсов, что увеличивает стоимость эндпоинта. Плата за эту дополнительную емкость взимается независимо от фактического трафика запросов. Масштабирование пропускной способности выполняется по мере возможности и не гарантируется.
Используйте высокий уровень QPS, если:
- Для приложения требуется более 50 QPS устойчивой пропускной способности.
- При обычной загрузке возникают ошибки 429 (слишком много запросов).
- Задержка снижается по мере увеличения трафика, даже если средняя загрузка отображается низкой.
Requirements
- Высокий уровень QPS доступен только для стандартных конечных точек. Оптимизированные для хранения конечные точки не поддерживаются.
- Используйте OAuth-аутентификацию субъекта-службы и URL-адрес индекса для производственных рабочих нагрузок с высоким QPS. Личные маркеры доступа (PAT) и URL-адрес запроса к рабочей области подходят для прототипирования, но они не используют оптимизированный путь выполнения запросов и ограничены лишь несколькими десятками запросов в секунду (QPS).
- Для индексов Delta Sync, использующих управляемые модели внедрения для текстовых запросов, оптимизированный маршрут запросов недоступен, если рабочая область использует списки IP-доступа или частное подключение, например Приватный канал Azure. В этой конфигурации конечная точка может не достичь настроенного целевого QPS.
Настройка целевого QPS
Задайте целевой QPS при создании новой конечной точки или обновлении существующей. Дополнительная емкость, необходимая для оптимального соответствия целевой пропускной способности, подготавливается автоматически. Масштабирование пропускной способности является оптимальным и не гарантируется: фактический QPS зависит от размера индекса, векторности измерения, сложности запросов и использования фильтров.
Пользовательский интерфейс Databricks
При создании новой конечной точки:
На левой боковой панели щелкните "Вычисления".
Щелкните вкладку "Поиск ИИ" и нажмите кнопку "Создать конечную точку".
В разделе "Дополнительные параметры" введите значение целевого QPS .
При обновлении существующей конечной точки:
Перейдите на страницу сведений о конечной точке.
На правой панели щелкните значок
рядом с Target QPS.
Введите новое значение и нажмите кнопку "Сохранить".
пакет SDK Python
from databricks.ai_search.client import AISearchClient
client = AISearchClient()
# Create a new endpoint with target QPS
endpoint = client.create_endpoint(
name="my-high-qps-endpoint",
endpoint_type="STANDARD",
target_qps=500,
)
# Update an existing endpoint's target QPS
response = client.update_endpoint(name="my-endpoint", target_qps=500)
# Check scaling status
scaling_info = response.get("endpoint", {}).get("scaling_info", {})
print(f"Requested target QPS: {scaling_info.get('requested_target_qps')}")
print(f"State: {scaling_info.get('state')}")
# State is "SCALING_CHANGE_IN_PROGRESS" while capacity is being provisioned,
# then transitions to "SCALING_CHANGE_APPLIED"
REST API
Создайте конечную точку с указанным целевым значением QPS:
POST /api/2.0/vector-search/endpoints
{
"name": "my-high-qps-endpoint",
"endpoint_type": "STANDARD",
"target_qps": 500
}
Обновите целевое значение QPS для существующей конечной точки:
PATCH /api/2.0/vector-search/endpoints/<ENDPOINT_NAME>
{
"target_qps": 500
}
Проверьте состояние масштабирования:
GET /api/2.0/vector-search/endpoints/<ENDPOINT_NAME>
В поле ответа scaling_info отображаются requested_target_qps и масштаб state. Состояние — SCALING_CHANGE_IN_PROGRESS во время выделения емкости, затем оно меняется на SCALING_CHANGE_APPLIED.
Запросить URL-адрес индекса
После того как состояние масштабирования конечной точки станет SCALING_CHANGE_APPLIED, отправляйте запросы на URL-адрес индекса с помощью токена OAuth сервисного субъекта. Этот URL-адрес необходим для использования дополнительной емкости запроса, подготовленной target_qps.
Для приложений Python вызовите get_index() один раз и повторно используйте возвращаемый объект индекса. Пакет SDK Python отправляет запросы по URL-адресу индекса.
from databricks.ai_search.client import AISearchClient
client = AISearchClient(
service_principal_client_id="...",
service_principal_client_secret="...",
workspace_url="https://<workspace-url>",
)
index = client.get_index(endpoint_name="my-high-qps-endpoint", index_name="catalog.schema.index")
# Reuse this index object for every query.
index.similarity_search(query_vector=[...], columns=["id", "text"], num_results=10)
Для приложений REST или не Python сначала получите URL-адрес индекса, а затем отправьте запросы на этот URL-адрес. Токен должен быть OAuth-токеном субъекта-службы.
export WORKSPACE_URL=https://<workspace-url>
export INDEX_NAME=catalog.schema.index
export TOKEN=<oauth-token>
export INDEX_URL=$(curl -X GET \
-H "Authorization: Bearer $TOKEN" \
"$WORKSPACE_URL/api/2.0/vector-search/indexes/$INDEX_NAME" \
| jq -r '.status.index_url')
case "$INDEX_URL" in
http://*|https://*) ;;
*) INDEX_URL="https://$INDEX_URL" ;;
esac
curl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
"$INDEX_URL/query" \
--data '{"num_results": 10, "query_vector": [...], "columns": ["id", "text"]}'
Не используйте URL-адрес запроса рабочей области, например /api/2.0/vector-search/indexes/<index_name>/query, для промышленного трафика с высокой частотой запросов (QPS). Этот URL-адрес не использует оптимизированный маршрут запроса и может возвращать 429 ошибок, прежде чем конечная точка достигнет настроенного целевого QPS.
Применение масштабирования
После установки целевого QPS необходимая емкость подготавливается автоматически. Новый уровень пропускной способности применяется после завершения подготовки; Для активации изменения не требуется синхронизировать индексы.
Примечание.
Попытка обновить целевой QPS во время выполнения операции масштабирования возвращает ошибку RESOURCE_CONFLICT . Дождитесь завершения текущей операции перед повтором.
Устранение ошибки 429
Для рабочих нагрузок с высоким уровнем QPS используйте эти проверки, чтобы найти узкие места:
- Если вы используете PAT или URL-адрес запроса к рабочей области, переключитесь на аутентификацию OAuth для субъекта-службы и URL-адрес индекса.
- Если
scaling_info.stateимеет состояниеSCALING_CHANGE_IN_PROGRESS, дождитесь, пока состояние не изменится наSCALING_CHANGE_APPLIED. - Если приложение отправляет векторные запросы с
query_vector, модель эмбеддингов не участвует в обработке запроса. Если 429 ошибок продолжаются после завершения масштабирования, уменьшите параллелизм запросов или задайте более высокийtarget_qpsуровень. - Если ваше приложение отправляет текстовые запросы в индекс Delta Sync, использующий модели эмбеддингов под управлением Databricks, то модель эмбеддингов может быть узким местом. Используйте меньшую модель эмбеддингов, например
databricks-qwen3-embedding-0-6b, вместоdatabricks-gte-large-en, или используйте эндпоинт API базовых моделей с выделенной пропускной способностью или другой выделенный эндпоинт обслуживания моделей для эмбеддингов.
Ограничения
- Автоматическое масштабирование не выполняется. Необходимо вручную задать целевой QPS на основе ожидаемого трафика. Если трафик превышает подготовленный уровень, возникают ошибки 429. См. раздел "Планирование пиков запросов".
-
Только стандартные конечные точки: оптимизированные для хранения конечные точки не поддерживаются
target_qps. - Требуется оптимизированный маршрут: настроенный целевой QPS применяется к трафику, использующим проверку подлинности OAuth субъекта-службы и URL-адрес индекса. Трафик, связанный с PAT, и трафик к URL запросов рабочей области ограничены несколькими десятками QPS.
- Управляемые модели внедрения могут добавить второе ограничение: для индексов Delta Sync, использующих управляемую модель внедрения для текстовых запросов, пропускная способность запросов также зависит от конечной точки обслуживания модели внедрения. Увеличьте емкость обслуживания модели, используйте подготовленную пропускную способность или используйте самоуправляемые внедрения для прогнозируемой пропускной способности запросов.