Human vs. AI – Diff-based line-level provenance for text under agentic editing
개요
Us vs. Them은 텍스트의 버전 기록을 기반으로 사람이 작성하거나 수정한 코드 라인과 AI가 생성하거나 수정한 코드 라인을 구분하여 출처를 파악하는 시스템입니다.
주요 내용
- 문제점: AI 에이전트가 코드를 편집하고 생성할 때, 사람이 작성한 부분을 AI가 변경하는 것에 대한 명확한 구분이 필요합니다. 사람이 작성한 코드는 '신성한' 것으로 간주되어 AI 에이전트가 수정하기 어렵게 만들고, AI가 생성한 코드는 자유롭게 수정할 수 있도록 하여 코드의 소유권과 의도를 명확히 할 수 있습니다.
- 주요 사용 사례:
- AI가 생성한 코드에서 특정 부분에 개발자의 아이디어와 소유권을 명확히 하고 싶을 때, 다른 AI 에이전트가 해당 부분을 함부로 수정하지 못하도록 합니다.
- README.md 파일 등에서 사람이 처음 작성한 도입 부분을 AI가 변경하려 할 때 신중하게 접근하도록 유도합니다.
- 작동 방식:
- 텍스트에 특별한 마크업을 하지 않고 일반 텍스트(markdown)를 지원합니다.
- 각 텍스트 버전이 사람이든 AI 에이전트든 고유한 작성자 정보를 가지고 있음을 활용합니다.
- 알고리즘은 텍스트의 버전 기록을 단순 diffing(차이점 비교)하는 것에 기반하며, 개별 라인뿐만 아니라 의미적으로 일관된 텍스트 조각의 출처를 추적합니다.
- 코드 조각의 합쳐짐, 분리, 또는 출처의 희석과 같은 변화도 고려하여, 최종 결과가 완전히 사람이 작성한 부분이나 AI가 작성한 부분으로만 수렴되지 않도록 합니다.
- 결과적으로 사람이 작성한 라인의 '섬'과 기계가 생성한 텍스트의 '바다'로 구성된 범위 집합을 출력합니다.
- 사용법:
- CLI 도구로 사용 가능하며, Git 저장소 내에서 특정 파일에 대해
--ours(사람) 또는--theirs(AI) 매개변수를 사용하여 출처를 확인할 수 있습니다. - 출력 형식은
범위 점수로 나타나며, 1.0은 완전히 사람이 작성한 범위, 0.46은 AI에 의해 일부 수정된 원래 사람이 작성한 범위, 0.00은 완전히 AI가 작성한 범위를 의미합니다.
시사점
Us vs. Them은 AI와 협업하는 환경에서 코드 및 텍스트의 출처를 명확히 하여 개발자의 소유권 주장과 AI 에이전트의 적절한 편집 범위를 설정하는 데 유용한 도구입니다.
원문을 불러오는 중...
댓글
GitHub Discussions