AI プログラミング: GitHub Copilot と Amazon CodeWhisperer の詳細な比較

AI プログラミング: GitHub Copilot と Amazon CodeWhisperer の詳細な比較

1. はじめに

GitHub Copilot と Amazon CodeWhisperer は、コーディングの自動補完をまったく新しいレベルに引き上げる AI 搭載のコーディング アシスタントです。最高の場合、開発者が提供する短い説明テキストに基づいて、完全に機能する実用的なコード ブロックを作成できます。これにより、開発者の効率が向上し、開発もより楽しくなります。

次に、この記事に従って、最高の AI コーディング アシスタントについて学習を始めましょう。

2. AI コーディングアシスタントとは何ですか?

GitHub Copilot と Amazon CodeWhisperer は、コードエディターと統合して開発者がより速くコードを記述できるようにするサービスです。しかし、IntelliSense などの一般的な自動補完ツールとは異なり、Copilot と CodeWhisperer はソース コードと自然言語の両方でトレーニングされた機械学習モデルを活用しているため、プログラミング言語と人間の言語の両方を理解します。これにより、平易な英語で書かれたコメントを理解し、開発者の意図に基づいてコードを生成し、開発者のパターンとスタイルに一致させることができます。開発者が入力すると、最初のコメント自体を完成させるための提案も表示されます。一番上の提案を受け入れるか、他の提案を確認するか、独自のコードを書き続けることができます。

定型コードの作成やコードパターンの繰り返しに費やす時間を減らし、重要なこと、つまり優れたソフトウェアの構築に多くの時間を費やしましょう (GitHub Copilot)。

2.1 GitHub Copilot とは何ですか?

GitHub コパイロット: https://github.com/features/copilot/

GitHub Copilot は GitHub と OpenAI が共同で開発し、GitHub の公開ソースコード リポジトリを含む公開ソースコードでトレーニングされた OpenAI の Codex モデルを搭載しています。 Copilot は、2022 年 6 月に「テクニカル プレビューを終了する」ことを正式に発表しました。

写真

説明的なコメントまたは関数名の入力を開始すると、Copilot は残りの部分を自動補完しようとします。

Copilot は非常に使いやすく、すべての主要なコード エディターとの統合が合理化されています。 GitHub Copilot は 7 つの主要なプログラミング言語 (下の表を参照) に最適化されていますが、他の言語やさまざまなフレームワークの提案も生成できます。

Copilot はプレビュー段階では無料でしたが、GitHub は 2022 年にサブスクリプション モデルに移行することを発表しました。開発者は引き続き 60 日間の無料トライアルを受けることができ、認証済みの学生や人気のあるオープン ソース プロジェクトのメンテナーには引き続き無料で提供されます。

写真

Copilot の提案は状況に応じて異なります。開発者が定数を使用することを「学習」する方法と、オブジェクトに適切な名前を付けて設定する方法に注目してください。

2.2 Amazon CodeWhisperer とは何ですか?

Amazon CodeWhisperer : https://aws.amazon.com/cn/codewhisperer/

Amazon CodeWhisperer は Amazon によって開発されました。同社の機械学習モデルは、Amazon の社内コードやオープンソースコードなど、さまざまなデータソースに基づいてトレーニングされています。

写真

CodeWhisperer はコメントを補完し、コメントに基づいてコードの提案を提供できます。開発者はさまざまなコード実装を切り替えて、最も適したものを選択できます。

CodeWhisperer は、GitHub Copilot よりもサポートされる言語と主要なコード エディターが少なくなっています。ただし、幅広い言語と IDE のサポートは CodeWhisperer の主な魅力ではありません。代わりに、CodeWhisperer は AWS API に対するファーストクラスのサポートを提供することに重点を置いており、Amazon Elastic Compute Cloud (EC2)、AWS Lambda、Amazon Simple Storage Service (S3) などの最も人気のあるサービスに対するコード提案を提供しています。

Amazon の公式サイトの紹介によると、ユーザーは「S3 にファイルをアップロードする」と書くだけでよいとのこと。CodeWhisperer は、指定されたタスクに最適なクラウド サービスとパブリック ライブラリを自動的に判別し、特定のコードを即座にビルドし、生成されたコード スニペットを IDE 内で直接推奨します。

Amazon CodeWhisperer の紹介

CodeWhisperer は、個人の開発者が無料で使用できます。

3. 比較

写真

GitHub Copilot と Amazon CodeWhisperer の比較。

3.1 どちらが人気がありますか?

CodeWhisperer は最近リリースされたため、GitHub Copilot は 1 年先行しており、現在は優位に立っています。 GitHub 独自のデータによると、プレビュー フェーズの 12 か月間に 120 万人を超える開発者が Copilot のテクニカル プレビュー バージョンを使用しました。 GitHub Copilot の独自の調査によると、ユーザーは GitHub Copilot が提供する補完の平均 26% を受け入れており、開発者のコ​​ード ファイルの最大 40% が GitHub Copilot によって生成されています。

3.2 プライバシーはどのように保護されますか?

パフォーマンスを向上させるために、Copilot と CodeWhisperer はどちらもユーザーからデータを収集します。職場でこれらのツールを使用すると、コードベースやデータが危険にさらされるでしょうか?これは重要な質問であり、ほとんどの企業にとって潜在的な決定要因となる可能性があります。

コードの提案を提供するために、GitHub Copilot は開発者のコ​​ードとコメントを GitHub Copilot サービスに送信します。このサービスは、編集中のファイルやプロジェクト内の隣接ファイルまたは関連ファイルなど、ファイルの内容のコンテキストに依存します。関連するコンテキストを識別するために、リポジトリの URL またはファイル パスを収集することもあります。データ収集の特定の部分は、テレメトリ設定で無効にすることができます。ただし、使用情報などの他の部分は Copilot を使用するために必要であり、オフにすることはできません。これには、GitHub プライバシー ポリシーに詳述されているように、個人データが含まれる場合があります。

GitHub プライバシー ポリシー: https://docs.github.com/en/site-policy/privacy-policies/github-privacy-statement

GitHub はまた、社内テストの結果、GitHub Copilot の提案にはトレーニング セットから直接抽出された個人データが含まれることはほとんどないことがわかったと述べています。ただし、これらの提案の一部は、単に個人データ (電子メール アドレス、電話番号など) のように見える場合がありますが、実際にはトレーニング データ内のパターンから合成された架空の情報です。

Amazon CodeWhisperer は、コンテキスト情報 (ファイルの内容を含む)、フィードバック、テレメトリメトリック、ユーザー環境情報などの特定の情報も収集します。アマゾンは利用規約の中で、プレビュー段階でコンテンツ共有をオンまたはオフにするオプションを開発者に提供すると述べている。

3.3 リスクと脆弱性にどう対処するか?

どちらのアシスタントも、安全でないコーディング パターン、バグ、または古い API や慣用句への参照が含まれている可能性のある公開コードについてトレーニングされています。 「キーボードを打つ人は寝ているのか? GitHub Copilot のコード貢献のセキュリティを評価」というレポートでは、Copilot を使用したテスト シナリオのコードのうち最大 40% に脆弱性があることが判明しました。

【レポート】 :https://arxiv.org/pdf/2108.09293.pdf

GitHub は、Copilot が古いライブラリや非推奨のライブラリや言語の使用を提案することがあり、不適切なパターンを含むコードを合成する可能性があることを認めています。これを軽減するには、GitHub Actions、Dependabot、CodeQL などのツールと組み合わせて使用​​し、コードの品質を向上させることが推奨されています。

Amazon についても同様ですが、評価に値するのは、Amazon が Java および Python プロジェクトの脆弱性を検出するセキュリティ スキャン機能を提供することで、この問題に対処するための適切な措置を講じていることです。

写真

セキュリティ スキャンを実行することを選択すると、CodeWhisperer はこの脆弱性を検出し、問題を表示します。 (出典: AWS Machine Learning ブログ)

そうは言っても、開発者は常に、適切なテスト、適切なコードレビューの実践、堅牢なセキュリティツール、そして独自の判断と組み合わせて、AI 支援コーディング アシスタントを使用する必要があります。

3.4 公開コードの(誤った)使用についてはどうでしょうか?

トレーニング セットで共通コードを広範囲に使用することに関して懸念が提起されています。理想的には、アシスタントは常に、これまで見たことのないコードを生成する必要があります。アシスタントがトレーニング セットからコードを直接引用すると、そのコードはフェアユースの対象外となり、元の所有者の著作権を侵害する可能性があります。

これを緩和するために、Copilot には、GitHub Copilot の提案に含まれるコードが GitHub 上の公開コードと一致するケースを検出して抑制しようとするフィルターが組み込まれています。このフィルターはオプションであり、オフにすることができます。 GitHub によると、Copilot は約 1% のケースで、公開コードとまったく同じ 150 文字以上のコード スニペットを出力します。彼らは、この問題の原因は GitHub Copilot が開発者が書いているコードから十分なコンテキストを取得できなかったこと、あるいはこの問題に対する一般的な、さらには普遍的な解決策にあったとしています。

Copilot と同様に、CodeWhisperer にも、生成された出力が特定のトレーニング データに類似しているかどうかを検出できる参照トラッカーが搭載されています。ユーザーが書いたコードの収集に関して、Amazon は、プレビュー段階では、開発者が書いたコードを使用してモデルをさらにトレーニングすることはないと述べています。ただし、CodeWhisperer は、提案の承認や拒否など、コード提案に対する開発者の応答に関連するユーザー アクティビティ データを保存します。このサービスでは、このフィードバックを使用して機械学習モデルの精度を向上させ、CodeWhisperer が将来の推奨事項を改善できるようにします。

4. 勝者は誰ですか?

言語と統合開発環境 (IDE) のサポートに関しては、GitHub Copilot が勝者です。正式な展開には時間がかかるため、GitHub スタッフはバグを修正し、問題を解決するための時間を増やすことができます。これを使用するには少額の投資が必要ですが、開発者は完全に機能し、すぐに使用できる製品を入手できます。

ただし、開発者が AWS 環境で作業している場合は、Amazon CodeWhisperer がより適切なオプションになる可能性があります。 Amazon は、主に自社製品向けにインテリジェントなコーディング アシスタントを提供する最初のクラウド サービス プロバイダーです。さらに、統合された脆弱性検出機能も、この製品の使用を検討する十分な理由となります。最後に、個人開発者にとっては無料です。

<<:  ChatGPT の実際のパラメータはわずか 200 億であり、これは Microsoft によって初めて公開されました。ネットユーザー:OpenAIがオープンソースに不安を感じるのも無理はない

>>:  AI はプラットフォーム エンジニアリングと DevEx をどのように強化するのでしょうか?

ブログ    

推薦する

謎の AI 顔変更ソフトウェアが世界中のソーシャル ネットワークに侵入!マスク氏は数秒でルネサンス貴族になる

[[410798]] FaceAppの人気は過ぎ去り、最近では、あなたの顔を数秒で「ディズニー」に変...

...

AIの「不確実な時代」にどう向き合うか

AIの拡大する影響私たちの日常生活における AI の影響はますます明らかになってきています。 AI ...

人工知能に基づく顔認識技術と評価システムの研究

[[428633]] 0 はじめに人工知能と光学画像デバイスの急速な発展に伴い、高度なハードウェア基...

百度研究所が2020年のAI技術トレンド予測トップ10を発表

一歩前進、そしてまた一歩前進し、2019年が終わりました。 12月24日、百度研究所は2020年のト...

...

...

GoogleはOpenAIの競合企業Anthropicに最大20億ドルを投資することに同意したと報じられている

事情に詳しい関係者によると、10月28日、Googleはこれまでの投資に加え、OpenAIの競合企業...

プライベート写真100億枚が流出! Clearview AIバイオメトリクスがあなたを監視しています

米国に拠点を置く顔認識企業 Clearview Ai は、最も包括的な顔認識システムを有していると主...

Google AI で学ぶ: Google が AI と機械学習の無料オンライン リソースをさらに公開

海外メディアの報道によると、機械学習とAIは現在、テクノロジー業界で最もホットな話題となっている。世...

一流大学のAIが一流弁護士に勝つ:契約書のレビューを26秒で完了

最近、アメリカの一流弁護士たちが人工知能と競争したが、弁護士たちは負けたと報じられている。法律AIプ...

AI バイアス: なぜ起こるのか、そして企業はどのように修正できるのか

ビジネスや社会で AI の利用が広まるにつれ、企業は機械モデルに現れる人間の偏見に注意を払う必要があ...

...

2頭のアルパカが頭と尻尾を切り落とし、それをくっつけてハギングフェイスリストのトップに

HuggingFace が再びオープンソースの大規模モデルのリストのトップに躍り出ました。最前列は、...