Запрос обслуживаемой модели с помощью ai_query()

Внимание

Эта функция предоставляется в режиме общедоступной предварительной версии.

В этой статье описывается, как запрашивать конечную точку обслуживания модели из SQL.ai_query()

Что такое ai_query()?

Эта ai_query() функция — это встроенная функция SQL Azure Databricks, часть функций ИИ. Он позволяет использовать эти типы моделей из запросов SQL:

  • Пользовательские модели, размещенные конечной точкой обслуживания модели.
  • Модели, размещенные API модели Databricks Foundation.
  • Внешние модели (сторонние модели, размещенные за пределами Databricks).

Сведения о синтаксисе и шаблонах конструктора см. в разделе ai_query функции.

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

Требования

Запрос конечной точки с помощью ai_query()

Вы можете запросить модель за конечной точкой, используя ai_query() бессерверные или профессиональные хранилища SQL. Сведения о форматах запросов и ответов см. в моделях создания запросов и искусственного интеллекта.

Примечание.

  • Для Databricks Runtime 14.2 и более поздних версий эта функция поддерживается в средах записных книжек, включая записные книжки Databricks и задания.
  • Для Databricks Runtime 14.1 и ниже эта функция не поддерживается в средах записных книжек, включая записные книжки Databricks.

Пример. Запрос большой языковой модели

В следующем примере модель за конечной sentiment-analysis точкой запрашивается с набором text данных и указывает тип возвращаемого запроса.

SELECT text, ai_query(
    "sentiment-analysis",
    text,
    returnType => "STRUCT<label:STRING, score:DOUBLE>"
  ) AS predict
FROM
  catalog.schema.customer_reviews

Пример. Запрос прогнозной модели

В следующем примере выполняется запрос модели классификации за конечной spam-classification точкой для пакетного прогнозирования text наличия нежелательной почты в inbox_messages таблице. Модель принимает 3 входных компонента: метку времени, отправитель, текст. Модель возвращает логический массив.

SELECT text, ai_query(
  endpoint => "spam-classification",
  request => named_struct(
    "timestamp", timestamp,
    "sender", from_number,
    "text", text),
  returnType => "BOOLEAN") AS is_spam
FROM catalog.schema.inbox_messages