はじめに
GitHub Copilot と Amazon CodeWhisperer でちょっと出力比較してみた。
ここからの結果は2023/4/15での出力を元にしていることに注意してください。
出力
Pythonで出力比較してみました。やり方はいたって簡単です。VSCodeで以下を補完してもらいました。
#Hello world を表示するLambda関数
GitHub Copilot
#Hello world を表示するLambda関数 import json def lambda_handler(event, context): return { 'statusCode': 200, 'body': json.dumps('Hello from Lambda!') }
Amazon CodeWhisperer
#Hello world を表示するLambda関数 import json import boto3 from datetime import datetime from datetime import timedelta def lambda_handler(event, context): # TODO implement print("Hello World") return { 'statusCode': 200, 'body': json.dumps('Hello from Lambda!') }
比較
これらを比較してみるとCopilotは最低限のコードは出力してくれています。まんまLambdaを起動したときに入っているコードですね。それに比べてCodeWhispererは何か余計なものをインポートしてたり出力しているような気がします。そのためメモリも消費しています。
これもコメントの違いとかで対処はできると思いますが現状はCopilotの方が出力も早いような気がします。CodeWhispererは一度に出力してくれませんでした。何度もTAB押しました。
たぶんコメントの入れ方が下手なのかもしれない。英語の方が良いのでしょうか。
まとめ
開発者ではないので優劣は付けれませんが、CodeWhispererは出たばかりです。今後に期待です。なぜなら、AWSに特化したコード出力を強化してくることも考えられます。そうなればAWSユーザーにはとても強力なツールになるでしょう。CodeWhispererは個人利用では無料ってのも良いですね。