기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
OpenAI Batch API를 사용하여 프롬프트 배치 제출
Amazon Bedrock OpenAI 모델로 배치 OpenAI Create batch API를 사용하여 배치 추론 작업을 실행할 수 있습니다.
다음과 같은 방식으로 OpenAI Create batch API를 직접적으로 호출할 수 있습니다.
주제 영역을 선택하여 자세히 알아보세요.
OpenAI Batch API에 지원되는 모델 및 리전
OpenAI Create batch API는 Amazon Bedrock 및 이러한 모델을 지원하는 AWS 리전에서 지원되는 모든 OpenAI 모델에 사용할 수 있습니다. 지원되는 모델 및 리전에 대한 자세한 내용은 Amazon Bedrock에서 지원되는 파운데이션 모델 섹션을 참조하세요.
OpenAI Batch API를 사용하기 위한 사전 조건
OpenAI Batch API 작업을 사용하기 위한 사전 조건을 보려면 원하는 방법의 탭을 선택한 후 다음 단계를 따릅니다.
- OpenAI SDK
-
- HTTP request
-
-
인증 - AWS 자격 증명 또는 Amazon Bedrock API 키로 인증할 수 있습니다.
AWS 자격 증명을 설정하거나 Amazon Bedrock API 키를 생성하여 요청을 인증합니다.
-
엔드포인트 - Amazon Bedrock 런타임 엔드포인트 및 할당량에 사용할 AWS 리전에 해당하는 엔드포인트를 찾습니다. AWS SDK를 사용하는 경우 클라이언트를 설정할 때 전체 엔드포인트가 아닌 리전 코드만 지정하면 될 수 있습니다.
-
모델 액세스 - 이 기능을 지원하는 Amazon Bedrock 모델에 대한 액세스를 요청합니다. 자세한 내용은 AWS GovCloud(미국)의 Amazon Bedrock 파운데이션 모델 액세스 섹션을 참조하세요.
-
S3에 업로드된 배치 JSONL 파일 - OpenAI 설명서의 배치 파일 준비의 단계에 따라 배치 파일을 올바른 형식으로 준비합니다. 그런 다음 Amazon S3 버킷에 업로드합니다.
-
IAM 권한 - 적절한 권한이 있는 다음 IAM ID가 있는지 확인합니다.
OpenAI 배치 작업 생성
OpenAI Create batch API에 대한 자세한 내용은 OpenAI 설명서의 다음 리소스를 참조하세요.
요청 구성
배치 추론 요청을 구성할 때 다음 Amazon Bedrock 관련 필드 및 값을 기록해 둡니다.
생성된 결과 찾기
생성 응답에는 배치 ID가 포함됩니다. 배치 추론 작업의 결과 및 오류 로깅은 입력 파일이 포함된 S3 폴더에 작성됩니다. 결과는 다음 폴더 구조와 같이 배치 ID와 이름이 동일한 폴더에 있습니다.
---- {batch_input_folder}
|---- {batch_input}.jsonl
|---- {batch_id}
|---- {batch_input}.jsonl.out
|---- {batch_input}.jsonl.err
OpenAI Create batch API를 다양한 메서드와 함께 사용하는 예제를 보려면 원하는 방법의 탭을 선택한 후 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
OpenAI SDK를 사용하여 배치 작업을 생성하려면 다음을 수행합니다.
-
OpenAI SDK를 가져오고 다음 필드를 사용하여 클라이언트를 설정합니다.
-
base_url - 다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1에 접두사로 추가합니다.
https://${bedrock-runtime-endpoint}/openai/v1
-
api_key - Amazon Bedrock API 키를 지정합니다.
-
default_headers - 헤더를 포함해야 하는 경우 이 객체에 헤더를 키-값 페어로 포함할 수 있습니다. 또는 특정 API 직접 호출을 수행할 때 extra_headers에서 헤더를 지정할 수 있습니다.
-
클라이언트에서 batches.create() 메서드를 사용합니다.
다음 예제를 실행하기 전에 다음 필드의 자리표시자를 바꿉니다.
-
api_key - $AWS_BEARER_TOKEN_BEDROCK을 실제 API 키로 바꿉니다.
-
X-Amzn-BedrockRoleArn – arn:aws:iam::123456789012:role/BatchServiceRole을 설정한 실제 배치 추론 서비스 역할로 바꿉니다.
-
input_file_id – s3://amzn-s3-demo-bucket/openai-input.jsonl을 배치 JSONL 파일을 업로드한 실제 S3 URI로 바꿉니다.
이 예제에서는 us-west-2에서 OpenAI Create batch job API를 직접적으로 호출하고 메타데이터 하나를 포함합니다.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK", # Replace with actual API key
default_headers={
"X-Amzn-Bedrock-RoleArn": "arn:aws:iam::123456789012:role/BatchServiceRole" # Replace with actual service role ARN
}
)
job = client.batches.create(
input_file_id="s3://amzn-s3-demo-bucket/openai-input.jsonl", # Replace with actual S3 URI
endpoint="/v1/chat/completions",
completion_window="24h",
metadata={
"description": "test input"
},
extra_headers={
"X-Amzn-Bedrock-ModelId": "openai.gpt-oss-20b-1:0",
}
)
print(job)
- HTTP request
-
직접 HTTP 요청으로 채팅 완성을 생성하려면 다음을 수행합니다.
-
다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1/batches에 접두사로 지정해 POST 메서드를 사용하여 URL을 지정합니다.
https://${bedrock-runtime-endpoint}/openai/v1/batches
-
Authorization 헤더에서 AWS 자격 증명 또는 Amazon Bedrock API 키를 지정합니다.
다음 예제를 실행하기 전에 다음 먼저 필드의 자리표시자를 바꿉니다.
-
승인 - $AWS_BEARER_TOKEN_BEDROCK을 실제 API 키로 바꿉니다.
-
X-Amzn-BedrockRoleArn – arn:aws:iam::123456789012:role/BatchServiceRole을 설정한 실제 배치 추론 서비스 역할로 바꿉니다.
-
input_file_id – s3://amzn-s3-demo-bucket/openai-input.jsonl을 배치 JSONL 파일을 업로드한 실제 S3 URI로 바꿉니다.
다음 예제에서는 us-west-2에서 Create chat completion API를 직접적으로 호출하고 메타데이터 하나를 포함합니다.
curl -X POST 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK' \
-H 'Content-Type: application/json' \
-H 'X-Amzn-Bedrock-ModelId: openai.gpt-oss-20b-1:0' \
-H 'X-Amzn-Bedrock-RoleArn: arn:aws:iam::123456789012:role/BatchServiceRole' \
-d '{
"input_file_id": "s3://amzn-s3-demo-bucket/openai-input.jsonl",
"endpoint": "/v1/chat/completions",
"completion_window": "24h",
"metadata": {"description": "test input"}
}'
OpenAI 배치 작업 검색
OpenAI Retrieve batch API 요청 및 응답에 대한 자세한 내용은 배치 검색을 참조하세요.
요청할 때 정보를 가져올 배치 작업의 ID를 지정합니다. 응답은 S3 버킷에서 조회할 수 있는 출력 및 오류 파일 이름을 포함하여 배치 작업에 대한 정보를 반환합니다.
OpenAI Retrieve batch API를 다양한 메서드와 함께 사용하는 예제를 보려면 원하는 방법의 탭을 선택한 후 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
OpenAI SDK를 사용하여 배치 작업을 검색하려면 다음을 수행합니다.
-
OpenAI SDK를 가져오고 다음 필드를 사용하여 클라이언트를 설정합니다.
-
base_url - 다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1에 접두사로 추가합니다.
https://${bedrock-runtime-endpoint}/openai/v1
-
api_key - Amazon Bedrock API 키를 지정합니다.
-
default_headers - 헤더를 포함해야 하는 경우 이 객체에 헤더를 키-값 페어로 포함할 수 있습니다. 또는 특정 API 직접 호출을 수행할 때 extra_headers에서 헤더를 지정할 수 있습니다.
-
클라이언트에서 batches.retrieve() 메서드를 사용하고 정보를 검색할 배치의 ID를 지정합니다.
다음 예제를 실행하기 전에 다음 필드의 자리표시자를 바꿉니다.
예제에서는 ID가 batch_abc123인 배치 작업의 us-west-2에서 OpenAI Retrieve batch job API를 직접적으로 호출합니다.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key
)
job = client.batches.retrieve(batch_id="batch_abc123") # Replace with actual ID
print(job)
- HTTP request
-
직접 HTTP 요청으로 배치 작업을 검색하려면 다음을 수행합니다.
-
다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1/batches/${batch_id}에 접두사로 지정해 GET 메서드를 사용하여 URL을 지정합니다.
https://${bedrock-runtime-endpoint}/openai/v1/batches/batch_abc123
-
Authorization 헤더에서 AWS 자격 증명 또는 Amazon Bedrock API 키를 지정합니다.
다음 예제를 실행하기 전에 다음 먼저 필드의 자리표시자를 바꿉니다.
다음 예제에서는 ID가 batch_abc123인 배치 작업의 us-west-2에서 OpenAI Retrieve batch API를 직접적으로 호출합니다.
curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'
OpenAI 배치 작업 나열
OpenAI List batches API 요청 및 응답에 대한 자세한 내용은 배치 나열을 참조하세요. 응답은 배치 작업에 대한 정보 배열을 반환합니다.
요청을 할 때 쿼리 파라미터를 포함하여 결과를 필터링할 수 있습니다. 응답은 S3 버킷에서 조회할 수 있는 출력 및 오류 파일 이름을 포함하여 배치 작업에 대한 정보를 반환합니다.
OpenAI List batches API를 다양한 메서드와 함께 사용하는 예제를 보려면 원하는 방법의 탭을 선택한 후 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
OpenAI SDK를 사용하여 배치 작업을 나열하려면 다음을 수행합니다.
-
OpenAI SDK를 가져오고 다음 필드를 사용하여 클라이언트를 설정합니다.
-
base_url - 다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1에 접두사로 추가합니다.
https://${bedrock-runtime-endpoint}/openai/v1
-
api_key - Amazon Bedrock API 키를 지정합니다.
-
default_headers - 헤더를 포함해야 하는 경우 이 객체에 헤더를 키-값 페어로 포함할 수 있습니다. 또는 특정 API 직접 호출을 수행할 때 extra_headers에서 헤더를 지정할 수 있습니다.
-
클라이언트에서 batches.list() 메서드를 사용합니다. 다음과 같은 선택적 파라미터를 포함할 수 있습니다.
다음 예제를 실행하기 전에 다음 필드의 자리표시자를 바꿉니다.
이 예제에서는 us-west-2에서 OpenAI List batch jobs API를 직접적으로 호출하고 반환할 결과 수를 2개로 지정합니다.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key
)
job = client.batches.retrieve(batch_id="batch_abc123") # Replace with actual ID
print(job)
- HTTP request
-
직접 HTTP 요청으로 배치 작업을 나열하려면 다음을 수행합니다.
-
다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1/batches에 접두사로 지정해 GET 메서드를 사용하여 URL을 지정합니다.
https://${bedrock-runtime-endpoint}/openai/v1/batches
다음과 같은 선택적 쿼리 파라미터를 포함할 수 있습니다.
-
Authorization 헤더에서 AWS 자격 증명 또는 Amazon Bedrock API 키를 지정합니다.
다음 예제를 실행하기 전에 다음 먼저 필드의 자리표시자를 바꿉니다.
이 예제에서는 us-west-2에서 OpenAI List batches API를 직접적으로 호출하고 반환할 결과 수를 2개로 지정합니다.
curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'
OpenAI 배치 작업 취소
OpenAI Cancel batch API 요청 및 응답 취소에 대한 자세한 내용은 배치 취소를 참조하세요. 응답은 취소된 배치 작업에 대한 정보를 반환합니다.
요청할 때 취소할 배치 작업의 ID를 지정합니다.
OpenAI Cancel batch API를 다양한 메서드와 함께 사용하는 예제를 보려면 원하는 방법의 탭을 선택한 후 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
OpenAI SDK를 사용하여 배치 작업을 취소하려면 다음을 수행합니다.
-
OpenAI SDK를 가져오고 다음 필드를 사용하여 클라이언트를 설정합니다.
-
base_url - 다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1에 접두사로 추가합니다.
https://${bedrock-runtime-endpoint}/openai/v1
-
api_key - Amazon Bedrock API 키를 지정합니다.
-
default_headers - 헤더를 포함해야 하는 경우 이 객체에 헤더를 키-값 페어로 포함할 수 있습니다. 또는 특정 API 직접 호출을 수행할 때 extra_headers에서 헤더를 지정할 수 있습니다.
-
클라이언트에서 batches.cancel() 메서드를 사용하고 정보를 검색할 배치의 ID를 지정합니다.
다음 예제를 실행하기 전에 다음 필드의 자리표시자를 바꿉니다.
예제에서는 ID가 batch_abc123인 배치 작업의 us-west-2에서 OpenAI Cancel batch job API를 직접적으로 호출합니다.
from openai import OpenAI
client = OpenAI(
base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1",
api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key
)
job = client.batches.cancel(batch_id="batch_abc123") # Replace with actual ID
print(job)
- HTTP request
-
직접 HTTP 요청으로 배치 작업을 취소하려면 다음을 수행합니다.
-
다음 형식과 같이 Amazon Bedrock 런타임 엔드포인트를 /openai/v1/batches/${batch_id}/cancel에 접두사로 지정해 POST 메서드를 사용하여 URL을 지정합니다.
https://${bedrock-runtime-endpoint}/openai/v1/batches/batch_abc123/cancel
-
Authorization 헤더에서 AWS 자격 증명 또는 Amazon Bedrock API 키를 지정합니다.
다음 예제를 실행하기 전에 다음 먼저 필드의 자리표시자를 바꿉니다.
다음 예제에서는 ID가 batch_abc123인 배치 작업의 us-west-2에서 OpenAI Cancel batch API를 직접적으로 호출합니다.
curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123/cancel' \
-H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'