AI Sparkup

복잡한 AI 세상을 읽는 힘

AI 검색의 새로운 패러다임: DeepSearch/DeepResearch 구현 가이드

2025년 2월, AI 검색 분야에 혁신적인 변화가 일어났습니다. 불과 몇 주 만에 Google, OpenAI, Perplexity 등 주요 AI 기업들이 일제히 ‘DeepSearch’ 또는 ‘DeepResearch’라는 새로운 검색 기술을 발표했습니다. 이는 단순한 우연의 일치가 아닙니다. DeepSeek-R1 모델의 등장과 함께 AI 검색 패러다임이 근본적으로 바뀌고 있기 때문입니다.

AI Deep Search Concept DeepSearch의 핵심 원리: 검색-읽기-추론의 반복 루프 (출처: Jina AI)

DeepSearch 열풍의 배경: 왜 지금인가?

사실 ‘딥서치’의 개념 자체는 새로운 것이 아닙니다. 2024년에는 RAG(Retrieval-Augmented Generation)나 multi-hop QA라는 이름으로 불렸고, Stanford NLP Labs에서는 이미 STORM 프로젝트를 통해 유사한 기술을 선보인 바 있습니다. 그럼에도 2025년에 갑자기 주목받게 된 이유는 무엇일까요?

핵심은 테스트 타임 컴퓨트(Test-time Compute) 개념의 확산입니다. 2024년 9월 OpenAI의 o1-preview 모델이 이 개념을 도입한 이후, AI 업계는 ‘더 오래 생각할수록 더 좋은 결과를 얻을 수 있다’는 패러다임을 받아들이기 시작했습니다. 특히 2025년 1월 말 DeepSeek-R1 모델의 등장은 이러한 변화를 가속화했습니다.

사용자들도 변했습니다. 과거에는 200ms 이내에 응답하지 않으면 실패한 검색으로 여겨졌지만, 이제는 더 나은 결과를 위해 기꺼이 기다릴 준비가 되어 있습니다. 마치 스탠포드의 마시멜로 실험처럼, 즉각적인 만족보다는 지연된 만족을 선택하는 것이죠.

DeepSearch vs DeepResearch: 차이점 명확히 알기

많은 사람들이 DeepSearch와 DeepResearch를 혼용해서 사용하지만, 실제로는 서로 다른 문제를 해결하는 기술입니다.

DeepSearch: 정확성과 완성도를 위한 반복 검색

DeepSearch는 검색-읽기-추론의 반복 루프를 통해 최적의 답을 찾는 기술입니다. 기존 RAG 시스템이 한 번의 검색-생성 과정으로 끝나는 것과 달리, DeepSearch는 다음과 같은 단계를 반복합니다:

  1. 검색(Search): 웹 검색 엔진을 활용해 인터넷을 탐색
  2. 읽기(Read): 특정 웹페이지의 내용을 상세히 분석
  3. 추론(Reasoning): 현재 상태를 평가하고 다음 단계 결정

이 과정은 답을 찾거나 토큰 예산이 소진될 때까지 계속됩니다. DeepSearch의 핵심은 로컬 최적화에 있습니다. 즉, 다음에 취할 최선의 검색이나 읽기 행동을 결정하는 데 초점을 맞춥니다.

DeepResearch: 구조화된 장문 보고서 생성

DeepResearch는 DeepSearch를 기반으로 고품질의 장문 연구 보고서를 생성하는 기술입니다. 일반적으로 다음과 같은 과정을 거칩니다:

  1. 목차(Table of Contents) 생성
  2. 각 섹션별로 DeepSearch를 체계적으로 적용
  3. 전체 내러티브의 일관성을 개선하는 통합 작업

DeepResearch의 핵심은 글로벌 최적화입니다. 섹션 구성, 용어 일관성, 전환 문구 등 문서 전체 차원의 복잡한 정보 구조를 관리하는 데 중점을 둡니다.

DeepResearch Framework DeepResearch 프레임워크: DeepSearch를 빌딩 블록으로 활용한 장문 보고서 생성 (출처: Jina AI)

두 기술의 차이점 요약

구분DeepSearchDeepResearch
해결 문제반복 검색을 통한 정보의 정확성과 완성도문서 규모에서의 내용 구성, 일관성, 가독성
최종 결과참고 URL이 포함된 간결한 답변여러 섹션, 차트, 표, 참고문헌이 포함된 구조화된 보고서
핵심 복잡성명확한 전환 조건을 가진 상태 머신 아키텍처미시(검색)와 거시(문서) 관심사를 모두 관리하는 다층 아키텍처
최적화 초점로컬 최적화 (최선의 다음 행동)글로벌 최적화 (전체 문서 구조)

DeepSearch의 기술적 원리

핵심 루프 구조

DeepSearch의 심장부는 다음과 같은 메인 루프입니다:

// 메인 추론 루프
while (tokenUsage < tokenBudget && badAttempts <= maxBadAttempts) {
  step++; totalStep++;
  
  // 갭 큐에서 현재 질문 가져오기 또는 원래 질문 사용
  const currentQuestion = gaps.length > 0 ? gaps.shift() : question;
  
  // 현재 컨텍스트와 허용된 액션으로 프롬프트 생성
  system = getPrompt(diaryContext, allQuestions, allKeywords, 
                    allowReflect, allowAnswer, allowRead, allowSearch, allowCoding,
                    badContext, allKnowledge, unvisitedURLs);
  
  // LLM이 다음 액션 결정
  const result = await LLM.generateStructuredResponse(system, messages, schema);
  
  // 선택된 액션 실행 (answer, reflect, search, visit, coding)
  if (thisStep.action === 'answer') {
    // 답변 액션 처리...
  } else if (thisStep.action === 'reflect') {
    // 반성 액션 처리...
  }
}

갭 질문 순회 방식

DeepSearch의 우아한 설계 중 하나는 “갭 질문(Gap Questions)” 처리 방식입니다. 에이전트가 주요 질문에 답하기 전에 채워야 할 지식 공백을 나타내는 하위 질문들을 식별하고 처리합니다.

시스템은 FIFO(First-In-First-Out) 큐를 사용하여:

  1. 새로운 갭 질문들을 큐의 앞쪽에 추가
  2. 원래 질문은 항상 큐의 뒤쪽에 추가
  3. 각 단계에서 큐의 앞쪽에서 질문을 가져옴

이 방식의 장점은 모든 질문이 단일 공유 컨텍스트를 유지한다는 것입니다. 갭 질문에 대한 답변이 나오면 그 지식이 후속 질문들에 즉시 활용됩니다.

쿼리 리라이팅의 중요성

실제 구현에서 가장 중요한 요소 중 하나는 쿼리 리라이팅입니다. 자연어 질문을 효과적인 검색 쿼리로 변환하는 것은 결과 품질을 직접적으로 좌우합니다. 좋은 쿼리 리라이터는 단순히 자연어를 BM25 키워드로 변환하는 것을 넘어서, 다양한 언어, 톤, 콘텐츠 형식에서 더 많은 잠재적 답변을 포괄할 수 있도록 쿼리를 확장해야 합니다.

실제 구현 시 고려사항

메모리 관리

2025년의 LLM들이 상당한 컨텍스트 윈도우를 가지고 있기 때문에, 벡터 데이터베이스 대신 획득한 지식, 방문한 사이트, 실패한 시도 기록 등을 모두 컨텍스트에 유지하는 방식을 사용할 수 있습니다.

// 지식 아이템을 누적 지식에 추가
function addToKnowledge(question, answer, references, type) {
  allKnowledge.push({
    question: question,
    answer: answer,
    references: references,
    type: type,  // 'qa', 'url', 'coding', 'side-info'
    updated: new Date().toISOString()
  });
}

예산 강제(Budget-Forcing)

DeepSeek-R1 출시 이후, 예산 강제의 접근 방식이 단순히 예산을 절약하는 것에서 더 나은 결과를 위한 깊은 사고 장려로 변화했습니다. 시스템이 조기에 종료되는 것을 방지하고 예산이 소진될 때까지 계속 처리하도록 합니다.

URL 랭킹과 스니펫 선택

DeepSearch 세션 동안 수천 개의 URL이 수집될 수 있습니다. 답변을 포함할 가능성이 높은 URL로 LLM을 안내하는 것이 중요합니다. 빈도, 도메인, 경로 구조, 의미론적 관련성을 결합한 복합 점수를 사용하여 URL을 랭킹합니다.

Deep Search Process 실제 DeepSearch 작동 모습: search.jina.ai에서 확인할 수 있는 thinking 과정 (출처: Jina AI)

DeepSearch의 장점과 한계

장점

  1. 높은 정확성: 반복적인 검색과 추론을 통해 단일 패스 RAG보다 훨씬 정확한 결과 제공
  2. 포괄적 탐색: 다양한 각도에서 정보를 수집하여 완전성 보장
  3. 투명성: 사용자가 전체 추론 과정을 확인할 수 있음
  4. 적응성: 복잡하고 모호한 질문에도 효과적으로 대응

한계

  1. 높은 비용: 반복적인 검색과 LLM 호출로 인한 토큰 사용량 증가
  2. 긴 대기시간: 여러 반복 과정으로 인한 응답 지연
  3. 구현 복잡성: 상태 관리, 메모리 관리, 액션 제어 등 복잡한 시스템 설계 필요
  4. 품질 의존성: 검색 엔진과 웹 크롤링 품질에 크게 의존

실무 적용을 위한 제언

개발자를 위한 핵심 요구사항

  1. 장문 컨텍스트 LLM: 구조화된 출력을 잘 생성하는 모델 필수
  2. 쿼리 확장 기능: 다국어 지원과 창의적 사고가 가능한 시스템
  3. 웹 검색/읽기 도구: 견고하고 확장 가능한 웹 크롤링 솔루션
  4. 임베딩 모델: 중복 제거를 위한 의미론적 유사성 측정

실제 구현 시 주의사항

  • 에이전트 프레임워크는 불필요: LLM 네이티브 동작에 가깝게 유지
  • 벡터 데이터베이스 선택적 사용: 쿼리 수가 수백 개 수준이면 메모리 내 처리로 충분
  • 답변 생성과 평가 분리: 별도 프롬프트에서 평가하여 신뢰성 향상

마무리: AI 검색의 미래

DeepSearch와 DeepResearch는 AI 검색 분야의 새로운 표준으로 자리잡고 있습니다. 단순한 키워드 매칭이나 단일 패스 검색을 넘어서, 인간의 연구 과정을 모방한 반복적이고 체계적인 접근 방식을 제공합니다.

특히 DeepSeek-R1과 같은 추론 모델의 등장은 이러한 변화를 가속화하고 있습니다. 사용자들이 더 나은 결과를 위해 기다릴 준비가 되어 있고, 기업들도 정확성과 깊이를 위해 지연시간을 받아들이는 추세입니다.

2025년 하반기에는 더욱 정교한 DeepSearch 시스템들이 등장할 것으로 예상됩니다. 개발자들은 이러한 트렌드를 이해하고 자신의 프로젝트에 적용할 준비를 해야 할 시점입니다. 특히 정확성이 중요한 전문 분야나 복잡한 의사결정이 필요한 영역에서는 DeepSearch가 필수적인 도구가 될 것입니다.


참고자료

Comments