Поделиться через


Расширение ИИ Azure в Базе данных Azure для PostgreSQL

ОБЛАСТЬ ПРИМЕНЕНИЯ: База данных Azure для PostgreSQL — гибкий сервер

База данных Azure для PostgreSQL гибкое расширение сервера для ИИ Azure позволяет использовать большие языковые модели (LLMS) и создавать в базе данных широкие возможности создания приложений искусственного интеллекта.  Расширение ИИ Azure позволяет базе данных вызывать различные службы ИИ Azure, включая Azure OpenAI и Azure Cognitive Services , упрощая процесс разработки, позволяя легко интегрировать эти службы.

Включение расширения azure_ai

Прежде чем включить azure_ai на гибком сервере базы данных Azure для PostgreSQL, необходимо добавить его в разрешенный список, как описано в разделе использование расширений PostgreSQL, и проверить правильность добавления с помощью SHOW azure.extensions;.

Совет

Также может потребоваться включить pgvector расширение, так как оно обычно используется с azure_ai.

Затем можно установить расширение, подключився к целевой базе данных и выполнив команду CREATE EXTENSION . Необходимо повторить команду отдельно для каждой базы данных, в которой должно быть доступно расширение.

CREATE EXTENSION IF NOT EXISTS azure_ai;

Примечание.

Чтобы удалить расширение из текущей подключенной базы данных, используйте DROP EXTENSION azure_ai;.

Установка расширения azure_ai создает следующие три схемы:

  • azure_ai: основная схема, в которой находится таблица конфигурации и которая обеспечивает взаимодействие с ней.
  • azure_openai: функции и составные типы, связанные с OpenAI.
  • azure_cognitive: функции и составные типы, связанные с Cognitive Services.

Расширение также позволяет вызывать Azure OpenAI и Azure Cognitive Services.

Настройка расширения azure_ai

При настройке расширения необходимо предоставить конечные точки для подключения к службам ИИ Azure и ключам API, необходимым для проверки подлинности. Параметры службы хранятся с помощью следующих функций:

Разрешения

Ключи доступа к искусственному интеллекту Azure похожи на корневой пароль для учетной записи. Не забудьте защитить ключи доступа. Для безопасного управления и ротации ключей воспользуйтесь Azure Key Vault. Для управления служебными ключами, используемыми расширением, пользователь должен иметь роль azure_ai_settings_manager, предоставленную ему. Для следующих функций требуется роль:

  • azure_ai.set_setting
  • azure_ai.получить_настройку

Роль azure_ai_settings_manager по умолчанию предоставляется роли azure_pg_admin.

azure_ai.set_setting

Используется для задания параметров конфигурации.

azure_ai.set_setting(key TEXT, value TEXT)

Аргументы

key

Имя параметра конфигурации. Допустимые значения для key:

  • azure_openai.endpoint: поддерживаемая конечная точка OpenAI (например, https://example.openai.azure.com).
  • azure_openai.subscription_key: ключ подписки для ресурса OpenAI.
  • azure_cognitive.endpoint: поддерживаемая конечная точка Cognitive Services (например, https://example.cognitiveservices.azure.com).
  • azure_cognitive.subscription_key: ключ подписки для ресурса Cognitive Services.
value

TEXT представляет требуемое значение выбранного параметра.

azure_ai.get_setting

Используется для получения текущих значений параметров конфигурации.

azure_ai.get_setting(key TEXT)

Аргументы

Ключ

Имя параметра конфигурации. Допустимые значения для key :

  • azure_openai.endpoint: поддерживаемая конечная точка OpenAI (например, https://example.openai.azure.com).
  • azure_openai.subscription_key: ключ подписки для ресурса OpenAI.
  • azure_cognitive.endpoint: поддерживаемая конечная точка Cognitive Services (например, https://example.cognitiveservices.azure.com).
  • azure_cognitive.subscription_key: ключ подписки для ресурса Cognitive Services.

Возвращаемый тип

TEXT представляет текущее значение выбранного параметра.

azure_ai.version

azure_ai.version()

Возвращаемый тип

TEXT представляет текущую версию расширения ИИ Azure.

Примеры

Настройка конечной точки и ключа API для Azure OpenAI

select azure_ai.set_setting('azure_openai.endpoint','https://<endpoint>.openai.azure.com'); 
select azure_ai.set_setting('azure_openai.subscription_key', '<API Key>'); 

Получение ключа конечной точки и API для Azure OpenAI

select azure_ai.get_setting('azure_openai.endpoint');
select azure_ai.get_setting('azure_openai.subscription_key');

Проверка версии расширения ИИ Azure

select azure_ai.version();

Разрешения

Расширение azure_ai определяет роль с именем azure_ai_settings_manager, которая позволяет читать и записывать параметры, связанные с расширением. Только суперпользователи и члены azure_ai_settings_manager роли могут вызывать azure_ai.get_settings и azure_ai.set_settings функции. На гибком сервере База данных Azure для PostgreSQL всем azure_ai_settings_manager пользователям администратора назначена роль.

Обновление расширения ИИ Azure

Новые версии расширения могут вводить новые функции, и разрешены обновления расширения без переустановки. Вы можете сравнить текущую установленную версию с самой новой версией, разрешенной с помощью команды SQL:

SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'

Чтобы обновить установленное расширение до последней доступной версии, поддерживаемой Azure, используйте следующую команду SQL:

ALTER EXTENSION azure_ai UPDATE;