메모
Azure AI 검색 Azure 포털, REST API 및 Azure SDK 통해 사용할 수 있습니다. 또한 엔터프라이즈 콘텐츠를 Microsoft Foundry 포털의 에이전트에 대해 재사용 가능한 사용 권한 인식 기술 자료로 변환하는 관리되는 기술 계층인 Foundry IQ를 뒷받침합니다.
Important
이러한 기능과 기능은 다른 Microsoft 서비스 및 타사 서비스에 대한 연결을 지원합니다. 이러한 서비스의 사용은 해당 약관의 적용을 받으며 Azure 규정 준수 경계 외부의 데이터 처리 또는 스토리지뿐만 아니라 Azure 규정 준수 경계로 데이터가 유입될 수 있습니다.
데이터가 조직의 규정 준수 및 지리적 경계와 관련된 의미를 벗어나는지 여부와 적절한 권한, 경계 및 승인이 프로비전되는지를 관리하는 것은 사용자의 책임입니다.
특정 사용 사례의 컨텍스트에서 빌드한 애플리케이션을 신중하게 검토하고 테스트하고 모든 적절한 결정 및 사용자 지정을 수행할 책임이 있습니다. 여기에는 메타프롬프트, 콘텐츠 필터 또는 기타 안전 시스템과 같은 책임 있는 AI 완화를 구현하고 애플리케이션이 적절한 품질, 안정성, 보안 및 신뢰성 표준을 충족하도록 보장하는 것이 포함됩니다. 자세한 내용은 Azure AI 검색 투명도 참고 참조하세요.
GenAI(생성 AI) 프롬프트 스킬은 Azure Foundry Models 또는 Microsoft Foundry에 배포된 대형 언어 모델(LLM)에 대해 Chat 완료 요청을 실행합니다. 이 기술을 활용해 색인화하고 검색 가능한 콘텐츠로 저장할 수 있는 새로운 정보를 생성하세요.
다음은 GenAI 프롬프트 스킬이 콘텐츠 제작에 어떻게 도움이 될 수 있는지 몇 가지 예시입니다:
- 이미지 언어화
- 긴 텍스트 구절을 요약하세요
- 복잡한 내용을 단순화하세요
- 프롬프트에서 명확히 표현할 수 있는 다른 어떤 작업이든 수행하세요
GenAI 프롬프트 스킬은 일반적으로 2026-04-01 Search Service REST API 및 이 버전을 대상으로 하는 Azure SDK에서 제공됩니다. 이 기술은 텍스트, 이미지, 그리고 PDF 파일에서 추출한 시각적 이미지와 텍스트가 포함된 멀티모달 콘텐츠를 지원합니다.
Tip
이 기술을 데이터 청크 기술과 결합하는 경우가 흔합니다. 멀티모달 튜토리얼은 두 가지 다른 데이터 청킹 전략을 사용한 이미지 언어화를 시연합니다.
지원되는 모델
GPT 모델, DeepSeek-R#, Llama-4-Maverick 및 Cohere-command-r과 같이 Foundry에 배포된 채팅 완료 유추 모델을 사용할 수 있습니다. 특히 GPT 모델의 경우, 채팅 완료 API 엔드포인트만 지원됩니다. Azure OpenAI 응답 API(URI에
/openai/responses포함)를 사용하는 엔드포인트는 현재 호환되지 않습니다.이미지 언어화의 경우, 이미지를 분석하는 데 사용하는 모델이 지원하는 이미지 형식을 결정합니다.
GPT-5 모델의 경우,
temperature이 매개변수는 이전 모델들과 같은 방식으로 지원되지 않습니다. 정의가 되어 있다면, 다른 값이 오류를 일으킬 수 있으므로 로 설정1.0해야 합니다.청구는 사용하는 모델의 가격에 따라 결정됩니다.
메모
검색 서비스는 공개 엔드포인트를 통해 모델에 연결되므로 지역 위치 요구사항이 없습니다. 하지만 올업 Azure 솔루션을 사용한다면, Azure AI 검색 regions와 Azure OpenAI 모델 리전를 확인해 적합한 조합을 찾아야 합니다. 특히 데이터 거주 요건이 있다면 더욱 그렇습니다.
사전 요구 사항
귀하의 리소스나 프로젝트에 배포된 지원 모델 .
OpenAI Azure 경우, Azure 포털의
openai.azure.com페이지에서 도메인이 포함된 엔드포인트를 복사하세요. 이 끝점에서 이 스킬의 파라미터를Uri사용하세요.Foundry의 경우, Foundry 포털의 모델 페이지에서 배포용 대상 URI를 복사하세요. 이 끝점에서 이 스킬의 파라미터를
Uri사용하세요.
인증은 Foundry나 Azure OpenAI 리소스에서 API 키를 통해 키 기반으로 할 수 있습니다. 하지만 역할에 할당된 검색 서비스 관리 신원 을 이용한 역할 기반 접근을 권장합니다.
OpenAI Azure 관리된 신원에 Cognitive Services OpenAI User를 할당합니다.
Foundry에서 Foundry 사용자를 관리 ID에 할당합니다.
Important
Foundry RBAC 역할의 이름이 최근에 바뀌었습니다. Foundry User, Foundry OwnerFoundry 계정 소유자 및 Foundry Project Manager는 이전에 Azure AI 사용자, Azure AI 소유자, Azure AI 계정 소유자 및 Azure AI Project Manager로 이름이 지정되었습니다. 이름 바꾸기가 롤아웃되는 동안 일부 위치에서는 이전 이름이 계속 표시될 수 있습니다. 역할 ID 및 핵심 권한은 이름 바꾸기에 의해 변경되지 않습니다.
@odata.type
#Microsoft.Skills.Custom.ChatCompletionSkill
데이터 제한
| Limit | Notes |
|---|---|
maxTokens |
기본 기준은 1024 입니다. 최대 값은 모델에 따라 다릅니다. |
| 요청 시간 제한 | 30초로 고정됨. 벌크 인덱싱 모델을 선택할 때 이 한계를 고려하세요. 추론 모델(예: o1, o3)이 이를 초과할 수 있기 때문입니다. |
| 이미지 | Base 64 인코딩된 이미지와 이미지 URL을 지원합니다. 크기 제한은 모델에 따라 다릅니다. |
기술 매개 변수
| 재산 | Type | 필수 | Notes |
|---|---|---|---|
uri |
string | 예 | 배포된 모델의 엔드포인트입니다. 지원되는 도메인은 다음과 같습니다:
API Management 사용자 지정 도메인을 포함하여 Azure API Management 엔드포인트도 지원됩니다. 인증, RBAC 및 선택적 프라이빗 연결을 비롯한 설정은 Azure OpenAI 기술 및 벡터라이저와 함께 Azure API Management 사용 참조하세요. |
apiKey |
string | Cond.* | 모델의 비밀 키. 관리 신원을 사용할 때는 빈칸으로 남겨두세요. |
authIdentity |
string | Cond.* | User-assigned 관리 신원 클라이언트 ID (Azure OpenAI 전용). 시스템에서 할당한 신원을 사용하려면 빈칸으로 남겨두세요. |
commonModelParameters |
object | No | , , 등과 같은 temperaturemaxTokens표준 생성 제어가 있습니다. |
extraParameters |
object | No | 오픈 사전이 기본 모델 API로 전달됩니다. |
extraParametersBehavior |
string | No |
"pass-through"
|
"drop"
|
"error" (기본값 "error"). |
responseFormat |
object | No | 모델이 텍스트, 자유 형식 JSON 객체, 또는 강타입 JSON 스키마를 반환할지 제어합니다.
responseFormat 탑재체 예시: {responseFormat: { type: text }}, {responseFormat: { type: json_object }}, {responseFormat: { type: json_schema }} |
* 서비스 중 apiKeyauthIdentity 또는 시스템에 할당된 식별 정보를 사용해야 합니다.
commonModelParameters 기본 설정
| 매개 변수 | 기본값 |
|---|---|
model |
(배포 기본값) |
frequencyPenalty |
0 |
presencePenalty |
0 |
maxTokens |
1024 |
temperature |
0.7 |
seed |
없음 |
stop |
없음 |
기술 입력
| 입력 이름 | Type | 필수 | Description |
|---|---|---|---|
systemMessage |
string | 예 | 시스템 수준의 지시(예: "당신은 도움이 되는 조수입니다."). |
userMessage |
string | 예 | 사용자 프롬프트입니다. |
text |
string | No | 선택적 텍스트가 (텍스트 전용 시나리오)에 userMessage 추가됩니다. |
image |
string (베이스 64 데이터-URL) | No | 프롬프트에 이미지를 추가합니다(멀티모달 모델만). |
imageDetail |
문자열 (low | high | auto) |
No | Azure OpenAI 멀티모달 모델에 대한 충실도 힌트입니다. |
기술 성과
| 출력 이름 | Type | Description |
|---|---|---|
response |
문자열 또는 JSON 객체 | 모델 출력은 요청된 형식으로 진행됩니다 responseFormat.type. |
usageInformation |
JSON 개체 | 토큰 수와 모델 파라미터의 에코. |
샘플 정의
텍스트 전용 요약
{
"@odata.type": "#Microsoft.Skills.Custom.ChatCompletionSkill",
"name": "Summarizer",
"description": "Summarizes document content.",
"context": "/document",
"inputs": [
{ "name": "text", "source": "/document/content" },
{ "name": "systemMessage", "source": "='You are a concise AI assistant.'" },
{ "name": "userMessage", "source": "='Summarize the following text:'" }
],
"outputs": [ { "name": "response" } ],
"uri": "https://demo.openai.azure.com/openai/deployments/gpt-4o/chat/completions",
"apiKey": "<api-key>",
"commonModelParameters": { "temperature": 0.3 }
}
텍스트 + 이미지 설명
{
"@odata.type": "#Microsoft.Skills.Custom.ChatCompletionSkill",
"name": "Image Describer",
"context": "/document/normalized_images/*",
"inputs": [
{ "name": "image", "source": "/document/normalized_images/*/data" },
{ "name": "imageDetail", "source": "=high" },
{ "name": "systemMessage", "source": "='You are a useful AI assistant.'" },
{ "name": "userMessage", "source": "='Describe this image:'" }
],
"outputs": [ { "name": "response" } ],
"uri": "https://demo.openai.azure.com/openai/deployments/gpt-4o/chat/completions",
"authIdentity": "11111111-2222-3333-4444-555555555555",
"responseFormat": { "type": "text" }
}
구조화된 수치 사실 찾기
{
"@odata.type": "#Microsoft.Skills.Custom.ChatCompletionSkill",
"name": "NumericalFactFinder",
"context": "/document",
"inputs": [
{ "name": "systemMessage", "source": "='You are an AI assistant that helps people find information.'" },
{ "name": "userMessage", "source": "='Find all the numerical data and put it in the specified fact format.'"},
{ "name": "text", "source": "/document/content" }
],
"outputs": [ { "name": "response" } ],
"uri": "https://demo.openai.azure.com/openai/deployments/gpt-4o/chat/completions",
"apiKey": "<api-key>",
"responseFormat": {
"type": "json_schema",
"jsonSchemaProperties": {
"name": "NumericalFactObj",
"strict": true,
"schema": {
"type": "object",
"properties": "{\"facts\":{\"type\":\"array\",\"items\":{\"type\":\"object\",\"properties\":{\"number\":{\"type\":\"number\"},\"fact\":{\"type\":\"string\"}},\"required\":[\"number\",\"fact\"]}}}",
"required": [ "facts" ],
"additionalProperties": false
}
}
}
}
샘플 출력 (단축)
{
"response": {
"facts": [
{ "number": 32.0, "fact": "Jordan scored 32 points per game in 1986-87." },
{ "number": 6.0, "fact": "He won 6 NBA championships." }
]
},
"usageInformation": {
"usage": {
"completion_tokens": 203,
"prompt_tokens": 248,
"total_tokens": 451
}
}
}
모범 사례
- 텍스트 분할 스킬로 긴 문서를 대괄 작성해 모델의 컨텍스트 창 내에 머무르세요.
- 대용량 인덱싱의 경우, 이 기술에 별도의 모델 배포를 할당하여 쿼리 시 RAG 워크로드의 토큰 할당량에 영향을 주지 않도록 하세요.
- 지연을 최소화하려면 모델과 Azure AI 검색 서비스를 같은 Azure 지역 내에 동일하게 위치시키세요.
- 신뢰할 수 있는 구조적 추출과 필드 인덱싱 매핑을 쉽게 하기 위해
responseFormat.json_schema와 함께 사용 하세요. - 토큰 사용량을 모니터링하고, 인덱서가 분당 토큰(TPM) 한도를 초과하면 할당량 증가 요청을 제출하세요.
오류 및 경고
| Condition | 결과 |
|---|---|
누락 또는 무효 uri |
오류 |
| 인증 방법은 명시되지 않았습니다 | 오류 |
둘 다 apiKeyauthIdentity 공급된 제품입니다 |
오류 |
| 지원되지 않는 다중 모드 프롬프트 모델 | 오류 |
| 입력이 모델 토큰 한도를 초과합니다 | 오류 |
모델이 대해 유효하지 않은 JSON을 반환합니다. json_schema |
경고: 반환된 원시 문자열 response |
관리 ID 인증에 대한 보안 고려 사항
GenAI 프롬프트 기술이 관리 ID 인증을 사용하는 경우 Azure AI 검색 Foundry Tools 대상 그룹()에 대한 Microsoft Entra 액세스 토큰을https://cognitiveservices.azure.com 가져오고 지정된 엔드포인트로 전송된 uri요청에 포함합니다. 관리 ID 인증은 설정된 경우 authIdentity 또는 둘 다 apiKey 비어 있고 authIdentity 서비스가 시스템 할당 ID를 사용하는 경우에 적용됩니다.
참조되는 uri 엔드포인트는 사용자 고유의 Azure OpenAI 또는 Foundry 리소스여야 합니다. 지원되는 도메인은 다음과 같습니다:
openai.azure.comcognitiveservices.azure.comservices.ai.azure.com
APIM(Azure API Management) 엔드포인트(*.azure-api.net) 및 이러한 리소스 앞에 있는 사용자 지정 도메인도 지원됩니다. 사용자 지정 도메인 또는 APIM 호스트 이름은 이름에서만 확인할 수 없으므로 Azure AI 검색 도메인 일치가 아닌 구성 시간에 라이브 연결 검사를 사용하여 이러한 엔드포인트의 유효성을 검사합니다. 엔드포인트와 Azure OpenAI 또는 Foundry 리소스 간의 관계를 구성하고 유지 관리해야 합니다.
메모
Foundry Tools 대상 그룹에 대해 발급된 관리 ID 토큰은 Id가 권한이 부여된 모든 Foundry 도구 또는 Azure OpenAI 리소스에 대해 유효합니다. 신뢰할 수 없는 엔드포인트로 보내면 토큰이 노출될 수 있습니다.
권장 보안 방법
보안 배포를 유지 관리하려면 다음 방법을 따르세요.
- 소유하고 신뢰하는 엔드포인트로만 설정합니다
uri. 이전에 나열된 Foundry 도구 도메인을 선호합니다. APIM 또는 사용자 지정 도메인 엔드포인트를 사용하는 경우 관리 ID를 사용하도록 설정하기 전에 자체 리소스 앞에 있는지 확인합니다. 신뢰할 수 있는 호스트 이름은 소유권 증명이 아닙니다. - 검색 서비스에서 사용하는 관리 ID에 최소 권한 원칙을 적용합니다.
- Azure OpenAI에서 Cognitive Services OpenAI 사용자만 할당합니다.
- Foundry에서 Foundry 사용자만 할당합니다. 더 광범위한 역할을 부여하지 않습니다.
- NSP(네트워크 보안 경계) 및 프라이빗 엔드포인트 또는 VNet 통합을 사용하여 검색 서비스에서 연결할 수 있는 엔드포인트와 대상 리소스가 요청을 수락하는 원본을 제한합니다.
- APIM 또는 사용자 지정 도메인 엔드포인트를 사용하는 경우 게이트웨이가 인바운드 요청의 유효성을 검사하고 의도한 백 엔드에만 전달해야 합니다. 또한 해당 액세스 정책을 주기적으로 검토해야 합니다.
- 보다 관리 ID를
apiKey선호합니다. 사용하는apiKey경우 안전하게 저장 및 회전하고 소스 제어에 포함하지 않습니다. 서비스는 둘 다apiKeyauthIdentity설정하는 구성을 거부합니다. - 기술 세트 정의, 관리 ID 역할 할당 및 APIM 및 사용자 지정 도메인 구성을 주기적으로 검토하여 값, 액세스 제어 및 ID 권한이 최신 상태와 적절한 상태로 유지되도록
uri합니다. 설정된 변경 관리 및 보안 검토 프로세스를 통해 구성 변경 내용을 검토합니다. - Azure OpenAI, Foundry 도구 및 Foundry 로그인 로그, 인증 이벤트 및 액세스 로그를 모니터링하여 예기치 않거나 권한이 없는 활동을 확인합니다.
- 더 이상 필요하지 않은 사용되지 않는 기술, 엔드포인트, 역할 할당 및 API 키를 제거합니다.
기술 세트 구성에 대한 액세스 제한
기술 세트를 만들거나 수정하거나 실행할 수 있는 사용자는 대상 엔드포인트(uri)와 기술에서 사용하는 인증 구성을 모두 제어합니다. 이 기술은 Foundry Tools 대상 그룹에 대한 관리 ID 토큰을 해당 엔드포인트로 보내기 때문에 이러한 권한을 신뢰할 수 있는 관리자로 제한하고 관리 ID 사용 기술을 구성할 때 표준 변경 관리 및 보안 검토 프로세스를 따릅니다.