Gemini-CLI-2-API:Google Gemini CLIをOpenAI API互換のローカルAPIに変換するプロキシ

AI/ML

概要

Gemini-CLI-2-APIは、GoogleのGemini CLIをローカルでAPIとして利用できるようにラップしたNode.js製のプロキシサーバーです。特徴はOpenAI APIとの互換性を持つ点で、既存のOpenAI対応クライアントやツールから透過的に利用可能です。これにより、Google Geminiの強力な言語モデルをOpenAI APIのインターフェースで呼び出せ、AI開発の利便性を大きく向上させます。毎日1000回までの無料リクエスト制限があり、ローカル環境での高速かつ安定した利用を実現。オープンソースとしてGPLv3ライセンスの下で公開されています。

GitHub

リポジトリの統計情報

  • スター数: 9
  • フォーク数: 0
  • ウォッチャー数: 9
  • コミット数: 8
  • ファイル数: 9
  • メインの言語: JavaScript

主な特徴

  • Google Gemini CLIをローカルAPIとしてラップし、Node.jsで動作するHTTPサーバーを提供
  • OpenAI API互換のエンドポイントを実装し、既存のOpenAIクライアントからの利用を可能に
  • 毎日1000回まで無料リクエスト可能な制限を設け、ローカルで安定したAI呼び出しを実現
  • シンプルな構成で導入・運用が容易、GPLv3のオープンソースライセンスに準拠

技術的なポイント

Gemini-CLI-2-APIは、Node.js環境で動作する2つの独立したHTTPサーバーを含む構成になっています。そのうち一つはGoogle Cloud Code Assist APIのローカルプロキシとして機能し、もう一つはOpenAIと互換性のあるAPIエンドポイントを提供します。この設計により、Google Gemini CLIが内部で行う処理を抽象化し、OpenAI APIの標準的な呼び出し形式に変換して外部クライアントに提供することが可能です。

サーバー実装はJavaScriptで記述されており、Node.jsの18.0.0以上が必須です。Gemini CLIの実行をラップしてHTTPリクエストを処理し、レスポンスを返す形で動作します。具体的には、OpenAIのチャット補助APIやテキスト生成APIに似たリクエスト形式を受け入れ、内部でGemini CLIコマンドを呼び出して応答を生成します。これにより、開発者はOpenAI APIの呼び出し感覚のままGoogle Geminiの高度な言語モデルを利用できます。

また、無料リクエスト数を1日あたり1000回に制限することで、過剰な負荷を防ぎつつも十分な利用ができる設計となっています。これによりローカル環境での安定した運用が期待でき、商用環境のプロトタイピングや個人開発に適しています。APIのレスポンスはJSON形式で返却され、OpenAI互換のレスポンス構造を踏襲するため、既存のSDKやツールとの互換性が高いのもポイントです。

ライセンスはGPLv3で提供されているため、商用利用や改変の際はライセンス条件を確認する必要があります。READMEには中国語と英語の両方で詳細な説明があり、グローバルな開発者コミュニティへの対応も意識されています。全体的に、Google GeminiのCLIツールをより広く使いやすくするための橋渡し役として優れた設計がなされていることが分かります。

プロジェクトの構成

主要なファイルとディレクトリ:

  • .gitignore: Git管理対象外のファイルを指定
  • LICENSE: GPLv3ライセンスの条文
  • README.md: プロジェクト概要と使用方法(中国語)
  • README-EN.md: 英語版README
  • gemini-api-server.js: Gemini CLIをAPIにラップするメインサーバースクリプト
  • ほかに、設定ファイルや補助的なJavaScriptファイルが計4つ含まれています

まとめ

Google Gemini CLIをOpenAI互換APIとして手軽に利用できる革新的なローカルプロキシ。

リポジトリ情報: