Vertex AI には、コードを扱う一連のモデルが含まれています。これらのコードモデルを総称して Vertex AI Codey API と呼びます。Vertex AI Codey API には次のものが含まれます。
コード生成 API - 目的のコードの自然言語による記述に基づいてコードを生成します。たとえば、関数の単体テストを生成できます。コード生成 API は、
code-bisonモデルをサポートしています。code-bisonモデルの詳細については、コード生成プロンプトを作成するとコード生成プロンプトをテストするをご覧ください。Code chat API - コード関連の質問を支援する chatbot を強化できます。たとえば、コードのデバッグに使用できます。コードチャット API は、
codechat-bisonモデルをサポートしています。codechat-bisonモデルの詳細については、コードについてチャットするプロンプトを作成するとコードチャット プロンプトをテストするをご覧ください。コード補完 API - コードを記述する際に、コードの予測入力候補を提示します。API は、作成しているコードのコンテキストを使用して提案を行います。コード補完 API は、
code-geckoモデルをサポートしています。code-geckoモデルはストリーミング レスポンスをサポートしていませんが、code-geckoモデルを使用すると、コード記述の速度と精度を向上させることができます。code-geckoモデルの詳細については、コード補完プロンプトを作成するとコード補完プロンプトをテストするをご覧ください。
Vertex AI SDK for Python を使用してコード生成モデル、コードチャット モデル、コード補完モデルを操作する方法については、コードモデルと Vertex AI SDK を使用するをご覧ください。
Codey API のベスト プラクティス
Codey API を使用する場合は、次の点に注意してください。
Codey API を使用する場合は、人が関与することをおすすめします。Codey API で作成されたソリューションの出力は、本番環境でお客様がソリューションを使用する前に、包括的にテストする必要があります。
Codey API によって生成されたコードは、コード開発の代替となることを意図したものではありません。
サイバーセキュリティやハッキング防止などの機密性の高い業種向けのソリューションの実装に、Codey API を使用しないことをおすすめします。
Codey API のユースケース
Codey API は、ソフトウェア開発ライフサイクル全体の多くのシナリオで使用できます。以下に、いくつかのユースケースと、それらに役立つモデルの一覧を示します。
| ユースケース | Codey モデル |
|---|---|
| コード補完 | code-gecko |
| コード生成 | code-bison、codechat-bison |
| コメント内のドキュメント | codechat-bison |
| リリースノートの生成 | codechat-bison |
| 単体テストの生成 | code-bison、codechat-bison |
| コードの説明 | codechat-bison |
| コードの修正 | code-bison、codechat-bison |
| コードの最適化 | code-bison、codechat-bison |
| コード変換 | code-bison、codechat-bison |
Codey API の安全性属性
Codey API プロセスが安全性属性のリストに照らして評価されるコンテンツ。これらの属性には、有害または機密性が高いとみなされる可能性のあるカテゴリやトピックが含まれます。詳細については、責任ある AI をご覧ください。
サポートされているコーディング言語
Gemini 1.0 Pro モデルと Codey API は、さまざまなコーディング言語に対応しています。次の表に、サポートされている言語を示します。
| コーディング言語 | 拡張機能 | Gemini 1.0 Pro | code-bison |
codechat-bison |
code-gecko |
|---|---|---|---|---|---|
| C とそのヘッダー ファイル | .c、.h |
||||
| C++ とそのヘッダー ファイル | .cc、.cpp、.h |
||||
| C# | .cs |
||||
| CSS | .css |
||||
| Clojure | .clj、.cljs .cljc |
||||
| Dart | .dart |
||||
| Elixir | .ex |
||||
| Erlang | .erl |
||||
| Fortran | .f |
||||
| Go | .go |
||||
| GoogleSQL | .sql |
||||
| Groovy | .groovy |
||||
| Haskell | .hs |
||||
| HTML | .html、htm |
||||
| Java | .java |
||||
| JavaScript | .js |
||||
| JavaServer Pages | .jsp |
||||
| Kotlin | .kt、.kts |
||||
| Lean(証明アシスタント) | .lean |
||||
| Lua | .lua |
||||
| Objective-C | .m |
||||
| OCaml | .ml |
||||
| Perl | .pl |
||||
| PHP | .php |
||||
| Python | .py |
||||
| R | .r |
||||
| Ruby | .rb |
||||
| Rust | .rs |
||||
| Scala | .scala |
||||
| シェル スクリプト | .sh |
||||
| Solidity | .sol |
||||
| Swift | .swift |
||||
| TypeScript | .ts |
||||
| XML | .xml |
||||
| Verilog | .v |
||||
| YAML | .yaml、.yml |
サポートされているコード インフラストラクチャ インターフェース
Codey API は、次の Infrastructure as Code インターフェースをサポートしています。
次のステップ
Google Cloud コンソールまたは API で Vertex AI Studio を使用して、Codey API をテストするためのプロトタイプ プロンプトを作成できます。詳細については、Vertex AI Studio でモデルをテストするをご覧ください。API と Vertex AI Studio で実行できる Codey API のプロンプトの例については、次のトピックをご覧ください。
- コードチャット プロンプトを作成する方法を学習する。
- コード補完プロンプトを作成する方法を学習する。
- コード生成プロンプトを作成する方法を学習する。
- モデルからのレスポンスのストリーミングについて学習する。