0Pricing
Azure Fundamentals · 강의

Azure OpenAI Service

Azure OpenAI Service에서 GPT 모델을 배포하고 스크립트에서 completions API를 호출하며, 책임 있는 인공지능 원칙과 콘텐츠 필터링 옵션을 이해합니다.

Azure OpenAI Service은(는) CoddyKit의 무료 Azure Fundamentals 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Azure Fundamentals 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Azure Fundamentals 강의에는 총 4개의 강의가 포함되어 있습니다.

Azure OpenAI Service란?

Azure OpenAI Service는 Microsoft의 Azure 클라우드 인프라를 통해 GPT-4, GPT-3.5-turbo, DALL-E, Embeddings 모델을 비롯한 OpenAI의 대규모 언어 모델에 액세스할 수 있도록 합니다. OpenAI API를 직접 사용하는 것과 달리 Azure OpenAI는 VNet/Private Link를 통한 프라이빗 네트워킹, Microsoft의 규정 준수 인증(ISO 27001, SOC 2, GDPR), 콘텐츠 필터링, 고객 데이터 개인정보 보호(사용자 데이터는 OpenAI 기본 모델 학습에 사용되지 않음), Azure RBAC 및 모니터링 통합과 같은 엔터프라이즈 기능을 제공합니다.

액세스 요청 및 모델 배포

Azure OpenAI를 사용하려면 승인된 구독이 필요합니다. 액세스가 제한되어 있으므로 양식을 통해 요청해야 합니다. 승인을 받으면 Azure OpenAI 리소스를 만든 다음 그 안에 배포를 만듭니다. 배포는 모델(예: gpt-4)을 배포 이름(예: my-gpt4) 및 토큰 할당량(분당 토큰 제한)에 연결합니다. API를 호출할 때는 기본 모델 이름이 아니라 배포 이름을 사용합니다. 서로 다른 모델이나 할당량을 사용하는 여러 배포가 하나의 리소스에 함께 존재할 수 있습니다.

# Create an Azure OpenAI resource
az cognitiveservices account create \
  --name myOpenAI \
  --resource-group myRG \
  --kind OpenAI \
  --sku S0 \
  --location eastus

# Create a deployment
az cognitiveservices account deployment create \
  --name myOpenAI \
  --resource-group myRG \
  --deployment-name my-gpt4 \
  --model-name gpt-4 \
  --model-version '0613' \
  --model-format OpenAI \
  --sku-name Standard \
  --sku-capacity 10

채팅 완성 API

채팅 완성 API(/openai/deployments/{deployment}/chat/completions)는 역할(system, user, assistant)이 지정된 메시지 목록을 받아 모델의 응답을 반환합니다. system 메시지는 모델의 동작과 페르소나를 설정합니다. user 메시지에는 프롬프트나 질문이 포함됩니다. 대화의 이전 발화는 메시지 배열에 포함되므로 모델이 여러 차례에 걸친 대화에서 문맥을 유지할 수 있습니다. Temperature(0~2)는 응답의 무작위성을 조절합니다.

# Chat completion API call
curl -X POST 'https://myOpenAI.openai.azure.com/openai/deployments/my-gpt4/chat/completions?api-version=2024-02-01' \
  -H 'api-key: <key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "messages": [
      {"role": "system", "content": "You are a helpful Azure expert."},
      {"role": "user", "content": "Explain what a Recovery Services vault is."}
    ],
    "temperature": 0.7,
    "max_tokens": 500
  }'

프롬프트 엔지니어링 기초

프롬프트 엔지니어링은 언어 모델에서 최상의 결과를 얻기 위해 효과적인 입력 메시지를 작성하는 방법입니다. 주요 기법은 다음과 같습니다. System prompt — 모델에 명확한 역할과 제약 조건을 부여합니다. Few-shot examples — 원하는 입력-출력 형식의 예시를 2~5개 보여 줍니다. Chain-of-thought — 최종 답변을 제시하기 전에 단계별로 생각하도록 모델에 요청합니다. Constraints — 형식, 길이, 피해야 할 내용을 모델에 명시적으로 지시합니다. 좋은 프롬프트는 환각을 줄이고 일관성을 높입니다.

의미 검색을 위한 임베딩

Embeddings는 의미를 포착하는 조밀한 수치 벡터로 텍스트를 변환합니다. 의미가 비슷한 두 텍스트는 벡터 공간에서 서로 가까운 벡터가 됩니다(코사인 유사도로 측정). Azure OpenAI 임베딩 엔드포인트(/embeddings)는 text-embedding-ada-002 모델을 사용하여 1,536차원 벡터를 생성합니다. 임베딩은 의미 검색(쿼리와 유사한 문서 찾기), RAG (검색 증강 생성), 추천 시스템을 구축하는 데 사용합니다.

# Get an embedding vector for a piece of text
curl -X POST 'https://myOpenAI.openai.azure.com/openai/deployments/my-embedding/embeddings?api-version=2024-02-01' \
  -H 'api-key: <key>' \
  -H 'Content-Type: application/json' \
  -d '{
    "input": "Azure Site Recovery replicates VMs to a secondary region."
  }'

콘텐츠 필터링

Azure OpenAI에는 프롬프트(입력)와 완성 결과(출력)에 모두 적용되는 다중 계층 콘텐츠 필터링 시스템이 포함되어 있습니다. 이 시스템은 혐오, 성적 콘텐츠, 폭력, 자해의 네 가지 범주에 해당하는 콘텐츠를 감지하고 차단합니다. 각 범주에는 낮음, 중간, 높음의 세 가지 심각도 수준이 있으며 범주별 필터링 임계값을 구성할 수 있습니다. 시스템 프롬프트를 무시하려는 프롬프트 주입 시도(탈옥)도 필터링됩니다. 콘텐츠 필터링은 기본적으로 켜져 있으며, 대부분의 모델에서는 사용 사례에 대한 정당한 사유 없이는 비활성화할 수 없습니다.

검색 증강 생성 (RAG)

RAG는 언어 모델의 학습 지식에만 의존하지 않고 자체 데이터에 기반하여 언어 모델의 응답을 생성합니다. 방식은 다음과 같습니다. (1) 문서를 벡터 저장소(예: Azure AI Search)에 색인합니다. (2) 사용자가 질문하면 질문을 임베딩하고 벡터 저장소에서 관련 문서 조각을 검색합니다. (3) 해당 조각을 문맥으로서 시스템 프롬프트에 포함합니다. (4) 모델이 제공된 문맥을 바탕으로 답변합니다. RAG는 환각을 줄이고 LLM이 미세 조정 없이 비공개 최신 데이터에 대한 질문에 답할 수 있도록 합니다.

파인 튜닝과 RAG 비교

사용자 지정 데이터를 활용해 모델의 기능을 확장하는 두 가지 접근 방식이 있습니다. 파인 튜닝은 사용자의 예제로 새 모델 버전을 학습시켜 지식을 모델 가중치에 반영합니다. 따라서 프롬프트로 설명하기 어려운 특정 스타일, 형식 또는 동작을 모델에 가르치는 데 가장 적합합니다. RAG는 추론 시점에 관련 정보를 검색해 컨텍스트로 제공합니다. 모델을 다시 학습시키는 대신 벡터 인덱스를 업데이트하면 되므로, 자주 변경되는 대규모 지식 기반에 더 적합합니다. 대부분의 엔터프라이즈 사용 사례에서는 비용이 더 낮고 반복 작업이 더 빠르기 때문에 RAG를 선호합니다.

Azure AI 스튜디오(AI 파운드리)

Azure AI 스튜디오(Azure AI 파운드리로 브랜드가 변경되는 중)는 Azure에서 생성형 AI 애플리케이션을 구축하기 위한 통합 포털입니다. 모델 완성을 대화형으로 시험하는 플레이그라운드, 정답 데이터 세트를 기준으로 모델 품질을 평가하는 도구, RAG 파이프라인을 REST API로 구축하고 배포하는 프롬프트 플로 디자이너, 개발자 작업 흐름을 위한 GitHub 및 VS 코드 통합 기능을 제공합니다. Azure AI 스튜디오는 모델 배포부터 실제 운영 환경의 AI 애플리케이션 구축까지의 과정을 간소화합니다.

토큰 가격 및 할당량 관리

Azure OpenAI의 요금은 처리된 토큰 1,000개를 기준으로 부과되며, 토큰 하나는 대략 문자 4개 또는 단어 0.75개에 해당합니다. 입력(프롬프트) 토큰과 출력(완성) 토큰 모두 요금이 부과됩니다. GPT-4는 GPT-3.5-turbo보다 토큰당 비용이 훨씬 높습니다. 각 배포에는 처리량을 제한해 악용을 방지하는 분당 토큰 수(TPM) 할당량이 있습니다. 애플리케이션이 할당량을 초과하면 API는 429 TooManyRequests를 반환합니다. 할당량 증가를 요청하거나 클라이언트 측 지수 백오프 및 재시도 로직을 구현할 수 있습니다.

생성형 AI를 위한 책임 있는 AI

Microsoft는 책임 있는 AI 원칙을 생성형 AI에 구체적으로 적용합니다. 근거성 — 응답은 검증 가능한 정보를 기반으로 해야 합니다(RAG가 이를 지원합니다). 투명성 — 사용자는 자신이 AI와 상호 작용하고 있다는 사실을 알아야 합니다. 유해성 방지 — 콘텐츠 필터가 유해한 출력을 차단합니다. 개인 정보 보호 — Azure OpenAI에 입력한 데이터는 OpenAI의 전 세계 모델을 학습시키는 데 사용되지 않습니다. Azure OpenAI를 기반으로 구축한 애플리케이션은 사용 사례 위험 평가를 포함하고, Microsoft의 허용 가능한 사용 정책에서 요구하는 대로 식별된 유해성을 완화하는 조치를 구현해야 합니다.

빠른 확인

이 단원에서 다룬 Microsoft Azure 기본 사항(AZ-900) 개념에 대한 이해도를 확인해 보세요.

단원 요약

이 단원에서는 다음을 배웠습니다. Azure OpenAI Service는 프라이빗 네트워킹 및 규정 준수 기능과 함께 GPT-4 및 기타 모델에 대한 엔터프라이즈급 액세스를 제공합니다. 채팅 완성 API는 시스템/사용자/어시스턴트 메시지 역할을 사용해 여러 차례에 걸친 대화를 지원합니다. 또한 임베딩 및 RAG는 프라이빗 데이터에 기반해 모델 응답을 생성함으로써 환각을 줄입니다. 다음으로는 Azure 제어 평면을 통해 하이브리드 및 온-프레미스 리소스를 관리하는 Azure Arc를 살펴봅니다.

자주 묻는 질문

“Azure OpenAI Service” 강의는 무료인가요?

네 — “Azure OpenAI Service” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Azure Fundamentals 강의 전체를 잠금 해제할 수 있습니다. Azure Fundamentals 강의에는 총 4개의 강의가 포함되어 있습니다.

“Azure OpenAI Service”에서 뭘 배우나요?

Azure OpenAI Service에서 GPT 모델을 배포하고 스크립트에서 completions API를 호출하며, 책임 있는 인공지능 원칙과 콘텐츠 필터링 옵션을 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 Azure Fundamentals을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Azure Fundamentals을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Azure Fundamentals은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.

“Azure OpenAI Service” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Azure Fundamentals 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Azure Fundamentals 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Azure Cognitive Services 개요
  2. 실습으로 배우는 Language 및 Vision API
  3. Azure Machine Learning Studio
  4. Azure OpenAI Service
← Azure Fundamentals(으)로 돌아가기