GIT-GPTは、GITコミットメッセージ、問題を自動生成し、複数のAIプロバイダーを使用してさまざまなコード品質チェックを実行するために設計された汎用性の高いCLIツールです。 Openai、Azure Openai、Ollama、Claude、およびGoogle Generative AIをサポートしているため、ニーズに最適なモデルを選択する柔軟性が得られます。

PIP経由でgit-gptをインストールします:
pip install git+https://github.com/ShinChven/git-gpt.gitアップグレード:
pip install --upgrade git+https://github.com/ShinChven/git-gpt.git開発環境を設定するには:
git clone https://github.com/ShinChven/git-gpt.git
cd git-gpt
python -m venv venv
source venv/bin/activate
pip install -e .プロジェクトは次のように編成されています。
git_gpt/main.py :CLIアプリケーションのメインエントリポイント。git_gpt/__init__.py :パッケージを初期化してバージョンを定義します。git_gpt/config_command.py :構成コマンドを処理します。git_gpt/commit_command.py :commit message message生成を実装します。git_gpt/issue_command.py :問題の作成機能を管理します。git_gpt/quality_command.py :コードの変更で品質チェックを実行します。git_gpt/changelog_command.py :コミットに基づいてchangelogsを生成します。git_gpt/ask_command.py :コード違いについてカスタム質問をすることができます。git_gpt/ai_client.py :複数のAIプロバイダーにAPI要求を処理します。各コマンドは、より良い組織と保守性のために独自のファイルに実装されます。
git-gptを使用する前に、API設定で構成する必要があります。ステップバイステップガイド付き構成の場合、次のコマンドを使用します。
git-gpt configこのコマンドは、各構成設定のためにプロセスを求めて、プロセスをより簡単でユーザーフレンドリーにします。
新しいモデルを構成するか、単一のコマンドを使用して既存のモデルを更新するには(すべてのオプションが必須です)。
git-gpt config --alias MODEL_ALIAS --model_name MODEL_NAME --provider PROVIDER --key API_KEY --api_base API_BASE--alias :モデル構成の一意の名前--model_name :モデルの名前(例:openaiの "gpt-4"、claude-3-sonnet-20240229 "for claude、" gemini-1.5-pro "for google ai)--provider :モデルのプロバイダー(例:「Openai」、「Azure-Openai」、「Ollama」、「Claude」、または「Google-Generativeai」)))--key :APIキー(オプション、プロバイダーに応じて)--api_base :API Base URL(オプション、デフォルトはhttps://api.anthropic.comの場合はclaudeのhttps://api.anthropic.com)単一のコマンドメソッドを使用してすべてのオプションを提供しない場合は、不足している情報を入力するように求められます。
デフォルトモデルを設定するには:
git-gpt set-default MODEL_ALIASモデル構成を削除するには:
git-gpt delete-model MODEL_ALIASプロバイダーとマスクされたAPIキーを使用して、構成されたすべてのモデルを表示するには:
git-gpt show-modelsGIT-GPTは複数のAIプロバイダーをサポートしているため、ニーズに最適なAIプロバイダーを選択できます。サポートされているプロバイダーは次のとおりです。
各プロバイダーには、モデル名とAPI構成の特定の要件がある場合があります。新しいモデルを構成するときは、正しいプロバイダー名を使用して、プロバイダー固有の指示に従ってください。
Git-Gptは、オープンソースのローカルホスト言語モデルであるOllamaをサポートしています。これにより、外部APIサービスに依存せずにGit-GPTを使用できます。
ollama pull gemma2など)を使用して、目的のモデルを引いてください。Git-GPTでOllamaを使用するには、次のように構成します。
git-gpt config --api-type ollama --ollama-base http://localhost:11434 --model < MODEL_NAME > <MODEL_NAME> Ollama(llama2、codellama、mistralなど)に引っ張ったモデルに置き換えます。
Git-GPTのOllamaのデフォルトモデルは、「GPT-4O-MINI」に設定されています。これは、構成中またはコマンドを実行するときに異なるモデルを指定することで変更できます。
構成したら、Openaiと同じようにOllamaでgit-gptを使用できます。すべてのコマンド(コミット、発行、品質、changelog、ask)は、オラマ構成を自動的に使用します。
注:Ollamaを使用する場合、APIキーを提供する必要はありません。
すべての変更をステージして、コミットメッセージを生成します。
git-gpt commit [--lang < LANGUAGE > ] [--model < MODEL > ] [--run-dry]オプション:
--lang :生成されたメッセージのターゲット言語(デフォルトは 'en')。--model :メッセージの生成に使用するモデル(デフォルトは構成で設定されています)。--run-dry :コミットせずに生成されたメッセージを印刷します。最新のコミットの違いに基づいて問題を作成するには、実行してください。
git-gpt issue [--lang < LANGUAGE > ] [--model < MODEL > ] [--max-tokens < MAX_TOKENS > ] [--commit-range < COMMIT_RANGE > ]オプション:
--lang :生成されたメッセージのターゲット言語(デフォルトは 'en')。--model :メッセージの生成に使用するモデル(デフォルトは構成で設定されています)。--max-tokens :問題プロンプトに使用するトークンの最大数(構成値をオーバーライド)。--commit-range :問題を生成するために考慮すべきコミットの範囲。最新のコミットの違いについて高品質のチェックを実行するには、実行してください。
git-gpt quality [--lang < LANGUAGE > ] [--model < MODEL > ] [--max-tokens < MAX_TOKENS > ] [--commit-range < COMMIT_RANGE > ]オプション:
--lang :生成されたメッセージのターゲット言語(デフォルトは 'en')。--model :メッセージの生成に使用するモデル(デフォルトは構成で設定されています)。--max-tokens :品質チェックプロンプトに使用するトークンの最大数(構成値をオーバーライド)。--commit-range :品質チェックのために考慮すべきコミットの範囲。最新のコミットの違いに基づいて変更ログを生成するには、実行します。
git-gpt changelog [--lang < LANGUAGE > ] [--model < MODEL > ] [--max-tokens < MAX_TOKENS > ] [--commit-range < COMMIT_RANGE > ]オプション:
--lang :生成されたChangelogのターゲット言語(デフォルトは 'en')。--model :Changelogの生成に使用するモデル(デフォルトはconfigで設定されています)。--max-tokens :Changelogプロンプトに使用するトークンの最大数(構成値をオーバーライド)。--commit-range :Changelogを生成するために考慮すべきコミットの範囲。コード違いについてカスタム質問するには、実行してください。
git-gpt ask --question < YOUR_QUESTION > [--model < MODEL > ] [--commit-range < COMMIT_RANGE > ]オプション:
--question :コードの違いについて尋ねる質問。--model :応答を生成するために使用するモデル(デフォルトは構成で設定されています)。--commit-range :応答を形成する際に考慮すべきコミットの範囲。 aiohttpに関する問題が発生した場合は、Python 3.12で報告されているため、Pythonを3.11にダウングレードしてみてください。
ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects
リポジトリをフォークし、機能ブランチを作成し、プルリクエストを開くようにしてください。
MITライセンス