AutoSDT: Scaling Data-Driven Discovery Tasks Toward Open Co-Scientists
- 발행일
- 출처
- arXiv
- 논문 번호
- 1300
- 분야
- Research Agents
- arXiv 번호
- 2506.08140
이 논문은 AI co-scientist를 학습시킬 data-driven discovery 과제 dataset이 사람이 직접 만든 수백 개 규모에 머물던 문제를, GitHub 연구 코드를 LLM으로 찾아 고치고 지시문을 붙이는 자동 pipeline으로 풀었다.
이 논문은 한마디로 GitHub의 과학 연구 코드를 자동으로 학습용 코딩 과제로 바꾸는 pipeline AutoSDT와, 그 결과인 과제 5,404개짜리 dataset AutoSDT-5K를 낸 연구다. pipeline은 seed keyword로 저장소를 찾고, LLM으로 과학 데이터 분석 코드를 골라 단독 실행되게 고친 뒤, 프로그램에서 과제 지시문을 거꾸로 만든다. 전문가 9명이 표본 256개를 검토해 지시문 93%를 실제 연구 과제로, 프로그램 92.2%를 맞는 풀이로 판정했다. 이 데이터로 fine-tuning한 AutoSDT-Coder-32B는 ScienceAgentBench 성공률을 base model의 3.9%에서 7.8%로 올렸다.
핵심 요약
- 문제: AI co-scientist를 만들려면 학습과 평가에 쓸 고품질 data-driven discovery 과제가 필요한데, 기존 data-driven discovery dataset은 사람이 만든 수백 개 규모라 평가용으로만 쓰인다. 과제 하나를 만드는 데 훈련된 대학원생이 적어도 2.5에서 3시간 걸리고, 과학 데이터 분석 과제는 실제 과학 데이터에서 실행되는 파일 단위 완전한 코드가 필요해, 흔히 pull request에서 뽑을 수 있는 소프트웨어 과제보다 자동 수집이 어렵다. 저자들은 좋은 결과를 보인 기존 agent들이 대부분 상용 LLM에 기대어, 투명성과 데이터 보호가 필요한 사회과학, 의학 같은 분야에서 쓰기 어렵다고 밝혔다.
- 입력과 출력: 이 논문은 자동 수집 pipeline과 그 결과인 학습용 dataset을 함께 낸 dataset 논문이다. pipeline은 분야별 seed keyword 몇 개만 사람에게서 받아, GitHub 저장소의 연구 코드를 과제 지시문과 단독 실행되는 정답 코드 한 쌍, 그리고 필요한 데이터와 의존 파일 폴더로 바꾼다. 결과물 AutoSDT-5K는 생물정보학, 계산화학, 지리정보과학, 심리학과 인지신경과학 네 분야, 저장소 1,325개, Python package 756개에 걸친 과제 5,404개다.
- 방법: AutoSDT-Search는 LLM으로 seed keyword를 넓혀 GitHub과 PapersWithCode를 검색하고, LLM이 README를 읽어 해당 분야 연구 코드 저장소만 남기며 평가 benchmark와 겹치는 저장소를 뺀다. AutoSDT-Select는 1,000줄이 넘는 파일과 config, tests 같은 폴더를 규칙으로 거른 뒤, LLM이 과학 workflow 기능, 데이터 입력, 과학적 출력의 세 조건으로 과제가 될 파일을 고르고 의존 파일 경로를 뽑는다. AutoSDT-Adapt는 Claude-3.7-Sonnet으로 코드를 단독 실행되게 고치고 conda 환경에서 최대 세 번 self-debug해 실패한 것을 걸러 낸 뒤, LLM이 프로그램을 읽고 과제 지시문을 거꾸로 쓴다(back-translation).
- 구현: 대부분 단계는 GPT-4o(2024-11-20)가, 코드 고치기는 Claude-3.7-Sonnet이 맡았고, 저장소 2,993개를 처리해 과제 5.4K개를 만드는 데 API 비용 2,955 USD, 과제당 평균 0.55 USD가 들었다. AutoSDT-Coder는 Qwen2.5-Coder-Instruct 7B, 14B, 32B를 LlamaFactory로 전체 파라미터 fine-tuning한 모델이고, 7B와 14B는 H100 4장, 32B는 8장에서 학습했다. 논문 각주는 코드와 데이터를 프로젝트 페이지(osu-nlp-group.github.io/AutoSDT)에 공개했다고 적었다.
- 결과: 전문가 9명이 과제 256개를 검토해 지시문의 93%가 실제 연구에서 하는 의미 있는 과제이고 프로그램의 92.2%가 맞는 풀이라고 판정했다. zero-shot 직접 prompting으로 세 번 sampling한 평균에서 ScienceAgentBench 성공률은 AutoSDT-Coder-32B가 7.8%로 base model 3.9%의 두 배가 되어 GPT-4o(2024-05-13)의 7.5%와 같은 수준이었고, 7B는 3.3%에서 2.3%로 떨어졌다. DiscoveryBench 가설 일치 점수(HMS)는 32B에서 6.9에서 8.1로 올랐고, 같은 재구현 조건의 GPT-4o(2024-05-13)는 10.4였다.
- 한계: 저자들은 AutoSDT가 과제 지시문과 정답 코드까지 만들고 과제별 평가 script 자동 생성은 후속 과제로 남겨 reinforcement learning 같은 쓰임에 제약이 있고, 연구 코드에는 활용할 unit test가 없어 결과 기반 검증을 자동으로 만들기 어렵다고 밝혔다. API 비용과 전문가 섭외 같은 자원 제약으로 저장소 2,993개만 처리했고, 대상은 네 분야의 Python 코드다. 긴 CoT(chain-of-thought, 답 전에 쓰는 단계별 풀이)를 대량으로 만들기 어려워 reasoning model 학습은 후속 과제로 남겼고, ScienceAgentBench에서 Claude-3.7-Sonnet(18.6%), o1-preview(23.9%) 같은 reasoning model과의 차이가 여전히 크다.
논문 링크
외부 연구를 정리한 자료입니다. HDATF가 발표한 논문이나 제품 성능을 측정한 결과는 아닙니다.