모델을 미세 조정한 후에는 채팅 완료 API 또는 평가 서비스를 통해 품질을 테스트할 수 있습니다 .
개발자 계층 배포를 사용하면 표준 또는 글로벌 배포에서 발생하는 시간당 호스팅 비용 없이 새 모델을 배포할 수 있습니다. 발생하는 유일한 요금은 토큰당입니다. 최신 가격 책정은 가격 책정 페이지를 참고하세요.
중요합니다
개발자 계층은 가용성 SLA를 제공하지 않으며 데이터 상주 보장 을 제공하지 않습니다. SLA 또는 데이터 상주가 필요한 경우 모델을 테스트하기 위한 대체 배포 유형을 선택합니다.
개발자 계층 배포의 수명은 24시간으로 고정됩니다. 배포 수명 주기에 대해 아래에서 자세히 알아봅니다.
미세 조정된 모델을 배포하세요
모델 후보를 배포하려면 배포할 미세 조정된 모델을 선택한 다음 배포를 선택합니다.
배포 모델 대화 상자가 열립니다. 대화 상자에서 배포 이름을 입력한 다음 배포 유형 드롭다운에서 개발자 를 선택합니다.
만들기를 선택하여 사용자 지정 모델의 배포를 시작합니다.
Microsoft Foundry 포털의 배포 창에서 새 배포 의 진행률을 모니터링할 수 있습니다.
import json
import os
import requests
token = os.getenv("<TOKEN>")
subscription = "<YOUR_SUBSCRIPTION_ID>"
resource_group = "<YOUR_RESOURCE_GROUP_NAME>"
resource_name = "<YOUR_AZURE_OPENAI_RESOURCE_NAME>"
model_deployment_name = "gpt41-mini-candidate-01" # custom deployment name that you will use to reference the model when making inference calls.
deploy_params = {'api-version': "2025-07-01-preview"}
deploy_headers = {'Authorization': 'Bearer {}'.format(token), 'Content-Type': 'application/json'}
deploy_data = {
"sku": {"name": "developertier", "capacity": 50},
"properties": {
"model": {
"format": "OpenAI",
"name": <"fine_tuned_model">, #retrieve this value from the previous call, it will look like gpt41-mini-candidate-01.ft-b044a9d3cf9c4228b5d393567f693b83
"version": "1"
}
}
}
deploy_data = json.dumps(deploy_data)
request_url = f'https://management.azure.com/subscriptions/{subscription}/resourceGroups/{resource_group}/providers/Microsoft.CognitiveServices/accounts/{resource_name}/deployments/{model_deployment_name}'
print('Creating a new deployment...')
r = requests.put(request_url, params=deploy_params, headers=deploy_headers, data=deploy_data)
print(r)
print(r.reason)
print(r.json())
| 변수 |
정의 |
| 토큰 |
권한 부여 토큰을 생성하는 방법에는 여러 가지가 있습니다. 초기 테스트를 위한 가장 쉬운 방법은 Azure Portal에서 Cloud Shell을 시작하는 것입니다. 그런 다음 az account get-access-token를 실행합니다. 이 토큰을 API 테스트를 위한 임시 권한 부여 토큰으로 사용할 수 있습니다. 새 환경 변수에 저장하는 것이 좋습니다. |
| 구독 |
연결된 Azure OpenAI 리소스에 대한 구독 ID. |
| 리소스 그룹 |
Azure OpenAI 리소스의 리소스 그룹 이름. |
| 리소스_이름 |
Azure OpenAI 리소스 이름. |
| 모델 배포 이름 |
미세 조정된 새 모델 배포의 사용자 지정 이름입니다. 채팅 완료 호출을 수행할 때 코드에서 참조되는 이름입니다. |
| 세밀하게 조정된 모델 |
이전 단계의 미세 조정 작업 결과에서 이 값을 검색합니다.
gpt41-mini-candidate-01.ft-b044a9d3cf9c4228b5d393567f693b83와 같이 표시됩니다. 해당 값을 deploy_data json에 추가해야 합니다. 또는 ftchkpt-e559c011ecc04fc68eaa339d8227d02d 형식으로 표시되는 검사점 ID를 전달하여 검사점을 배포할 수도 있습니다. |
다음 예제에서는 REST API를 사용하여 사용자 지정된 모델에 대한 모델 배포를 만드는 방법을 보여 줍니다. REST API는 사용자 지정 모델의 배포 이름을 생성합니다.
curl -X POST "https://management.azure.com/subscriptions/<SUBSCRIPTION>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.CognitiveServices/accounts/<RESOURCE_NAME>/deployments/<MODEL_DEPLOYMENT_NAME>?api-version=2025-07-01-preview" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"sku": {"name": "developertier", "capacity": 50},
"properties": {
"model": {
"format": "OpenAI",
"name": "<FINE_TUNED_MODEL>",
"version": "1"
}
}
}'
| 변수 |
정의 |
| 토큰 |
권한 부여 토큰을 생성하는 방법에는 여러 가지가 있습니다. 초기 테스트를 위한 가장 쉬운 방법은 Azure Portal에서 Cloud Shell을 시작하는 것입니다. 그런 다음 az account get-access-token를 실행합니다. 이 토큰을 API 테스트를 위한 임시 권한 부여 토큰으로 사용할 수 있습니다. 새 환경 변수에 저장하는 것이 좋습니다. |
| 구독 |
연결된 Azure OpenAI 리소스에 대한 구독 ID. |
| 리소스 그룹 |
Azure OpenAI 리소스의 리소스 그룹 이름. |
| 리소스_이름 |
Azure OpenAI 리소스 이름. |
| 모델 배포 이름 |
미세 조정된 새 모델 배포의 사용자 지정 이름입니다. 채팅 완료 호출을 수행할 때 코드에서 참조되는 이름입니다. |
| 세밀하게 조정된 모델 |
이전 단계의 미세 조정 작업 결과에서 이 값을 검색합니다.
gpt-4.1-mini-2025-04-14.ft-b044a9d3cf9c4228b5d393567f693b83와 같이 표시됩니다. 해당 값을 deploy_data json에 추가해야 합니다. 또는 ftchkpt-e559c011ecc04fc68eaa339d8227d02d 형식으로 표시되는 검사점 ID를 전달하여 검사점을 배포할 수도 있습니다. |
Azure CLI를 사용하여 모델 배포
다음 예제에서는 Azure CLI를 사용하여 사용자 지정된 모델을 배포하는 방법을 보여 줍니다. Azure CLI를 사용하면 사용자 지정 모델의 배포 이름을 지정해야 합니다. Azure CLI를 사용하여 사용자 지정된 모델을 배포하는 방법에 대한 자세한 내용은 az cognitiveservices account deployment을(를) 참조하세요.
콘솔 창에서 이 Azure CLI 명령을 실행하려면 다음 <자리 표시자>를 사용자 지정 모델에 해당하는 값으로 바꿔야 합니다.
| 플레이스홀더 |
가치 |
|
<YOUR_AZURE_SUBSCRIPTION> |
Azure 구독의 이름 또는 ID입니다. |
|
<YOUR_RESOURCE_GROUP> |
Azure 리소스 그룹의 이름입니다. |
|
<YOUR_RESOURCE_NAME> |
Azure OpenAI 리소스의 이름입니다. |
|
<YOUR_DEPLOYMENT_NAME> |
모델 배포에 사용하려는 이름입니다. |
|
<당신의_세밀하게_조정된_모델_ID> |
사용자 지정 모델의 이름입니다. |
az cognitiveservices account deployment create
--resource-group <YOUR_RESOURCE_GROUP>
--name <YOUR_RESOURCE_NAME>
--deployment-name <YOUR_DEPLOYMENT_NAME>
--model-name <YOUR_FINE_TUNED_MODEL_ID>
--model-version "1"
--model-format OpenAI
--sku-capacity "50"
--sku-name "Developer"
배포된 미세 조정된 모델을 사용합니다.
사용자 지정 모델을 배포한 후에는 배포된 다른 모델과 마찬가지로 사용할 수 있습니다.
Foundry 포털의 플레이그라운드를 사용하여 새 배포를 실험할 수 있습니다. 배포된 다른 모델과 마찬가지로 사용자 지정 모델 temperature과 max_tokens 같은 동일한 매개 변수를 계속 사용할 수 있습니다.
Evaluations 서비스를 사용하여 배포된 모델 후보와 다른 모델 버전에 대한 모델 평가를 만들고 실행할 수도 있습니다.
import os
from openai import OpenAI
client = OpenAI(
base_url = "https://YOUR-RESOURCE-NAME.openai.azure.com/openai/v1/",
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
)
response = client.chat.completions.create(
model="gpt41-mini-candidate-01", # model = "Custom deployment name you chose for your fine-tuning model"
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Does Azure OpenAI support customer managed keys?"},
{"role": "assistant", "content": "Yes, customer managed keys are supported by Azure OpenAI."},
{"role": "user", "content": "Do other Foundry Tools support this too?"}
]
)
print(response.choices[0].message.content)
curl $AZURE_OPENAI_ENDPOINT/openai/v1/chat/completions \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-d '"model": "YOUR_MODEL_DEPLOYMENT_NAME", {"messages":[{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": "Does Azure OpenAI support customer managed keys?"},{"role": "assistant", "content": "Yes, customer managed keys are supported by Azure OpenAI."},{"role": "user", "content": "Do other Foundry Tools support this too?"}]}'
배포 정리
개발자 배포는 활동에 관계없이 자체에서 자동으로 삭제됩니다. 각 배포에는 24시간 의 고정 수명이 있으며 그 후에는 제거될 수 있습니다. 배포 삭제는 기본 사용자 지정된 모델을 삭제하거나 영향을 주지 않으며 사용자 지정된 모델을 언제든지 다시 배포할 수 있습니다.
배포를 수동으로 삭제하려면 Foundry 포털을 사용하거나 Azure CLI를 사용할 수 있습니다.
배포 삭제 REST API를 사용하려면 HTTP DELETE 요청을 배포 리소스로 보냅니다. 배포를 만들 때와 마찬가지로 다음 매개 변수를 포함해야 합니다.
- Azure 구독 ID
- Azure 리소스 그룹 이름
- Azure OpenAI 리소스 이름
- 삭제할 배포의 이름
다음은 배포를 삭제하는 REST API 예제입니다.
curl -X DELETE "https://management.azure.com/subscriptions/<SUBSCRIPTION>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.CognitiveServices/accounts/<RESOURCE_NAME>/deployments/<MODEL_DEPLOYMENT_NAME>?api-version=2025-07-01-preview" \
-H "Authorization: Bearer <TOKEN>"
다음 단계