기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
OpenAI APIs 사용하여 응답 생성
Amazon Bedrock은 대규모 기계 학습 모델 제공을 위한 분산 추론 엔진인 Mantle로 구동되는 모델 추론을 위한 OpenAI 호환 가능한 API 엔드포인트를 제공합니다. 이러한 엔드포인트를 사용하면 Amazon Bedrock 모델과 함께 익숙한 OpenAI SDKs 및 도구를 사용할 수 있으므로 코드 변경을 최소화하면서 기존 애플리케이션을 마이그레이션할 수 있습니다. 기본 URL 및 API 키를 간단히 업데이트하면 됩니다.
주요 이점은 다음과 같습니다.
-
비동기 추론 - 응답 API를 통해 장기 실행 추론 워크로드 지원
-
상태 저장 대화 관리 - 각 요청과 함께 대화 기록을 수동으로 전달하지 않고 컨텍스트를 자동으로 재구축합니다.
-
간소화된 도구 사용 - 에이전트 워크플로를 위한 간소화된 통합
-
유연한 응답 모드 - 스트리밍 응답과 비스트리밍 응답 모두 지원
-
간편한 마이그레이션 - 기존 OpenAI SDK 코드베이스와 호환
지원되는 리전 및 엔드포인트
Amazon Bedrock은 다음 AWS리전에서 사용할 수 있습니다.
| 리전 이름 |
리전 |
엔드포인트 |
| 미국 동부(오하이오) |
us-east-2 |
bedrock-mantle.us-east-2.api.aws |
| 미국 동부(버지니아 북부) |
us-east-1 |
bedrock-mantle.us-east-1.api.aws |
| 미국 서부(오리건) |
us-west-2 |
bedrock-mantle.us-west-2.api.aws |
| 아시아 태평양(자카르타) |
ap-southeast-3 |
bedrock-mantle.ap-southeast-3.api.aws |
| 아시아 태평양(뭄바이) |
ap-south-1 |
bedrock-mantle.ap-south-1.api.aws |
| 아시아 태평양(도쿄) |
ap-northeast-1 |
bedrock-mantle.ap-northeast-1.api.aws |
| 유럽(프랑크푸르트) |
eu-central-1 |
bedrock-mantle.eu-central-1.api.aws |
| 유럽(아일랜드) |
eu-west-1 |
bedrock-mantle.eu-west-1.api.aws |
| Europe (London) |
eu-west-2 |
bedrock-mantle.eu-west-2.api.aws |
| Europe (Milan) |
eu-south-1 |
bedrock-mantle.eu-south-1.api.aws |
| 유럽(스톡홀름) |
eu-north-1 |
bedrock-mantle.eu-north-1.api.aws |
| 남아메리카(상파울루) |
sa-east-1 |
bedrock-mantle.sa-east-1.api.aws |
사전 조건
OpenAI APIs 사용하기 전에 다음이 있는지 확인합니다.
모델 API
모델 API를 사용하면 Mantle로 구동되는 Amazon Bedrock에서 사용 가능한 모델을 검색할 수 있습니다. 이 API를 사용하여 응답 API 및 채팅 완료 API와 함께 사용할 수 있는 모델 목록을 검색합니다. 전체 API 세부 정보는 OpenAI 모델 설명서를 참조하세요.
사용 가능한 모델 나열
사용 가능한 모델을 나열하려면 원하는 방법의 탭을 선택한 다음 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
# List all available models using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
models = client.models.list()
for model in models.data:
print(model.id)
- HTTP request
-
에 GET 요청/v1/models:
# List all available models
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
curl -X GET $OPENAI_BASE_URL/models \
-H "Authorization: Bearer $OPENAI_API_KEY"
응답 API
응답 API는 스트리밍, 백그라운드 처리 및 멀티턴 상호 작용을 지원하여 상태 저장 대화 관리를 제공합니다. 전체 API 세부 정보는 OpenAI 응답 설명서를 참조하세요.
기본 요청
응답을 생성하려면 원하는 방법의 탭을 선택한 다음 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
# Create a basic response using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="openai.gpt-oss-120b",
input=[
{"role": "user", "content": "Hello! How can you help me today?"}
]
)
print(response)
- HTTP request
-
에 POST 요청/v1/responses:
# Create a basic response
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
curl -X POST $OPENAI_BASE_URL/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "openai.gpt-oss-120b",
"input": [
{"role": "user", "content": "Hello! How can you help me today?"}
]
}'
스트림 응답
응답 이벤트를 점진적으로 수신하려면 원하는 방법의 탭을 선택한 다음 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
# Stream response events incrementally using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
stream = client.responses.create(
model="openai.gpt-oss-120b",
input=[{"role": "user", "content": "Tell me a story"}],
stream=True
)
for event in stream:
print(event)
- HTTP request
-
를 로 stream 설정/v1/responses하여에 POST 요청을 수행합니다true.
# Stream response events incrementally
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
curl -X POST $OPENAI_BASE_URL/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "openai.gpt-oss-120b",
"input": [
{"role": "user", "content": "Tell me a story"}
],
"stream": true
}'
채팅 완료 API
채팅 완료 API는 대화 응답을 생성합니다. 전체 API 세부 정보는 OpenAI 채팅 완료 설명서를 참조하세요.
Chat Completions 생성
채팅 완료를 생성하려면 원하는 방법의 탭을 선택한 다음 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
환경 변수를 사용하여 OpenAI 클라이언트를 구성합니다.
# Create a chat completion using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
completion = client.chat.completions.create(
model="openai.gpt-oss-120b",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
]
)
print(completion.choices[0].message)
- HTTP request
-
에 POST 요청/v1/chat/completions:
# Create a chat completion
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
curl -X POST $OPENAI_BASE_URL/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "openai.gpt-oss-120b",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
]
}'
스트리밍 활성화
응답을 점진적으로 수신하려면 원하는 방법의 탭을 선택한 다음 다음 단계를 따릅니다.
- OpenAI SDK (Python)
-
# Stream chat completion responses incrementally using the OpenAI SDK
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
from openai import OpenAI
client = OpenAI()
stream = client.chat.completions.create(
model="openai.gpt-oss-120b",
messages=[{"role": "user", "content": "Tell me a story"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content is not None:
print(chunk.choices[0].delta.content, end="")
- HTTP request
-
가 로 stream 설정된 /v1/chat/completions에 POST 요청을 수행합니다. true
# Stream chat completion responses incrementally
# Requires OPENAI_API_KEY and OPENAI_BASE_URL environment variables
curl -X POST $OPENAI_BASE_URL/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "openai.gpt-oss-120b",
"messages": [
{"role": "user", "content": "Tell me a story"}
],
"stream": true
}'