DeveloperGPT は、自然言語による端末コマンドや端末内チャットを可能にする、LLM を利用したコマンド ライン ツールです。 DeveloperGPT はデフォルトで Google Gemini 1.5 Flash を搭載していますが、Google Gemini 1.0 Pro、OpenAI GPT-3.5 & GPT-4、Anthropic Claude 3 Haiku & Sonnet、Hugging Face でホストされているオープン LLM (Zephyr、Gemma、Mistral)、および量子化もサポートしています。ミストラル-7B-デバイス上でオフラインで実行するよう指示します。
2024 年 6 月の時点で、Google Gemini 1.5 Pro (デフォルトで使用) または Google Gemini 1.0 Pro を 1 分あたり最大 15 リクエストで使用する場合、DeveloperGPT は完全に無料で使用できます。
--model
フラグを使用して、異なる LLM 間を切り替えます: developergpt --model [llm_name] [cmd, chat]
モデル | ソース | 詳細 |
---|---|---|
Gemini Pro 、 Gemini Flash (デフォルト) | Google Gemini 1.0 プロ、Gemini 1.5 フラッシュ | 無料 (1 分あたり最大 15 リクエスト)、Google AI API キーが必要 |
GPT35、GPT4 | OpenAI | 従量課金制、OpenAI API キーが必要 |
俳句、ソネット | 人間性 (クロード 3) | 従量課金制、Anthropic API キーが必要 |
ゼファー | Zephyr7B-ベータ | 無料、オープン LLM、ハグ顔推論 API |
ジェマ、ジェマベース | Gemma-1.1-7B-Instruct、Gemma-Base | 無料、オープン LLM、ハグ顔推論 API |
ミストラル Q6、ミストラル Q4 | 量子化された GGUF ミストラル-7B-命令 | 無料、オープン LLM、オフライン、オンデバイス |
ミストラル | ミストラル-7B-命令 | 無料、オープン LLM、ハグ顔推論 API |
mistral-q6
とmistral-q4
は、llama.cpp を使用してデバイス上でローカルに実行される量子化 GGUF Mistral-7B-Instruct LLM です (それぞれ Q6_K 量子化モデルと Q4_K 量子化モデル)。これらの LLM は、専用 GPU のないマシン上で実行できます。詳細については、llama.cpp を参照してください。DeveloperGPT には 2 つの主な機能があります。
使用法: developergpt cmd [your natural language command request]
# Example
$ developergpt cmd list all git commits that contain the word llm
説明なしでコマンドをより速く取得するには、 developergpt cmd --fast
を使用します ( --fast
では平均約 1.6 秒、通常では平均約 3.2 秒)。 --fast
モードで DeveloperGPT によって提供されるコマンドは精度が低い可能性があります。詳細については、「DeveloperGPT 自然言語から端末コマンドへの精度」を参照してください。
# Fast Mode: Commands are given without explanation for faster response
$ developergpt cmd --fast [your natural language command request]
Gemini Flash (デフォルトで使用される) の代わりに別の LLM を使用するには、 developergpt --model [model_name] cmd
使用します。
# Example: Natural Language to Terminal Commands using the GPT-3.5 instead of Gemini Flash
$ developergpt --model gpt35 cmd [your natural language command request]
使用法: developergpt chat
# Chat with DeveloperGPT using Gemini 1.5 Flash (default)
$ developergpt chat
別の LLM を使用するには、 developergpt --model [model_name] chat
を使用します。
# Example
$ developergpt --model mistral chat
チャットのモデレーションは実装されていません。すべてのチャット メッセージは、使用される LLM の使用条件に従う必要があります。
DeveloperGPT は、使用される LLM の使用条件で禁止されている目的に使用してはなりません。さらに、DeveloperGPT 自体 (LLM は別として) は概念実証ツールであり、重大な作業や商業的な作業に使用することは意図されていません。
pip install -U developergpt
# see available commands
$ developergpt
DeveloperGPT の精度は、使用される LLM およびモード ( --fast
または通常) によって異なります。以下に、85 個の自然言語コマンド リクエストのセットに対するさまざまな LLM の Top@1 精度を示します (これは厳密な評価ではありませんが、大まかな精度を示します)。比較のために、CLI v1.0.1 の Github CoPilot も含まれています。
デフォルトでは、DeveloperGPT は Google Gemini 1.5 Flash を使用します。 Gemini 1.0 Pro または Gemini 1.5 Flash を使用するには、API キーが必要です (1 分間に最大 15 クエリまで無料で使用できます)。
GOOGLE_API_KEY
環境変数として設定します。これを行う必要があるのは 1 回だけです。 # set Google API Key (using zsh for example)
$ echo ' export GOOGLE_API_KEY=[your_key_here] ' >> ~ /.zshenv
# reload the environment (or just quit and open a new terminal)
$ source ~ /.zshenv
Hugging Face でホストされている Gemma や Mistral などのオープン LLM を使用するには、オプションで Hugging Face Inference API トークンをHUGGING_FACE_API_KEY
環境変数として設定できます。詳細については、https://huggingface.co/docs/api-inference/index を参照してください。
量子化された Mistral-7B-Instruct を使用するには、 --offline
フラグを指定して DeveloperGPT を実行するだけです。これにより、最初の実行時にモデルがダウンロードされ、それ以降の実行でローカルに使用されます (最初の使用後はインターネット接続は必要ありません)。特別な設定は必要ありません。
developergpt --offline chat
GPT-3.5 または GPT-4 を使用するには、OpenAI API キーが必要です。
OPENAI_API_KEY
環境変数として設定します。これを行う必要があるのは 1 回だけです。 Anthropic Claude 3 Sonnet または Haiku を使用するには、Anthropic API キーが必要です。
ANTHROPIC_API_KEY
環境変数として設定します。これを行う必要があるのは 1 回だけです。2024 年 6 月の時点で、Google Gemini 1.0 Pro および Gemini 1.5 Flash は 1 分あたり最大 15 クエリまで無料で使用できます。詳細については、https://ai.google.dev/pricing を参照してください。
2024 年 6 月の時点では、Hugging Face Inference API でホストされる LLM の使用は無料ですが、レートに制限があります。詳細については、https://huggingface.co/docs/api-inference/index を参照してください。
Mistral-7B-Instruct は無料で使用でき、デバイス上でローカルに実行されます。
OpenAI API の使用状況は、https://platform.openai.com/account/usage で監視できます。 GPT-3.5 を使用したクエリあたりの平均コストは 0.1 セント未満です。 GPT-3.5 はコスト効率がはるかに高く、ほとんどのコマンドに対して非常に高い精度を実現するため、GPT-4 の使用は推奨されません。
Anthropic API の使用状況は、https://console.anthropic.com/settings/plans で監視できます。 Claude 3 Haiku を使用したクエリあたりの平均コストは 0.1 セント未満です。料金の詳細については、https://www.anthropic.com/api を参照してください。
CONTRIBUTING.md ファイルを読み取ります。