기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
웹 검색
웹 검색은 Amazon Bedrock에서 웹 검색 기능을 제공하는 기본 제공 도구입니다. 활성화하면 지원되는 모델은 학습된 데이터에 의존하는 대신 요청 중에 웹에서 현재 정보를 검색하고 이를 사용하여 답변을 뒷받침할 수 있습니다. 응답에는 모델이 사용한 소스에 대한 인용이 포함됩니다. 웹 검색은에서 호스팅 및 빌드 AWS되며 데이터는 기본적으로 AWS 경계 내에 유지됩니다.
데이터 거버넌스
기본적으로 AmazonBedrockFullAccess 정책을 사용하는 경우 Amazon Bedrock 웹 인덱스 및 캐시에서 웹 검색이 제공되고 요청 데이터는 검색 AWS 경계를 벗어나지 않습니다. IAM을 사용하여 정책 수준에서 이를 적용할 수도 있습니다. 사용 중인 모델에 따라 데이터에 자동 Amazon Bedrock 침해 탐지 메커니즘이 적용됩니다.
웹 검색을 사용해야 하는 경우
웹 검색은 모델의 파라미터 지식보다 더 최신이거나, 더 전문화되었거나, 더 신뢰할 수 있는 정보에 따라 답변이 달라질 때마다 유용합니다. 최신 버전은 현재 이벤트, 최근 제품 릴리스, 가격 또는 새 라이브러리 버전에 대한 설명서와 같은 일반적인 사례 중 하나입니다. 이는 틈새 APIs, 특정 구성 값 또는 도메인별 사실과 같이 모델의 지식이 얇거나 부정확한 롱테일 또는 특수 질문과 리콜렉션이 아닌 근거가 있고 명료한 소스를 원하는 경우에 똑같이 유용합니다.
웹 검색 작동 방식
이 도구는 Amazon Bedrock 내에서 실행되므로 검색 인덱스를 호스팅하거나, 크롤러를 관리하거나, 도구 호출 루프를 직접 작성할 필요가 없습니다. Amazon Bedrock 추론 요청에 도구를 추가하면 모델이 필요에 따라 도구를 호출합니다. 웹 검색은 모델에 현재 정보를 제공하여 모델이 인용과 함께 근거 있는 답변을 반환할 수 있도록 합니다.
웹 검색이 활성화되면 모델은 요청에 최신 정보가 필요한지 여부를 결정합니다. 이 경우 모델은 웹 검색 도구에 하나 이상의 검색 쿼리를 실행하고 Amazon에서 빌드하고 유지 관리하는 웹 인덱스에서 가져온 일련의 관측치를 수신합니다. 각 관측치에는 제목, 소스 URL 및 콘텐츠 조각이 포함됩니다. 그런 다음 모델은 이러한 결과에 기반한 답변을 작성하고 소스를 가리키는 인용을 추가합니다.
첫 번째 결과 집합이 질문에 답변하기에 충분하지 않은 경우 모델은 찾은 내용을 사용하여 쿼리를 재구성하고 동일한 턴 내에서 다시 검색할 수 있습니다. 결과가 답변을 지원하지 않는 경우 모델은 훈련 데이터의 격차를 채우지 않고 이를 알려줍니다.
검색 및 가져오기 작업
웹 검색은 다음 두 가지 작업으로 빌드됩니다.
-
검색 - 신뢰도가 높은 사실에 대한 Amazon Bedrock 웹 인덱스 및 지식 그래프에서 제목, URLs 및 코드 조각을 반환합니다.
-
가져오기 - Amazon Bedrock 캐시에서 특정 URL에 대해 캐시된 페이지 콘텐츠를 검색합니다. 캐시에서 결과를 사용할 수 없는 경우 모델은 사용자에게 알리거나 최상의 정보를 기반으로 응답을 빌드하도록 선택할 수 있습니다.
기본적으로 두 작업은 요청 시 라이브 웹에서 가져오는 AWS대신 내부에서 호스팅되는 웹 콘텐츠의 스냅샷인 Amazon Bedrock 웹 인덱스 및 캐시를 사용하여 AWS 서비스 경계 내에서 완전히 제공됩니다. 응답 API의 external_web_access 파라미터와 bedrock-websearch:ExternalWebAccess IAM 권한은 검색 및 가져오기가 외부 웹에 직접 도달할 수 있는지 여부를 제어합니다. 자세한 내용은 외부 웹 액세스 제어을 참조하세요.
지원되는 모델
웹 검색은 응답 API를 사용하여 Amazon Bedrock bedrock-mantle 엔드포인트를 통해 제공되는 OpenAI GPT 모델에 사용할 수 있습니다. 현재 openai.gpt-5.6-sol, openai.gpt-5.6-terra및 GPT-5.6 패밀리openai.gpt-5.6-luna와 이전 openai.gpt-5.4 및에서 지원됩니다openai.gpt-5.5. 이 가이드의 예제에서는를 사용합니다openai.gpt-5.6-terra. 웹 검색 요금은 Amazon Bedrock 요금 페이지를
참고
웹 검색은 서버 측 도구이므로 bedrock-runtime 엔드포인트에서 응답 API를 호출할 때는 사용할 수 없습니다. 이를 사용하려면에서 응답 API를 호출합니다bedrock-mantle. 두 엔드포인트 간의 다른 차이점은 섹션을 참조하세요bedrock-runtime 엔드포인트에서 응답 API 사용.
리전별 가용성
웹 검색은 세 개의 미국 리전에서 리전 내 쿼리를 처리합니다.
| 리전 | 리전 코드 |
|---|---|
| 미국 동부(버지니아 북부) | us-east-1 |
| 미국 동부(오하이오) | us-east-2 |
| 미국 서부(오리건) | us-west-2 |
웹 검색은 엄격하게 리전별로 이루어집니다. 각 리전은 자체 검색 및 가져오기 계층을 운영하며 쿼리, 가져오기, 인덱스 데이터 및 결과는 리전 간에 라우팅되지 않습니다. 지정된 리전에서 실행된 쿼리는 해당 리전의 경계 내에 유지됩니다.
웹 검색 활성화
웹 검색을 사용하려면 요청 뒤의 IAM 자격 증명이 웹 검색 작업을 호출할 수 있어야 합니다. 필요한 권한 및 예제 정책은 웹 검색을 위한 자격 증명 및 액세스 관리를 참조하세요.
환경 설정
예제를 실행하기 전에 다음을 설정합니다.
export OPENAI_API_KEY="your-amazon-bedrock-api-key" export OPENAI_BASE_URL="https://bedrock-mantle.us-west-2.api.aws/openai/v1"
요청에 웹 검색 도구 추가
웹 검색을 활성화하려면 요청의 web_search tools 배열에 유형의 도구를 추가합니다. 이 모델은 요청에 현재 정보가 필요하다고 판단되는 경우에만 도구를 사용합니다. 실행 가능한 예제는 섹션을 참조하세요코드 예제.
외부 웹 액세스 제어
기본적으로 웹 검색은 Amazon Bedrock 웹 인덱스 및 캐시에서 전적으로 제공되며 검색 AWS 경계를 벗어나는 요청 데이터는 없습니다. 검색 및 가져오기가 외부 웹에 도달할 수 있는지 여부는 함께 작동하는 두 가지 제어, 즉 응답 API의 external_web_access 파라미터와 bedrock-websearch:ExternalWebAccess IAM 권한에 의해 관리됩니다.
external_web_access 파라미터는 기본적으로 OpenAI 응답 API와 true일치하므로 호출을 변경할 필요가 없습니다. AmazonBedrockFullAccess 정책은 기본 웹 검색 작업인 bedrock-websearch:InvokeSearch 및는 부여bedrock-websearch:InvokeFetch하지만는 부여하지 않습니다bedrock-websearch:ExternalWebAccess. 따라서를 보유하지 않는 자격 증명true에서 external_web_access를 벗어나는 요청은 권한 부여 검사에 403 AccessDenied를 ExternalWebAccess 반환합니다. 모델은 요청에 실패하지 않습니다. 검색 및 캐싱된 가져오기에 답변을 입력하고 외부 웹 액세스를 얻을 수 없다고 보고합니다.
이 오류에 도달하지 않는 요청을 하려면 아래 두 가지 방법 중 하나를 사용합니다.
AWS 경계 내에 요청 유지
도구"external_web_access": false에를 설정합니다. 여기에는 ExternalWebAccess 권한이 필요하지 않으며, Amazon Bedrock 웹 인덱스 및 캐시에서 검색이 완전히 제공되고, 요청 데이터가 AWS 경계를 벗어나지 않습니다. AmazonBedrockFullAccess는를 부여하지 않으므로 ExternalWebAccess이 구성은 기본적으로 안전합니다.
response = client.responses.create( model="openai.gpt-5.6-terra", input="Summarize recent guidance on AWS Lambda cold starts.", tools=[{"type": "web_search", "external_web_access": False}], )
curl "https://bedrock-mantle.us-west-2.api.aws/openai/v1/responses" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "openai.gpt-5.6-terra", "input": "Summarize recent guidance on AWS Lambda cold starts.", "tools": [{"type": "web_search", "external_web_access": false}] }'
외부 웹 액세스 활성화
요청 자격 bedrock-websearch:ExternalWebAccess 증명에를 부여하고 기본값인 external_web_access를 그대로 둡니다true. 이 구성은 검색 및 가져오기가 외부 웹에 도달할 수 있는지 여부를 제어합니다. 오늘날 검색은 Amazon Bedrock 웹 인덱스 및 캐시에서 전적으로 제공되므로이 권한이 부여되더라도 요청 데이터가 AWS 경계를 벗어나지 않습니다. 향후 릴리스에서이 구성을 사용하면 검색 및 가져오기를 통해 라이브 외부 웹에서 콘텐츠를 검색할 수 있으며, 이때 요청 데이터는 AWS 경계를 벗어날 수 있습니다. 외부 웹 액세스는 기본적으로 비활성화bedrock-websearch:ExternalWebAccess되어 있으며(즉, 허용되지 않음), 향후 변경 시를 명시적 옵트인bedrock-websearch:ExternalWebAccess으로 허용해야 적용됩니다. 외부 웹 액세스는 사용자가 제어할 수 있습니다. 권한을 부여하고 파라미터를 활성화한 상태로 두어야만 적용됩니다.
코드 예제
응답 API
from openai import OpenAI client = OpenAI() response = client.responses.create( model="openai.gpt-5.6-terra", input="What are the most significant AWS launches announced this month?", tools=[{"type": "web_search", "external_web_access": False}], ) print(response.output_text)
응답에는 소스를 가리키는 url_citation 주석과 함께 근거가 있는 응답 텍스트가 포함됩니다.
{ "content": [ { "annotations": [ { "end_index": 573, "start_index": 441, "title": "Upgrade Amazon EKS clusters with confidence using Kubernetes version rollbacks | AWS News Blog", "type": "url_citation", "url": "https://aws.amazon.com/blogs/aws/upgrade-amazon-eks-clusters-with-confidence-using-kubernetes-version-rollbacks/" }, { "end_index": 1094, "start_index": 888, "title": "AWS Weekly Roundup: AWS Builder Center at 1 year, Network Scanning in Security Hub, Loom for AWS, and more (July 13, 2026) | AWS News Blog", "type": "url_citation", "url": "https://aws.amazon.com/blogs/aws/aws-weekly-roundup-aws-builder-center-at-one-year-network-scanning-in-security-hub-loom-for-aws-and-more-july-13-2026/" }, { "end_index": 1837, "start_index": 1414, "title": "AWS Weekly Roundup: One-click Lambda setup prompt, OpenAI GPT-5.6 models on Bedrock, and more (July 20, 2026) | AWS News Blog", "type": "url_citation", "url": "https://aws.amazon.com/blogs/aws/aws-weekly-roundup-one-click-lambda-setup-prompt-openai-gpt-5-6-models-on-bedrock-and-more-july-20-2026/" } ], "logprobs": [], "text": "As of **July 30, 2026**, the most significant AWS launches this month:\n\n1. **Amazon EKS Kubernetes version rollbacks** — EKS now lets admins roll back a Kubernetes version upgrade within **seven days**, effectively adding an “undo” path for cluster upgrades and reducing upgrade risk for large or regulated Kubernetes fleets. It’s available at no additional cost in commercial Regions where EKS is available. ([aws.amazon.com](https://aws.amazon.com/blogs/aws/upgrade-amazon-eks-clusters-with-confidence-using-kubernetes-version-rollbacks/))\n\n2. **AWS Security Hub Network Scanning + Azure support** — Security Hub added active Network Scanning to find resources actually reachable from the public internet, and also expanded unified security management to **Microsoft Azure** resources, making this a notable multi-cloud security/posture-management move. ([aws.amazon.com](https://aws.amazon.com/blogs/aws/aws-weekly-roundup-aws-builder-center-at-one-year-network-scanning-in-security-hub-loom-for-aws-and-more-july-13-2026/))\n\n3. **New frontier models on Amazon Bedrock: Claude Sonnet 5, Claude Opus 5, and OpenAI GPT-5.6 models** — AWS added major new model choices to Bedrock this month: Anthropic’s Claude Sonnet 5 and Claude Opus 5, plus OpenAI GPT-5.6 Sol, Terra, and Luna, expanding Bedrock’s role as a multi-model enterprise AI platform. ([aws.amazon.com](https://aws.amazon.com/blogs/aws/aws-weekly-roundup-one-click-lambda-setup-prompt-openai-gpt-5-6-models-on-bedrock-and-more-july-20-2026/))", "type": "output_text" } ], "id": "msg_dcda8e4b477f5a1d96bfbcadefef7a77", "phase": "final_answer", "role": "assistant", "status": "completed", "type": "message" }
직접 HTTPS 요청
OpenAI SDK를 사용하지 않는 경우 요청을 응답 엔드포인트로 직접 전송합니다. tools 필드에는 웹 검색 도구가 들어 있습니다.
curl "https://bedrock-mantle.us-west-2.api.aws/openai/v1/responses" \ -H "Authorization: Bearer $OPENAI_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "openai.gpt-5.6-terra", "input": "What are the most significant AWS launches announced this month?", "tools": [{"type": "web_search", "external_web_access": false}] }'
응답에서 인용 읽기
웹 검색은 텍스트에 연결된 url_citation 주석으로 인용을 반환합니다. 각 주석에는 소스 제목과 URL 및 지원하는 답변의 문자 범위가 포함됩니다. 이를 보관하고 최종 사용자에게 표시합니다.
from openai import OpenAI client = OpenAI() response = client.responses.create( model="openai.gpt-5.6-terra", input="What are the most significant AWS launches announced this month?", tools=[{"type": "web_search", "external_web_access": False}], ) # The grounded answer print(response.output_text) # The sources behind it for item in response.output: if item.type == "message": for block in item.content: if block.type == "output_text": for ann in block.annotations: if ann.type == "url_citation": print(f"- {ann.title}: {ann.url}")
원시 JSON으로 작업하는 경우(예: 직접 HTTPS 호출) 동일한 데이터가에 있습니다. output[].content[].annotations[]
jq '.output[] | select(.type=="message") | .content[] | select(.type=="output_text") | .annotations[] | select(.type=="url_citation") | {title, url, start_index, end_index}' response.json
스트리밍 응답
응답 API는 응답이 생성될 때 응답을 스트리밍합니다. 텍스트는 response.output_text.delta 이벤트로 도착하고 각 인용은 모델이 문을 기반으로 할 때 response.output_text.annotation.added 이벤트로 도착합니다.
from openai import OpenAI client = OpenAI() stream = client.responses.create( model="openai.gpt-5.6-terra", input="What are the most significant AWS launches announced this month?", tools=[{"type": "web_search", "external_web_access": False}], stream=True, ) for event in stream: if event.type == "response.output_text.delta": print(event.delta, end="", flush=True) elif event.type == "response.output_text.annotation.added": ann = event.annotation print(f"\n[source] {ann['title']}: {ann['url']}")
와이어를 통해 주석 이벤트는 다음과 같습니다.
event: response.output_text.annotation.added data: {"type":"response.output_text.annotation.added","annotation":{"type":"url_citation","title":"News and Updates from the July 2025 Pokémon Presents","url":"https://www.pokemon.com/us/pokemon-news/...","start_index":589,"end_index":698},"annotation_index":2,"content_index":0,"item_id":"msg_...","output_index":1}
보안
Amazon Bedrock의 웹 검색은 AWS Identity and Access Management (IAM)을 사용하여 검색 및 가져오기를 실행할 수 있는 사용자와 리전을 제어합니다. 웹 검색의 IAM 서비스 접두사는 입니다bedrock-websearch. 웹 검색을 비활성화하기 위한 작업, 관리형 정책, 조건 키, 예제 정책 및 관리자 제어의 전체 목록은 웹 검색을 위한 자격 증명 및 액세스 관리를 참조하세요.
CloudTrail을 사용한 모니터링
Amazon Bedrock의 웹 검색은와 통합됩니다 AWS CloudTrail. CloudTrail은 웹 검색에 대한 API 활동을 데이터 이벤트로 캡처하므로 누가 언제 어디서 도구를 호출했는지 감사할 수 있습니다. 캡처된 필드, 데이터 이벤트 로깅을 활성화하는 방법 및 의도적으로 제외된 항목은 웹 검색 모니터링을 참조하세요.
허용 가능한 사용
Amazon Bedrock에서 웹 검색을 사용하는 경우 Amazon Bedrock은 지원되는 모델에 웹 검색 결과(“검색 결과”)를 제공하며, 모델이 응답을 생성하는 데 사용할 수 있습니다. 검색 결과를 통합하는 모델 출력의 사용 및 최종 사용자의 사용에 대한 책임은 사용자에게 있습니다. 최종 사용자에게 표시하는 출력에서 모델 출력에 제공된 소스 인용 및 링크를 유지하고 표시해야 합니다. 웹 검색을 사용하여 (a) 검색 결과에서 콘텐츠를 대량으로 추출, 저장 또는 복제하거나 (b) 경쟁 인덱스 또는 데이터베이스를 빌드 또는 채울 수 없습니다.