GIF 2025-11-18 오전 11-13-42.gif

ChatGPT에게 "겨울 코트 추천해줘"라고 물어보면, 실시간으로 쇼핑몰 사이트를 검색해 상품을 추천해줍니다. 이 과정에서 GPT는 어떻게 수많은 웹사이트 중 적절한 페이지를 찾아내는 걸까요? 이번 글에서는 OpenAI의 웹 검색 메커니즘을 분석하고, 우리 서비스가 GPT의 검색 결과에 잘 노출되기 위해 어떤 전략을 취해야 하는지 살펴보겠습니다.

먼저 OpenAI가 웹사이트를 어떻게 크롤링하는지 살펴보겠습니다.https://platform.openai.com/docs/bots 공식 문서에 따르면, OpenAI는 목적에 따라 구분된 세 가지 봇을 운영하고 있습니다.

Bot 이름 역할 동작 방식 차단 시 효과
OAI-SearchBot 검색 인덱싱 - ChatGPT 검색 기능에서 웹사이트를 링크하고 표시하기 위해 사용

image.png

실제로 LF몰(https://www.lfmall.co.kr/robots.txt )은 robots.txt에서 세 가지 봇을 모두 허용하고 있습니다.

우리의 목표가 "GPT의 상품 추천 결과에 잘 노출되는 것"이라면, 집중해야 할 봇은 바로 OAI-SearchBot입니다. 이제 수집한 데이터를 바탕으로 실제 검색이 어떻게 이루어지는지 메커니즘을 분석해보겠습니다.

다만 GPT의 내부 로직은 공개되지 않은 블랙박스 영역이므로, 공식 문서와 실험 결과를 토대로 추론하는 방식으로 접근하겠습니다.

WebSearch API

https://platform.openai.com/docs/guides/tools-web-search?api-mode=responses OpenAI는 Responses API를 통해 web_search 도구를 공개했지만, ChatGPT 제품이 내부적으로 동일한 API를 사용하는지, 아니면 별도로 최적화된 검색 메커니즘을 사용하는지는 공식 문서에 명시되어 있지 않습니다. 다만 개발자 커뮤니티의 실험 결과에 따르면, 두 검색 방식 간에 결과 품질의 차이가 관찰되고 있습니다.https://cobusgreyling.medium.com/openai-web-search-api-b24f81174305

이러한 품질 차이는 단순히 알고리즘 고도화의 차이일 수도 있지만, 우리는 다른 가능성에 주목했습니다. ChatGPT가 실시간 웹 데이터와 사전에 인덱싱된 과거 데이터를 상황에 따라 조합하여 사용한다는 가설입니다.

image.png

image.png

image.png

image.png

API 요청 로그를 분석한 결과, external_web_access 옵션이 활성화되면 실시간 웹 접근을 수행하고, 비활성화되면 오프라인 캐시 모드로 동작한다는 것을 확인했습니다.

image.png

이를 바탕으로 추론해보면, ChatGPT는 사용자 질문을 분석하여 인텐트(의도)를 파악한 후, 실시간 검색 또는 캐시 검색을 선택적으로 활성화합니다. 이 과정에서 질문의 실시간성을 판별하고 핵심 키워드를 추출하여, 미리 구축된 검색 인덱스를 효율적으로 활용하는 것으로 보입니다.

<aside> 💡

최근 버전에서는 external_web_access 옵션을 비활성화하더라도 web_search_preview를 통해 실시간 접근이 이루어지는 것으로 확인되었습니다.

</aside>

image.png