Azure Database for PostgreSQL azure_ai 확장을 사용하면 데이터베이스 내 LLM(대규모 언어 모델)을 사용하여 생성 AI 애플리케이션을 빌드할 수 있습니다. 데이터베이스는 Microsoft Foundry 모델,
azure_ai 확장을 사용하도록 설정하기
azure_ai 확장을 사용하려면 해당 확장을 허용 목록에 추가한 다음 Azure Database for PostgreSQL 인스턴스에 설치해야 합니다. 시작하려면 아래 단계를 따르세요.
확장을 허용 목록에 추가합니다.
azure_ai를 귀하의 Azure Database for PostgreSQL 유연한 서버 허용 목록에 추가하며, 이는 PostgreSQL 확장 사용 방법에 설명된 대로 입니다. 쿼리를 실행하여 올바르게 추가되었는지 확인합니다 SHOW azure.extensions; .
익스텐션 설치
데이터베이스에 연결하고 다음 명령을 실행합니다 CREATE EXTENSION .
CREATE EXTENSION IF NOT EXISTS azure_ai;
확장이 필요한 각 데이터베이스에 대해 이 명령을 반복합니다.
azure_ai를 설치하면 다음 스키마를 생성합니다.
-
azure_ai: 구성 및 관련 기능에 대한 주된 스키마 -
azure_openai: Foundry 모델의 Azure OpenAI 함수 및 형식과 Microsoft Foundry의 OpenAI 모델 -
azure_cognitive: Azure Cognitive Services의 함수 및 형식(Foundry 도구의 Azure 언어) -
azure_ml: Azure Machine Learning Services의 함수 및 형식
팁 (조언)
또한 Azure Database for PostgreSQL에서 pgvector를 사용하도록 설정하고 활용하기 를 사용 설정하는 것도 좋습니다. 이 기능은 azure_ai과 함께 자주 사용됩니다.
비고
현재 데이터베이스에서 확장을 제거하려면 .를 실행합니다 DROP EXTENSION azure_ai;.
azure_ai 확장 구성하기
확장을 구성하려면 사용하려는 Azure AI + 기계 학습 서비스에 대한 엔드포인트 및 인증 세부 정보(API 키 또는 관리 ID)를 제공합니다.
azure_ai.set_setting 다양한 구성 키와 함께 구성 함수를 사용하여 이러한 값을 저장합니다.
Permissions
확장은 azure_ai_settings_manager 역할을 정의하여, azure_ai.set_getting 및 azure_ai.set_setting 함수를 사용해 구성 설정을 읽고 쓸 수 있는 권한을 부여합니다. 이 역할의 슈퍼 사용자와 멤버만 이러한 함수를 호출할 수 있습니다. Azure Database for PostgreSQL 유연한 서버에서 azure_pg_admin 역할은 기본적으로 이 역할을 부여합니다.
구성 함수
azure_ai_set_setting
AI + 기계 학습 구성을 설정합니다.
사용법:
-- Syntax
azure_ai.set_setting(key TEXT, value TEXT)
-- Usage example: Set the Endpoint and an API Key for 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>');
지원되는 구성 키 및 값 목록:
key |
value |
|---|---|
azure_openai.endpoint |
지원되는 OpenAI 엔드포인트(예: https://example.openai.azure.com). |
azure_openai.auth_type |
subscription-key 또는 managed-identity |
azure_openai.subscription_key |
OpenAI 리소스에 대한 구독 키입니다. |
azure_cognitive.endpoint |
지원되는 Cognitive Services 엔드포인트(예: https://example.cognitiveservices.azure.com) |
azure_cognitive.auth_type |
subscription-key 또는 managed-identity |
azure_cognitive.subscription_key |
Cognitive Services 리소스에 대한 구독 키 |
azure_ml.scoring_endpoint |
지원되는 Machine Learning 온라인 엔드포인트 URI입니다. |
azure_ml.auth_type |
subscription-key 또는 managed-identity |
azure_ml.endpoint_key |
Azure ML 엔드포인트에 대한 엔드포인트 키입니다. |
azure_ai.get_setting
지정된 key 항목에 대한 현재 구성 값을 가져옵니다(위의 목록에서 지원되는 키 참조). 선택한 설정의 현재 값을 나타내는 반환 TEXT 입니다.
사용법:
-- Syntax
azure_ai.get_setting(key TEXT)
-- Usage example: Get the Endpoint and API Key for Azure OpenAI
select azure_ai.get_setting('azure_openai.endpoint');
select azure_ai.get_setting('azure_openai.subscription_key');
azure_ai.version
현재 버전의 TEXT 확장을 나타내는 azure_ai을 반환합니다.
사용법:
SELECT azure_ai.version()
관리 ID 인증 사용
Azure Database for PostgreSQL azure_ai 확장은 향상된 보안 이점을 제공하는 SAMI(시스템 할당 관리 ID)를 지원합니다. Microsoft Entra ID 사용하면 액세스 키 없이 인증하여 무단 액세스 위험을 줄이고 자격 증명 관리를 간소화할 수 있습니다.
관리 ID 인증을 사용하도록 설정하려면 이 방법 가이드를 참조하세요.
azure_ai 확장 기능의 능력들
AI 기능
azure_ai 확장을 사용하면 다음 AI 함수(미리 보기)을 통해 Foundry 및 Azure OpenAI에 호스트된 모델에 대한 데이터베이스 내 호출을 사용할 수 있습니다.
- Azure Database for PostgreSQL Azure OpenAI를 사용하여 벡터 포함 생성: 지정된 입력 텍스트에 대한 벡터 포함을 만듭니다.
-
azure_ai.generate(): LLM(큰 언어 모델)을 사용하여 텍스트 또는 구조적 출력을 생성합니다. -
azure_ai.is_true(): 지정된 문이 사실일 가능성을 평가합니다. -
azure_ai.extract(): 텍스트에서 구조화된 기능이나 엔터티를 추출합니다. -
azure_ai.rank(): 지정된 쿼리와의 관련성을 기준으로 문서 목록을 다시 순위 지정합니다.
추가 기능
확장은 호출도 지원합니다.
- Azure Cognitive Services를 사용하여 Azure Database for PostgreSQL 통합: 데이터베이스 내에서 감정 분석과 같은 작업을 직접 사용하도록 설정합니다.
- Azure Machine Learning Services를 사용하여 Azure Database for PostgreSQL 통합: Machine Learning 카탈로그 또는 사용자 지정 학습 배포에서 모델을 호출할 수 있습니다.
AI + 기계 학습 확장 업그레이드
설치된 버전 및 사용 가능한 업그레이드를 확인하려면 다음을 실행합니다.
SELECT * FROM pg_available_extensions
WHERE name = 'azure_ai'
확장을 지원되는 최신 버전으로 업데이트하려면 다음을 실행합니다.
ALTER EXTENSION azure_ai UPDATE;