최근에 AWS Skill builders 강의를 들었다.
아무래도 요새 AWS 측에서 밀고있는 주제가 App 현대화와 생성형 AI인 만큼 관련된 내용들이 강의로 나왔었는데, 그 중 흥미롭게 사용했었던 서비스중 하나를 가져왔다
Amazon Codewhisperer
생성형 AI기반의 코드 생성기, 주석으로 문장형 명령을 입력하면 AI가 그에 맞는 코드를 추천해주는 서비스이다.
아마존에서는 AI 코딩 동료라는 개념으로 이 서비스를 소개했다.
그리고 이 서비스는 개인 레벨의 계정에 한해서는 무료로 오픈했다고 하니, 부담없이 접근할 수 있는 장점도 있다.
지원하는 언어는 Java, Python, JS, Typescript, C#부터 Ruby, Go, PHP, C/C++, Shell, Scala, Rust, Kotlin, SQL을 지원한다.
(개인적으로 Cloudformation을 지원해줬으면 좋았을 것 같다는 생각이 들었다, 그래도 자사 서비스인데 해줄만 하지 않나...)
지원하는 IDE는 VSCode, Jetbrains, JupyterLab, 이외에도 AWS에서 지원하는 IDE인 SageMaker Studio, Glue Studio, Cloud9, Lambda가 있다.
이 서비스를 이용하기 위해서 인증과정을 거쳐야한다. 지원하는 인증 방법은 AWS IAM, Builder ID가 있다.
AWS 계정 단위에서 Access Control이 필요한 경우 IAM을 이용하도록 권장하고, 이외의 개인 레벨의 사용자는 Builder ID를 사용하는 것을 권장한다.
Editor에 Extension 설치
에디터(vscode)를 설치 후, extension에서 'AWS Toolkit'을 설치
Builder ID 계정 생성 및 Editor에 계정 연결
AWS Toolkit을 설치하면, 좌측 패널에 AWS 로고의 메뉴가 활성화된다.
Connect to AWS... 를 클릭하면 아래와 같이 3가지 서비스에 연결할 페이지가 나온다.
CodeWhisperer를 클릭해 Builder ID Sign in 클릭, 이후 confirm code가 담긴 팝업 창이 뜨게된다.
이를 적어두고 'Proceed To Browser'로 Builder ID 로그인 페이지로 넘어가게된다.
이제 Builder ID를 생성해야한다.
이메일을 입력하고 확인 메일에 담긴 코드를 입력해 Builder ID를 생성한다
이제 vscode로 돌아가서 CodeWhisperer를 Run해준다
사용해보기
지원하는 Language의 파일에서 주석문으로 명령문을 넣을 수 있다.
# Code function to upload object to s3 bucket
명령문을 넣고 엔터를 누르면 하단에 CodeWhisperer가 생성해준 코드를 볼 수 있다.
이렇게 생성된 코드는 탭 키를 누르면 파일로 불러올 수 있고, 다른 코드를 생성하기를 원하면 좌/우측 방향키로 다른 생성물을 볼 수 있다.
계속해서 엔터 - 탭 키를 눌러서 추천된 코드를 계속해서 가져올 수 있고, 간혹 코드 생성이 안되는 경우가 있는데 Alt + C를 눌러서 강제로 CodeWhisperer를 트리거하도록 할 수 있다.
주석 스타일로 명령어를 입력하는 것 외에도 함수명을 입력해 가장 적절한 코드를 추천받을 수도 있다.
이 밖에도 더미데이터를 만드는데에 사용할 수도 있다.
이렇게 json 데이터를 하나만 입력해도 format을 파악해 어느정도 괜찮은 더미데이터를 바로 뽑아준다.
이와 관련된 Workshop이 있으니 같이 보면 좋을듯하다