← 최신 논문
💻 computer science

AI Agent Pull Requests on GitHub: Frequency, Structure, and Merge Conflict Rates

이 논문은 AIDev-pop 데이터셋을 실증적으로 분석하여, 동시적인 AI 에이전트 제출이 매우 빈번하게 발생하며 주로 동일한 에이전트를 포함하고, 크로스 에이전트 쌍(cross-agent pairs)이 인트라 에이전트 쌍(intra-agent ones)에 비해 병합 충돌률이 현저히 높다는 것을 밝혀낸다.

원저자: George Xu, Arjun Subramanian, Nithilan Karthik

게시일 2026-07-08
📖 3 분 읽기☕ 가벼운 읽기

원저자: George Xu, Arjun Subramanian, Nithilan Karthik

원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

거대한, 북적이는 건설 현장을 상상해 보세요. 그곳에는 인간 노동자 대신, 똑똑하지만 독립적인 수십 대의 고도로 숙련된 로봇(AI 코딩 에이전트)들이 정확히 같은 집을 동시에 짓거나 고치려고 애쓰고 있습니다.

이 논문은 이 로봇들이 서로 대화하지 않고 협업할 때 어떤 일이 벌어지는지에 대한 성적표입니다. 연구진들은 이 로봇들이 얼마나 자주 충돌하는지, 그 싸움이 어떤 모습인지, 그리고 결과가 얼마나 엉망이 되는지를 확인하기 위해 GitHub의 수천 개의 실제 프로젝트를 조사했습니다.

다음은 쉬운 비유를 사용한 연구 결과의 요약입니다:

1. 로봇들의 "교통 체증"

첫 번째 큰 질문은 다음과 같았습니다: 이 로직들은 얼마나 자주 같은 집을 동시에 작업하고 있는가?

답은 이렇습니다: 거의 항상 그렇습니다.

  • 연구 결과: 프로젝트의 약 40%에서 두 대의 로봇이 정확히 같은 초(second)에 집을 작업하고 있었습니다. 만약 일주일이라는 시간 범위를 준다면, 그 수치는 거의 95%까지 치솟습니다.
  • 비유: 10명의 요리사 중 9명이 같은 도마 위에서 동시에 채소를 썰고 있는 바쁜 주방을 상상해 보세요. 혼란스럽지만, 그것이 일반적인 상황입니다.
  • 누가 싸우는가? 놀랍게도, 서로 다른 종류의 로봇(예: 'Devin' 로봇과 'Copilot' 로봇) 사이의 싸움은 드뭅니다. 대부분은 같은 종류의 로봇이 자기 자신과 싸우는 것입니다. 충돌 사례의 99.5%는 병렬로 작동하는 동일한 AI 모델의 두 인스턴스 간의 갈등이었습니다. 이는 마치 두 명의 쌍둥이가 서로 협력하지 않고 같은 벽을 칠하려고 하는 것과 같습니다.

2. "충돌" (병합 충돌/Merge Conflicts)

두 로봇이 동일한 파일에 변경 사항을 저장하려고 할 때, 컴퓨터는 어떤 버전을 유지할지 결정해야 합니다. 이를 "병합(merge)"이라고 합니다. 만약 그들이 같은 줄을 수정했다면, 컴퓨터는 혼란에 빠져 "충돌(Conflict)" 플래그를 띄웁니다.

연구진은 이러한 병합을 시뮬레이션하여 얼마나 자주 문제가 발생하는지 확인했습니다:

  • 같은 로봇 vs 같은 로봇: 동일한 AI의 두 인스턴스가 병합을 시도했을 때, 약 **20%**의 확률로 충돌이 발생했습니다.
  • 다른 로봇 vs 다른 로봇: 서로 다른 유형의 AI가 병합을 시도했을 때, 약 **42%**의 확률로 충돌이 발생했습니다.
  • 시사점: 서로 다른 로봇은 동일한 로봇보다 서로 의견이 일치하지 않을 확률이 두 배 더 높습니다. 하지만 동일한 로봇들이 훨씬 더 자주 함께 작업하기 때문에, 전반적인 난장판은 주로 이들에 의해 발생합니다.

3. 무엇을 두고 싸우는가?

로봇들이 충돌할 때, 그 싸움의 본질은 무엇일까요?

  • 위치: 대부분의 싸움은 "쇼핑 리스트"(의존성 파일)나 문서가 아닌, 소스 코드(소프트웨어의 실제 명령어)에서 발생했습니다. 충돌의 약 84%가 코드 자체에서 나타났습니다.
  • 싸움의 유형:
    • 내용 싸움 (58%): 두 로봇 모두 같은 문단의 같은 문장을 수정하려고 했습니다.
    • 구조 싸움 (42%): 이것이 가장 기이한 부분입니다. 한 로봇은 파일을 삭제하기로 결정했는데, 다른 로봇은 그 파일을 수정하기로 결정했습니다. 또는, 두 로봇 모두 이름은 같지만 내용은 다른 새로운 파일을 생성하려고 했습니다.
    • 비유: 이는 한 로봇은 "주방을 철거하겠다"라고 말하고, 다른 로봇은 "주방을 리모델링하겠다"라고 말하며, 세 번째 로봇은 "바로 여기에 새 주방을 짓겠다"라고 말하는 것과 같습니다. 그들 모두가 옳을 수는 없습니다.

4. 이것이 왜 중요한가? (숨겨진 비용)

논문은 우리가 "텍스트적" 싸움(코드 줄)만을 측정했지만, 실제 비용은 이보다 훨씬 높다고 지적합니다.

  • "시간 낭비" 비용: 로봇들은 다른 이들이 작업 중이라는 사실을 모르기 때문에, 결코 합쳐질 수 없는 기능을 만드는 데 시간을 허비합니다.
  • "인간의 정리" 비용: 결국, 인간이 개입하여 엉망이 된 상황을 바로잡아야 합니다. 인간은 어떤 로봇이 맞았는지, 어떤 파일을 남길지, 그리고 삭제된 것을 어떻게 복구할지를 결정해야 합니다. 이는 로봇에게 일을 시키는 본래의 목적을 퇴색시킵니다.

요약

이 논문은 현재의 AI 코딩 에이전트들이 공유된 방 안에서 작업하는 외로운 천재들과 같다고 결론짓습니다. 그들은 개별적으로는 매우 생산적이지만, (심지어 같은 모델일지라도) 서로 대화하지 않기 때문에 끊임없이 자신의 발에 걸려 넘어집니다.

  • 빈도: 그들은 거의 항상 동시에 작업하고 있습니다.
  • 충돌률: 동일한 로봇은 약 20%, 서로 다른 로봇은 약 42%의 확률로 충돌합니다.
  • 난장판의 원인: 싸움은 단순한 오타보다는 코드 구조(파일 삭제 vs 추가)에 관한 것입니다.

연구진은 AI가 진정으로 소프트웨어를 구축하는 데 도움을 주려면, 이 로봇들에게 코드를 두드리기 전에 서로의 일정을 조정하고 대화하는 법을 가르쳐야 한다고 제안합니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →