
GitHub Copilot이 코드 줄을 자동 완성하고 나아가 전체 코드 스니펫까지 자동 완성하면서 많은 이들이 던져온 질문은 "언제쯤 자연어만으로 앱을 설명하면 Copilot이 직접 구축해 줄 수 있을까?"였습니다. 최근 몇 달 사이 이 분야에서 여러 실험적 시도가 있었지만, 이번에는 GitHub가 산 프란시스코에서 열린 연례 GitHub Universe 컨퍼런스에서 발표한 GitHub Spark를 통해 이 아이디어를 공식적으로 전폭 지지했습니다.
공식적으로 GitHub Next labs에서 시작하는 실험적인 기능인 Spark는 자연어 명령어만으로 작은 웹 애플리케이션을 빠르게 구축할 수 있게 합니다. 숙련된 개발자는 여전히 코드를 확인하고 직접 편집할 수 있으며, 기본적으로 GitHub 리포지토리, 필요에 따라 GitHub Actions, 그리고 Microsoft의 Azure CosmosDB가 데이터베이스 역할을 합니다. 다만, 이 구조는 선택 사항입니다. 이상적으로는 채팅과 유사한 경험을 통해 프로토타입을 만들고, 이후 단계에서 이를 점진적으로 개선해 나갈 수 있습니다.
애플리케이션을 구축하려면 초기 프롬프트로 시작하며, Spark는 몇 초 안에 실시간 미리 보기(live preview)를 보여줍니다. 사용자들은 이 화면에서 챗봇과의 상호작용을 통해 앱을 세밀하게 조정하고 반복적으로 개선해 나갈 수 있습니다.
GitHub CEO인 Thomas Dohmke는 저에게 "우리는 이것이 개인 소프트웨어 제작의 다음 단계라고 진심으로 믿습니다. 이 마이크로 앱들은 전문 개발자를 대체하기 위함이 아닙니다. 아이디어를 탐색하고, 일상에서 작은 봇이나 도우미를 만들거나, 또는 자연어만으로 소프트웨어 개발 과정을 탐구할 수 있는 도구입니다"라고 말했습니다.
GitHub의 자료에서는 Spark를 "마이크로 앱을 구축하는" 도구로 설명하고 있지만, Dohmke는 Spark 애플리케이션의 복잡도에 대한 내재적 한계가 있는지 확실치 않다고 언급했습니다. 이에 대해 GitHub 대변인은 현재 프롬프트나 용량에 제한이 없다고 확인해 주었습니다(다만, 기술 프리뷰 이후에는 변경될 수 있습니다). Dohmke는 Spark가 모든 웹 API를 활용하고 자체적으로 AI 모델을 구동할 수 있는 점을 강조하며, GitHub 사용자들이 이 도구를 어디까지 밀어붙일지 기대한다고 밝혔습니다.
GitHub의 관계자는 "사용자들이 무엇을 할 수 있는지, 자연어의 힘과 아이디어를 탐색하도록 설계된 이 간단한 사용자 인터페이스만으로 얼마나 큰 규모의 애플리케이션을 만들 수 있을지 솔직히 기대됩니다. 새로운 아이디어를 촉발시킬 기회도 무궁무진합니다"라고 덧붙였습니다.
GitHub Copilot이 사용자가 어떤 대규모 언어 모델(LLM)을 사용할지 선택할 수 있게 된 것에 이어, Spark 역시 동일한 기능을 제공합니다. 사용자들은 Anthropic의 Claude Sonnet 최신 버전과 OpenAI의 GPT 모델 중에서 선택할 수 있습니다.
사용자들은 맞춤형 접근 제어(customized access controls)를 통해 Spark를 손쉽게 공유할 수 있습니다. 더욱 흥미로운 점은, 공유된 코드를 다른 사용자가 가져와서 스스로 기능을 확장할 수도 있다는 것입니다.
이러한 애플리케이션을 더욱 심화시키고 싶은 개발자라면 언제든지 코드를 검토하고, 만약 오류가 발견되면 이를 수정할 수 있습니다. Dohmke는 AI가 완벽하지 않음을 인정하며, "물론 코드베이스를 직접 살펴볼 수 있습니다. 따라서 코드베이스에 대한 이해가 있는 사용자라면 코드를 직접 보고 수정하는 것이 가능하며, 이는 AI가 실수할 경우—실제로 발생합니다—많은 도움이 될 것입니다"라고 말했습니다.
[출처:] https://techcrunch.com/2024/10/29/github-spark-lets-you-build-web-apps-in-plain-english