Перейти к основному содержимому Перейти к дополнительному содержимому

Начало работы с аналитическими подключениями

Создайте аналитическое подключение для загрузки и создания данных из моделей, развернутых из Qlik Cloud или из различных сторонних инструментов машинного обучения. Эти модели обычно открывают конечные точки API на базе REST. Прежде чем создавать и использовать подключение, необходимо создать и развернуть необходимые модели машинного обучения или получить доступ к существующим моделям.

Помимо Qlik AutoML, существует несколько сторонних платформ, которые позволяют создавать, обучать и разворачивать модели машинного обучения:

  • Azure ML

  • Amazon SageMaker

Обучение модели классификации с использованием AutoML без кода в Azure Machine Learning Studio

Начало работы с Amazon SageMaker

Включение аналитических коннекторов для конечных точек машинного обучения

Конечные точки машинного обучения по умолчанию отключены.

Администраторы клиента могут включить конечные точки машинного обучения в центре активности «Администрирование»: в области Контроль функции в окне Параметры.

Использование аналитических подключений и синтаксиса серверных расширений

Аналитические подключения могут отправлять данные в Qlik AutoML или во внешние открытые конечные точки машинного обучения для вычислений. Данные, возвращаемые этими подключениями, можно загружать в приложение Qlik Sense.

Аналитические подключения можно добавлять в приложение Qlik Sense с помощью скриптов загрузки данных и выражений диаграммы. И функции серверных расширений (SSE) и параметры обрабатываются в Qlik Sense, а затем преобразуются в запросы REST, отправляемые в модели машинного обучения. В скриптах загрузки и выражениях скрипта SSE должен учитываться синтаксис SSE. См. Синтаксис серверных расширений.

Скрипт загрузки данных

  • Можно вернуть таблицу из вызова функции SSE и загрузить данные из аналитических подключений с помощью оператора LOAD ... EXTENSION в скрипте загрузки данных Qlik Sense. Также можно отправить в модель одну таблицу, и в ответ будет возвращена одна таблица данных.

  • При использовании функции SSE в скрипте загрузки данных Qlik Sense (за исключением оператора LOAD ... EXTENSION) кардинальность сохраняется, и возвращается один столбец.

  • Вызовы функции SSE из любых других операторов загрузки, например Load ... From ..., поддерживают только скалярные функции и функции агрегирования. Это означает, что для данных, содержащих n строк, будет создано n вызовов, отправляемых в модель, если не будет выполнено агрегирование данных, при котором создается один вызов.

  • Типы данных в аналитических подключениях определяются автоматически. Если в составе данных отсутствуют числовые значения, однако содержится по крайней мере одна текстовая строка, отличная от NULL, поле считается текстовым. В противном случае поле считается числовым. Чтобы принудительно использовать тип данных, заключите имя поля в функцию String() или Mixed(). Если используется функция String(), значение поля рассматривается как текстовое. Если поле является числовым, текстовая часть двойного значения извлекается без выполнения преобразования. Если используется функция Mixed(), значение поля рассматривается как двойное.

Выражения диаграммы

  • Выражения диаграммы не могут использовать таблицу, возвращенную из вызова функции SSE. Когда функция SSE используется в выражении диаграммы, кардинальность сохраняется, а Qlik Sense будет использовать только первый возвращенный столбец.

Добавление ссылки на пространство подключения к данным

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

Для получения дополнительной информации об использовании синтаксиса с учетом пространства, см.:

Пример 1: относительный синтаксис с учетом пространства в скрипте загрузки

Следующий пример демонстрирует использование аналитического подключения в скрипте загрузки. Код изменен для указания на подключение в текущем пространстве приложения или скрипта. Для этого добавляется двоеточие в начале имени подключения (в данном случае, :Amazon_Titan_(Amazon_Bedrock)). Без этого двоеточия ссылка будет указывать на подключение в личном пространстве пользователя, выполняющего перезагрузку (или владельца графика перезагрузки).

EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":":Amazon_Titan_(Amazon_Bedrock)"}}', QuestionsTable{Question_ID,Question});

Этот синтаксис с учетом пространства можно использовать до публикации приложения или скрипта в управляемом пространстве, которое также содержит аналитическое подключение.

Пример 2: относительный синтаксис с учетом пространства в выражении диаграммы

Следующий пример представляет собой выражение диаграммы, содержащее ссылку на подключение в текущем пространстве. Для этого добавляется двоеточие в начале имени подключения (в данном случае, :Amazon_Titan_(Amazon_Bedrock)). Без этого двоеточия ссылка будет указывать на подключение в личном пространстве пользователя, выполняющего перезагрузку (или владельца графика перезагрузки).

if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":":Amazon_Titan_(Amazon_Bedrock)","column":"outputText"}}',vQuestion))

Этот синтаксис с учетом пространства можно использовать до публикации приложения или скрипта в управляемом пространстве, которое также содержит аналитическое подключение.

Пример 3: жестко закодированный синтаксис с учетом пространства в скрипте загрузки

Если требуется, чтобы ссылка на аналитическое подключение работала только в конкретном пространстве, можно жестко закодировать выражение, добавив в него прямую ссылку на пространство. Если не включить имя пространства (а также опустить двоеточие, добавленное в примерах 1 и 2), синтаксис становится жестко закодированным и указывает на подключение в личном пространстве пользователя, выполняющего перезагрузку (или владельца графика перезагрузки).

Если для добавления оператора load используется мастер Выбор данных, этот синтаксис будет использоваться автоматически.

EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Shared_Space:Amazon_Titan_(Amazon_Bedrock)"}}', QuestionsTable{Question_ID,Question});

В данном случае ссылка указывает на подключение в пространстве под именем My_Shared_Space.

Пример 4: жестко закодированный синтаксис с учетом пространства в выражении диаграммы

Данный пример похож на пример 3. Если не включить имя пространства (а также опустить двоеточие, добавленное в примерах 1 и 2), синтаксис становится жестко закодированным и указывает на подключение в личном пространстве пользователя, выполняющего перезагрузку (или владельца графика перезагрузки).

if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Shared_Space:Amazon_Titan_(Amazon_Bedrock)","column":"outputText"}}',vQuestion))

В данном случае ссылка указывает на подключение в пространстве под именем My_Shared_Space.

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!