GitHub Copilot 대 Amazon CodeWhisperer
최고의 AI 기반 코딩 어시스턴트를 위한 전투가 공식적으로 시작되었습니다!
GitHub Copilot 및 Amazon CodeWhisperer는 완전히 새로운 차원의 자동 완성 기능을 제공하는 AI 기반 코딩 도우미입니다. 기껏해야 개발자가 제공한 작은 설명 텍스트를 기반으로 작동하는 코드의 전체 덩어리를 작성할 수 있습니다. 이것은 개발자로서 당신을 더 효율적으로 만들 수
있고, 제 생각에는 개발이 훨씬 더 재미있어집니다!✨
더 이상 고민하지 않고 시작하겠습니다!
AI 기반 코딩 어시스턴트란 무엇입니까?
GitHub Copilot 및 Amazon CodeWhisperer는 코드 편집기와 통합되고 코드를 더 빠르게 작성하는 데 도움이 되는 서비스입니다. 그러나 예를 들어 "IntelliSense"와 같은 일반적인 자동 완성 도구와 달리 Copilot 및 CodeWhisperer는 소스 코드와 자연어 모두에 대해 훈련된 기계 학습 모델을 활용하여 프로그래밍과 인간 언어를 모두 이해할 수 있습니다. 이를 통해 평이한 영어로 작성된 주석을 이해하고 개발자의 의도에 따라 코드를 생성하며 개발자의 패턴과 스타일을 일치시킬 수 있습니다. 입력할 때 초기 주석 자체를 완성하기 위한 권장 사항도 제공합니다. 최고의 권장 사항을 수락하거나 더 많은 권장 사항을 보거나 단순히 자신의 코드를 계속 작성할 수 있습니다.
상용구 및 반복 코드 패턴 생성에 소요되는 시간을 줄이고 중요한 작업에 더 많은 시간을 할애하십시오: 훌륭한 소프트웨어 구축(GitHub Copilot)
GitHub Copilot이란 무엇입니까?
GitHub Copilot은 GitHub와 OpenAI에서 개발했습니다. GitHub의 공개 리포지토리를 포함하여 공개적으로 사용 가능한 소스 코드에서 훈련된 OpenAI의 Codex 모델로 구동됩니다. Copilot은 2022년 6월에 공식적으로 "기술 프리뷰에서 제외"되었다고 발표되었습니다.
Copilot은 사용하기 매우 쉽고 모든 주요 코드 편집기와의 간소화된 통합을 제공합니다. GitHub Copilot은 7가지 주요 프로그래밍 언어에 최적화되어 있지만(자세한 내용은 아래 차트 참조) 다른 언어 및 다양한 프레임워크로 제안을 생성할 수도 있습니다.
Copilot은 프리뷰 단계에서 무료였지만 GitHub는 최근 구독 기반 모델로 전환할 것이라고 발표했습니다. 여전히 60일 무료 평가판을 사용할 수 있으며 검증된 학생과 인기 있는 오픈 소스 프로젝트의 관리자에게는 계속 무료로 제공됩니다.
Amazon CodeWhisperer란 무엇입니까?
Amazon CodeWhisper는 Amazon에서 개발했습니다. ML 모델은 Amazon의 사내 코드 및 오픈 소스 코드를 비롯한 다양한 데이터 소스에서 학습됩니다.
CodeWhisperer는 아직 미리 보기 상태이며 GitHub Copilot보다 더 적은 수의 언어와 더 적은 주요 코드 편집기를 모두 지원합니다. 그러나 광범위한 언어 및 IDE 지원이 주요 매력은 아닙니다. 대신 CodeWhisperer는 Amazon Elastic Compute Cloud(EC2), AWS Lambda 및 Amazon Simple Storage Service(S3)를 포함하여 가장 널리 사용되는 서비스에서 AWS API에 대한 코드 권장 사항을 제공하는 AWS API에 대한 최고 수준의 지원을 제공하는 데 중점을 둡니다. 수량보다 품질?
이 Amazon 블로그 게시물 에 따르면 사용자는 "S3에 파일 업로드"를 작성할 수 있어야 하며 CodeWhisperer는 지정된 작업에 가장 적합한 클라우드 서비스 및 공용 라이브러리를 자동으로 결정하고 즉시 특정 코드를 빌드합니다. 생성된 코드 스니펫을 IDE에서 직접 추천합니다.
프리뷰 기간 동안 개발자는 여기 에서 가입하여 CodeWhisperer를 무료로 사용할 수 있습니다 .
비교
어느 것이 더 인기가 있습니까?
CodeWhisperer(지난 달 출시)의 짧은 수명을 감안할 때 사용자 수와 관련된 데이터를 찾을 수 없었습니다. 그러나 1년 앞서 출발한 GitHub Copilot이 현재 지배적인 플레이어라고 말하는 것이 안전할 것입니다. GitHub 자체에 따르면 지난 12개월 동안 120만 명 이상의 개발자가 Copilot의 기술 프리뷰를 사용했습니다. 그들의 자체 연구에 따르면 사용자는 GitHub Copilot에 의해 표시된 모든 완료의 평균 26%를 수락했으며 개발자 코드 파일의 최대 40%가 GitHub Copilot에 의해 생성되었습니다.
프라이버시는 어떻습니까 ?
성능을 개선하기 위해 Copilot과 CodeWhisperer는 모두 사용자로부터 데이터를 수집합니다. 직장에서 이러한 도구를 사용하여 조직의 코드베이스 또는 데이터를 위험에 빠뜨리고 있습니까? 이것은 대부분의 회사에서 중요한 질문이자 잠재적인 거래 차단기입니다.
코드 제안을 제공하기 위해 GitHub Copilot은 코드와 주석을 GitHub Copilot 서비스로 보냅니다. 이 서비스는 편집 중인 파일과 프로젝트 내의 인접 파일 또는 관련 파일 모두에서 상황에 맞는 파일 콘텐츠에 의존합니다. 또한 관련 컨텍스트를 식별하기 위해 리포지토리 또는 파일 경로의 URL을 수집할 수 있습니다. 원격 분석 설정에서 데이터 수집의 일부를 비활성화할 수 있습니다. 사용 정보와 같은 다른 부분은 Copilot 사용에 필요하며 끌 수 없습니다. 여기에는 GitHub 개인 정보 보호 정책 에 참조된 개인 데이터가 포함될 수 있습니다 .
GitHub는 또한 내부 테스트에서 GitHub Copilot 제안에 교육 세트의 개인 데이터가 그대로 포함되는 경우가 드물다 는 사실을 발견했습니다 ("희귀"..? ). 그러나 이러한 제안 중 일부는 이메일 주소, 전화번호 등의 개인 데이터인 것처럼 보일 수 있지만 실제로는 교육 데이터의 패턴에서 합성된 가상 정보입니다.
Amazon CodeWhisperer는 상황 정보(파일 콘텐츠 포함), 피드백, 원격 측정 지표, 사용자 환경 정보와 같은 특정 정보도 수집합니다. 서비스 약관에서 Amazon은 미리 보기 단계에서 콘텐츠 공유를 켜거나 끌 수 있는 옵션을 제공할 수 있다고 명시합니다.
위험과 취약점은 어떻습니까?
두 어시스턴트는 안전하지 않은 코딩 패턴, 버그 또는 오래된 API 또는 관용구에 대한 참조를 포함할 수 있는 공개 코드에 대해 교육을 받았습니다. 연구 "키보드에서 잠들었습니까? GitHub Copilot의 코드 기여 보안 평가 ”는 Copilot을 사용하는 테스트 시나리오의 40%에 취약한 코드가 포함되어 있음을 발견했습니다.
GitHub는 Copilot이 때때로 오래되었거나 더 이상 사용되지 않는 라이브러리 및 언어 사용을 제안할 수 있으며 바람직하지 않은 패턴이 포함된 코드를 합성할 수 있음을 인정합니다. 이를 완화하기 위해 GitHub Actions, Dependabot 및 CodeQL과 같은 도구와 함께 제품을 사용하여 코드 품질을 개선할 것을 제안합니다.
Amazon도 마찬가지지만, Amazon은 Java 및 Python 프로젝트의 취약성을 감지하기 위한 보안 스캔을 제공하여 이에 대응하기 위해 많은 조치를 취했습니다.
즉, AI 기반 코딩 어시스턴트를 적절한 테스트, 우수한 코드 검토 관행, 신뢰할 수 있는 보안 도구 및 자신의 판단과 함께 항상 사용해야 합니다!
공개 코드의 (오용) 사용은 어떻습니까?
교육 세트에서 공개 코드의 실질적인 사용에 대한 인식이 높아졌습니다. 이상적으로는 어시스턴트가 이전에 본 적이 없는 코드를 일관되게 생성해야 합니다. 대신 어시스턴트가 트레이닝 세트에서 직접 코드를 암송하면 공정 사용으로 간주되지 않을 수 있으며 원래 소유자의 저작권을 침해할 수 있습니다.
이를 완화하기 위해 Copilot에는 GitHub Copilot 제안에 GitHub의 공개 코드와 일치하는 코드가 포함된 인스턴스를 감지하고 억제하는 필터가 내장되어 있습니다. 이 필터는 선택 사항이며 끌 수 있습니다. GitHub 자체에 따르면 Copilot은 시간의 약 1%에서 ~150자보다 긴 축어적 코드 스니펫을 출력합니다. 그들은 GitHub Copilot이 작성 중인 코드에서 충분한 컨텍스트를 수집할 수 없거나 문제에 대한 일반적인, 아마도 보편적인 솔루션이 있는 경우에 이를 비난합니다.
Copilot과 마찬가지로 CodeWhisperer에는 생성된 출력이 특정 교육 데이터와 유사할 수 있는 시기를 감지할 수 있는 참조 추적기가 함께 제공됩니다. 사용자가 작성한 코드 수집과 관련하여 Amazon은 미리보기 단계에서 모델을 추가로 교육하기 위해 개발자가 작성한 코드를 사용하지 않을 것이라고 밝혔습니다 . 그러나 CodeWhisperer는 권장 사항 수락 또는 거부와 같은 코드 권장 사항에 대한 개발자의 응답과 관련된 사용자 활동 데이터를 저장 합니다 . 이 서비스는 CodeWhisperer가 향후 권장 사항을 개선할 수 있도록 이 피드백을 사용하여 ML 모델을 더 정확하게 만듭니다.
승자는..?
GitHub Copilot은 언어 및 IDE 지원 측면에서 승자입니다. 또한 더 오래 사용되었으며 공식적으로 프리뷰가 종료되어 개발자가 버그를 수정하고 도로의 충돌을 완화할 수 있는 더 많은 시간을 제공합니다. 이를 사용하려면 약간의 재정적 투자가 필요하지만 사용할 준비가 된 완전한 기능의 제품을 얻을 수 있습니다.
그러나 AWS 환경에서 작업하는 경우 Amazon CodeWhisperer가 적합할 것입니다. 주로 자체 제품을 겨냥한 지능형 코딩 도우미를 제공하는 최초의 클라우드 서비스 제공업체가 된 Amazon의 노력에 정말 감탄했으며 더 많은 제공업체가 이를 따르기를 바랍니다(Azure, 당신을 보고 있습니다!). 또한 통합된 취약성 감지도 고려해야 할 좋은 이유가 될 수 있습니다. 마지막으로, 현재 무료라는 사실은 적어도 미리 보기 기간 동안 사용해 볼 수 있는 강력한 인센티브입니다. 그러나 이렇게 하려면 등록하고 차례를 참을성 있게 기다려야 합니다. ⏳
마지막으로, 잠시 시간을 내어 기술이 얼마나 발전했는지, 그리고 이제 우리가 개발자로서 활용할 수 있는 놀라운 도구는 무엇인지 알아보겠습니다! GitHub Copilot과 Amazon CodeWhisperer는 모두 머지 않은 미래에 모든 진지한 개발자에게 필수 도구가 될 것으로 예상되는 놀라운 기술입니다. 그리고 Google 및 Salesforce 와 같은 다른 행위자가 물에 발을 담그기 시작하면서 코드 개발과 관련하여 곧 새로운 시대에 진입할 것 같은 느낌이 듭니다.
이 기사가 도움이 되었기를 바랍니다. 읽어 주셔서 감사합니다!
편집자 참고:
GitHub Copilot은 데이터 과학자로서의 작업에서 매우 유용했습니다. 데이터 분석을 수행하려면 종종 가설을 빠르게 테스트해야 합니다. 나는 일반적으로 결과가 어떻게 될지 미리 알지 못하기 때문에 내 가설을 확인하거나 거부하기 위해 한 번만 실행할 거의 동일한 코드를 많이 작성하게 되는 경우가 많습니다. GitHub Copilot은 이 프로세스의 속도를 높이는 훌륭한 도구였으며 모든 데이터 과학자가 선호하는 IDE, 즉 Jupyter Notebook(VS Code에서) 과도 잘 통합됩니다 !
참조
- GitHub, 당신의 AI 쌍 프로그래머 (2022), github.com
- Amazon, ML 기반 코딩 동반자 — Amazon CodeWhisperer — Amazon Web Services (2022), aws.amazon.com
- Amazon, AWS, Amazon CodeWhisperer(미리 보기) (2022), aws.amazon.com 발표
- A. Desai 및 A. Deo, ML 기반 코딩 동반자인 Amazon CodeWhisperer 소개 (2022), AWS 기계 학습 블로그
- S. Bhattacharyya, AI 코딩 어시스턴트 전투: GitHub Copilot 대 Amazon CodeWhisperer (2022), analyticsindiamag.com
- B. Dickson, GitHub Copilot이 공개됨 — 알아야 할 사항 (2022),venturebeat.com
- F. Lardinois, Amazon, GitHub Copilot과 유사한 AI 쌍 프로그래밍 도구인 CodeWhisperer 출시 (2022), techcrunch.com
- D. Gershgorn, GitHub의 자동 코딩 도구는 테스트되지 않은 법적 근거 (2021), theverge.com

![연결된 목록이란 무엇입니까? [1 부]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































