Skip to content

Open Deep Research

About

  • OpenAI가 발표한 DeepResearch는 웹 검색을 통해 콘텐츠를 요약하고 질의 응답을 수행함
    • GAIA 벤치마크에서 높은 점수를 달성해 주목받음
    • 강력한 LLM과 내부적인 에이전트 프레임워크를 결합해 웹 브라우징 등 다양한 도구를 단계적으로 활용
  • OpenAI가 에이전트 프레임워크 세부 사항을 공개하지 않아, 이를 오픈소스로 재현하기 위해 24시간 동안 실험을 진행했음

에이전트 프레임워크는 무엇이고 왜 중요할까?

  • 에이전트 프레임워크는 LLM 위에 추가 계층을 두어 브라우징, PDF 읽기 등 다양한 액션을 수행하게 만드는 구조
  • LLM을 단순 채팅 형태로만 쓰는 것보다, 에이전트 시스템과 결합하면 훨씬 강력해짐
  • smolagents 같은 라이브러리를 통해 간단한 에이전트 프레임워크를 적용해도 성능이 큰 폭으로 향상됨
  • OpenAI DeepResearch 역시 이 방식을 활용해 뛰어난 성능을 얻음

GAIA 벤치마크

  • GAIA는 에이전트 성능을 평가하기 위한 매우 어려운 벤치마크임
  • 예시로, “Embroidery from Uzbekistan”에 등장하는 과일을 특정 선박의 옛 아침 식단과 연결 지어 순서대로 나열하라는 복잡한 질문이 제시됨
  • 단일 LLM만으로는 7% 수준에 그치지만, DeepResearch는 67% 이상을 달성해 큰 격차를 보임
  • GAIA 질문들은 멀티스텝 추론, 정보 검색, 멀티모달 처리 등이 필요하기에 에이전트 접근의 진가를 테스트하기 적합함

오픈 딥 리서치 구축하기

  • DeepResearch 방식 재현을 위해 오픈소스 LLM과 에이전트 프레임워크를 접목하는 실험을 진행함
  • 목표는 간단한 텍스트 기반 웹 브라우저와 파일 열람 툴 등으로 GAIA 성능을 높이는 것임
  • CodeAgent 이용
    • CodeAgent 방식은 JSON 대신 코드 형태로 액션을 표현함
    • Wang et al. (2024) 연구에 따르면, 코드 표현이 압축적이고 직관적이며 LLM에 최적화된 장점이 있음
    • 단계 수가 줄어들어 비용 절감 효과가 있으며, 멀티모달 상태 관리에도 유리함
  • 적절한 도구 만들기
    • 첫 번째 툴: 텍스트 기반 웹 브라우저
      • Operator 같은 풍부한 기능은 아직 구현되지 않았지만, 초기 단계로 단순 브라우징 기능만 제공함
    • 두 번째 툴: 텍스트 파일 포맷 열람용 인스펙터
      • 단순 문서 처리 툴을 통해 내용 읽기 기능을 지원함
    • 향후에는 더 세분화된 파일 포맷 지원, 웹 브라우징 시 비전 모델 연동, GUI 에이전트 도입 등을 계획함

결과

  • 24시간 내 재현 실험으로 GAIA 벤치마크 54% 수준에 도달함
  • JSON 대신 코드 표현을 사용했을 때 점수가 33%에서 54%로 상승함
  • 오픈된 smolagents 프레임워크와 도구를 사용해 누구나 재현 가능함
  • Operator 수준의 브라우저나 강력한 로컬 모델 등을 결합해 더 개선할 여지가 큼

커뮤니티들의 재구현체들

  • dzhng, assafelovic, nickscamara, jina-ai, mshumer 등 다양한 구현이 커뮤니티에서 등장함
  • 각각 다른 라이브러리를 활용하거나 다른 검색/인덱싱 방식을 시도함
  • 향후 오픈 LLM, 비전 모델, 코드 기반 액션 표현 등을 활용한 재현 결과를 공유하며 발전시키고자 함

dzhng/deep-research

An AI-powered research assistant that performs iterative, deep research on any topic by combining search engines, web scraping, and large language models. The goal of this repo is to provide the simplest implementation of a deep research agent - e.g. an agent that can refine its research direction overtime and deep dive into a topic.

가장 중요한 다음 단계

  • OpenAI의 Operator처럼 고급 웹 브라우저 기능을 지원하기 위한 GUI 에이전트를 만드는 작업이 중요함
  • 화면을 보고 마우스와 키보드로 조작하는 기능을 오픈소스로 제공하고자 함
  • smolagents, OpenAI Operator 등과 연동하여 완성도를 높일 계획임
  • GAIA 점수 향상, 오픈 LLM 활용, 시각적 웹 브라우저 구현 등이 주요 과제

See also

Favorite site