AI 기반 소프트웨어 최적화의 미래 (그리고 팀에 어떻게 도움이 될 수 있는지)

발행: (2025년 12월 13일 오전 05:43 GMT+9)
10 min read

Source: GitHub Blog

지속적인 효율성의 필요성

우리는 지속적인 효율성이 널리 채택될 준비가 되면 개발자, 기업, 그리고 지속 가능성에 큰 긍정적 영향을 미칠 것이라고 믿습니다.

개발자를 위한 혜택

디지털 지속 가능성과 그린 소프트웨어는 본질적으로 “효율성”과 맞닿아 있으며, 이는 소프트웨어 엔지니어링의 핵심입니다. 많은 개발자들이 더 높은 성능의 소프트웨어, 코드 표준화 향상, 변경 품질 보증 등으로부터 혜택을 받을 수 있습니다.

기업을 위한 혜택

지속 가능성을 위한 개발은 측정 가능한 비즈니스 가치를 제공합니다:

  • 전력 및 자원 소비 감소
  • 효율성 향상
  • 코드 품질 개선
  • 사용자 경험 향상
  • 비용 절감

그럼에도 불구하고 지속 가능성은 로드맵, 우선순위 목록, 백로그 등에 거의 포함되지 않습니다. 코드베이스가 스스로 지속적으로 개선될 수 있는 세상을 상상해 보세요…

지속적인 효율성 = 그린 소프트웨어 + 지속적인 AI를 보여주는 그래픽

지속적인 효율성은 효율성을 높이기 위해 코드베이스에 무노력으로, 점진적이며 검증된 개선을 적용하는 것을 의미합니다. 이는 우리가 개발 중인 일련의 도구와 기술에 기반한 새로운 실천 방식이며, 개발자 커뮤니티가 이를 확장해 나가길 기대합니다.

이 개념은 지속적인 AI그린 소프트웨어의 교차점에서 등장합니다.

  • Continuous AI – 소프트웨어 협업을 위한 AI 기반 자동화로, 플랫폼 기반 개발 및 CI/CD 워크플로우에서 LLM 기반 자동화를 탐구합니다.
  • Green Software – 에너지 효율이 높고 환경 영향을 낮추도록 설계된 소프트웨어로, 더 저렴하고, 성능이 뛰어나며, 회복력 있는 애플리케이션을 만들 수 있습니다.

(GitHub) Action(s)에서의 지속적인 효율성

지속적인 효율성은 일반적으로 적용 가능한 개념이지만, 우리는 Agentic Workflows 라는 특정 GitHub 플랫폼 및 인프라 위에서 구현을 구축해 왔습니다. 이는 공개적으로 이용 가능하고 오픈 소스이며 현재 “연구 시연” 단계(실험적 프로토타입, 사전 릴리스, 변경 및 오류 가능성 존재)입니다. Agentic Workflows는 GitHub 리포지토리에서 사전 대응형, 자동화된, 이벤트 기반 에이전트 행동을 탐색하기 위한 실험적 프레임워크이며, GitHub Actions 내에서 안전하게 실행됩니다.

우리의 작업은 두 가지 영역에 초점을 맞추었습니다:

규칙 및 표준 구현

현대 LLM과 에이전트 워크플로우를 활용하면 엔지니어링 표준과 코드 품질 가이드라인을 자연어로 직접 표현하고 대규모로 적용할 수 있습니다.

전통적인 린팅 및 정적 분석에 비해 주요 장점:

  • 선언형, 의도 기반 규칙 작성 – 자연어로 의도를 기술하면 모델이 이를 해석하고 구현합니다.
  • 의미적 일반화 가능성 – 하나의 고수준 규칙이 다양한 코드 패턴, 언어, 아키텍처에 적용됩니다.
  • 지능형 수정 – 에이전트 기반, 플랫폼 통합 행동을 통해 이슈가 해결됩니다(예: 풀 리퀘스트 열기, 코멘트 추가, 수정 제안).

사례 연구: 코드베이스 리뷰 – 그린 소프트웨어 규칙 구현

우리는 resolve 프로젝트와 협업하여 그린 소프트웨어 규칙 세트로 코드베이스를 스캔했습니다. 에이전트는 개선안을 제시했으며, 하나의 병합된 풀 리퀘스트는 핫 함수에서 RegExp 리터럴을 끌어올려 작은 성능 향상을 가져왔습니다. 월간 npm 다운로드가 5억 건을 초과하는 상황에서, 사소한 개선도 크게 확장됩니다.

사례 연구: 표준 구현 – 웹 지속 가능성 가이드라인(WSG)

W3C WSG는 보다 지속 가능한 웹 제품을 위한 지침을 제공합니다. 우리는 웹 개발 섹션을 20개의 에이전트 워크플로우로 변환하여 AI가 자동으로 가이드라인을 적용하도록 했습니다.

여러 GitHub 및 Microsoft 웹 자산에 이 워크플로우를 실행한 결과, 지연 로딩, 네이티브 브라우저 기능 활용, 최신 언어 표준 채택 등 다양한 개선 기회를 발견했습니다.

이기종 성능 향상

성능 엔지니어링은 소프트웨어가 이기종적이기 때문에 어렵습니다—다양한 언어, 아키텍처, 성능 병목(알고리즘, 캐시, 네트워크 등)이 존재합니다. 전문가 엔지니어는 이러한 복잡성을 잘 다루지만, 산업 전반에 걸친 확장 가능한 도구가 필요합니다.

우리는 “범용 에이전트”를 탐구하고 있습니다. 이 에이전트는 어떤 소프트웨어 리포지토리든 평가하고 입증 가능한 성능 향상을 제시할 수 있습니다. 주요 흐름은 다음과 같습니다:

  1. 프로젝트를 빌드, 벤치마크, 측정하는 방법을 발견합니다(“repo에 맞춤”).
  2. 관련 성능 도구를 조사하고 마이크로벤치마크를 실행합니다.
  3. 인간의 지도를 받으며 목표 코드 변경을 제안합니다.

초기 결과는 다양하지만, 일부 파일럿에서는 가이드된 자동화가 대규모로 의미 있는 성능 향상을 가져올 수 있음을 보여줍니다.

사례 연구: Daily Perf Improver

Daily Perf Improver는 소규모 일일 스프린트를 위한 3단계 워크플로우입니다:

  1. 개선 사항을 조사하고 계획합니다.
  2. 빌드 및 벤치마크 절차를 추론합니다.
  3. 측정된 최적화를 반복적으로 제안합니다.

최근 FSharp.Control.AsyncSeq 파일럿에서, 이 워크플로우는 여러 개의 승인된 풀 리퀘스트를 생성했으며, 여기에는 재발견된 성능 버그 수정 및 마이크로벤치마크 기반 최적화가 포함되었습니다.

Daily Perf Improver Research Demonstrator

에이전트 워크플로우 구축 및 실행 방법

GitHub 에이전트 워크플로우를 사용하면 전통적인 YAML이나 스크립트 대신 자연어(마크다운)로 자동화를 작성할 수 있습니다. .md 파일에 원하는 동작에 대한 설명을 시작으로, 플랫폼이 해석하고 실행할 구조화된 섹션들을 차례로 기술하면 됩니다.

Back to Blog

관련 글

더 보기 »

GitHub Actions에 대해 이야기해봅시다

GitHub Actions는 2018년 출시 이후 크게 성장했으며, 2025년 한 해만 해도 개발자들이 공개 및 오픈‑소스 프로젝트에서 115억 분의 GitHub Actions 시간을 사용했습니다.

GitHub 가용성 보고서: 2025년 11월

2021년 11월 17일 – UTC 16:52에 시작해 2시간 16분 지속되었습니다. 2025년 11월 17일 UTC 16:52부터 19:08까지, Dependabot이 GitHub Container Registry(GHCR)에서 속도 제한에 걸렸습니다.