海外からのアクセス:www.kdjingpai.com
Ctrl + D このサイトをブックマークする

geminicli2apiは、GitHubでホストされているオープンソースのFastAPIベースのプロキシサーバです。ネイティブのGemini APIエンドポイントをサポートしながら、Google Gemini CLIの機能をOpenAI互換のAPIインターフェースに変換します。開発者は、使い慣れたOpenAI APIフォーマットまたは直接のGemini APIを介してGoogle Geminiモデルを呼び出すことができる。このプロジェクトは、テキスト生成、マルチモーダル入力(テキストや画像など)、リアルタイムストリーミング応答などをサポートしている。geminicli2apiは、軽量で設定が簡単なように設計されており、Geminiの機能を既存のワークフローに統合する必要がある開発者に特に適している。

機能一覧

  • OpenAIと互換性がある /v1/chat/completions 歌で応える /v1/models エンドポイントに、既存のOpenAIツールを適応させる。
  • 以下のようなネイティブGemini APIエンドポイントのサポート /v1beta/models/{model}:generateContentジェミニ・モデルは、ジェミニ・モデルから直接呼び出すことができる。
  • リアルタイムのストリーミング応答をサポートし、インタラクティブな対話や長いテキスト生成に適しています。
  • マルチモーダル入力をサポートし、テキストと画像のような混合コンテンツを扱う。
  • グーグル検索の強化 -search モデルのバリエーションは、より正確な回答を提供する。
  • を使ったジェミニの推論プロセスの制御をサポートする。 -nothinking 歌で応える -maxthinking モデルのバリエーションは、推論の深さを調整する。
  • ベアラートークン、ベーシック認証、APIキーなど、さまざまな認証方式に対応。
  • Dockerコンテナによるデプロイをサポートし、Hugging Face Spacesと互換性があります。

ヘルプの使用

設置プロセス

geminicli2apiはインストールと設定が簡単で、ローカルでの実行とコンテナでのデプロイの両方をサポートする。以下はその詳細な手順である:

  1. クローン倉庫
    以下のコマンドを使用して、geminicli2apiリポジトリをローカルにクローンする:

    git clone https://github.com/gzzhongqi/geminicli2api
    cd geminicli2api
    
  2. 依存関係のインストール
    プロジェクトはPythonとFastAPIをベースにしており、依存関係は requirements.txt でインストールします。以下のコマンドを実行してインストールする:

    pip install -r requirements.txt
    
  3. 環境変数の設定
    geminicli2apiは認証関連の環境変数を設定する必要があります。環境変数を作成する .env ファイルに以下を追加する:

    GEMINI_AUTH_PASSWORD=你的认证密码
    GEMINI_CREDENTIALS={"client_id":"你的客户端ID","client_secret":"你的客户端密钥","token":"你的访问令牌","refresh_token":"你的刷新令牌","scopes":["https://www.googleapis.com/auth/cloud-platform"],"token_uri":"https://oauth2.googleapis.com/token"}
    PORT=8888
    
    • GEMINI_AUTH_PASSWORDAPIアクセス用の認証パスワード。
    • GEMINI_CREDENTIALSGoogle OAuth 認証情報の JSON 文字列。 client_idそしてclient_secret などのフィールドがある。
    • オプションの変数:
      • GOOGLE_APPLICATION_CREDENTIALSGoogle OAuth認証情報ファイルへのパス。
      • GOOGLE_CLOUD_PROJECT もしかしたら GEMINI_PROJECT_IDGoogle Cloud プロジェクト ID.
    • クレデンシャルファイルを使用する場合は、次のように作成します。 credentials ディレクトリにある。 .json ファイルを作成し GOOGLE_APPLICATION_CREDENTIALS ファイルパスを指す。
  4. ローカルオペレーション
    設定が完了したら、以下のコマンドを実行してサービスを開始する:

    python -m uvicorn app.main:app --host 0.0.0.0 --port 8888
    

    サービス・デフォルト・リスニング http://localhost:8888.

  5. Dockerのデプロイメント
    geminicli2apiはDockerコンテナによるデプロイをサポートし、環境設定を簡素化する。

    • 鏡像を作る:
      docker build -t geminicli2api .
      
    • コンテナを実行する(デフォルトポート8888):
      docker run -p 8888:8888 \
      -e GEMINI_AUTH_PASSWORD=your_password \
      -e GEMINI_CREDENTIALS='{"client_id":"...","token":"..."}' \
      -e PORT=8888 \
      geminicli2api
      
    • Docker Composeを使う:
      docker-compose up -d
      

      Hugging Face Spacesを導入する場合は、ポート7860を使用する:

      docker-compose --profile hf up -d geminicli2api-hf
      
  6. ハグフェイス・スペース展開
    • Hugging Faceにログインし、新しいDocker Spaceを作成する。
    • リポジトリの内容をSpaceにアップロードする。
    • スペースの設定に環境変数を追加する:GEMINI_AUTH_PASSWORD 歌で応える GEMINI_CREDENTIALS(またはその他の資格情報源)。
    • Spaceは自動的にサービスをビルドし、デプロイし、次のサービスをリッスンする。 http://<space-url>:7860.

APIの使用

geminicli2apiは、OpenAI互換およびネイティブのGemini APIエンドポイントを提供し、開発者はニーズに応じて選択することができる。

OpenAI互換API

OpenAIクライアントライブラリを使用して、OpenAI APIと一致するエンドポイントでgeminicli2apiを呼び出す。
典型例(パイソン):

import openai
client = openai.OpenAI(
base_url="http://localhost:8888/v1",
api_key="your_password"  # GEMINI_AUTH_PASSWORD
)
response = client.chat.completions.create(
model="gemini-2.5-pro-maxthinking",
messages=[{"role": "user", "content": "用简单语言解释相对论"}],
stream=True
)
for chunk in response:
if chunk.choices[0].delta.reasoning_content:
print(f"推理过程: {chunk.choices[0].delta.reasoning_content}")
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")

ネイティブGemini API

Gemini APIエンドポイントへの直接呼び出しは、より柔軟な設定をサポートします。
典型例(パイソン):

import requests
headers = {
"Authorization": "Bearer your_password",
"Content-Type": "application/json"
}
data = {
"contents": [
{"role": "user", "parts": [{"text": "用简单语言解释相对论"}]}
],
"thinkingConfig": {"thinkingBudget": 32768, "includeThoughts": True}
}
response = requests.post(
"http://localhost:8888/v1beta/models/gemini-2.5-pro:generateContent",
headers=headers,
json=data
)
print(response.json())

マルチモーダル入力

テキストや画像のアップロードに対応。 /v1/chat/completions もしかしたら /v1beta/models/{model}:generateContent.
典型例(画像とテキストのアップロード):

curl -X POST http://localhost:8888/v1/chat/completions \
-H "Authorization: Bearer your_password" \
-H "Content-Type: application/json" \
-d '{"model": "gemini-2.5-pro", "messages": [{"role": "user", "content": "分析这张图片并描述内容"}], "files": ["./image.jpg"]}'

認証方法

以下の認証方法がサポートされている:

  • ベアラートークン::Authorization: Bearer your_password
  • ベーシック認証::Authorization: Basic base64(username:your_password)
  • お問い合わせパラメーター::?key=your_password
  • グーグルヘッド::x-goog-api-key: your_password

対応モデル

  • ベースモデル:gemini-2.5-proそしてgemini-2.5-flashそしてgemini-1.5-proそしてgemini-1.5-flashそしてgemini-1.0-pro
  • バリエーション:
    • -searchGoogle検索の拡張機能を有効にする。 gemini-2.5-pro-search).
    • -nothinking推論のステップ数を減らす。 gemini-2.5-flash-nothinking).
    • -maxthinking推論のための予算を増やす(例)。 gemini-2.5-pro-maxthinking).

ほら

  • セキュア GEMINI_AUTH_PASSWORD がセットされていなければ、APIリクエストは失敗する。
  • Google OAuth認証情報は有効である必要があり、Google Cloudコンソールから取得することを推奨します。
  • ストリーミング・レスポンスには、チャンク化されたデータ処理に対するクライアントのサポートが必要である。
  • Google Cloudプロジェクトのクォータを確認し、APIコールの上限を超えないようにします。

アプリケーションシナリオ

  1. 既存のOpenAIツールとの統合
    開発者は、geminicli2apiを使用して、OpenAI APIベースのツール(LangChainなど)にGeminiモデルをプラグインし、コードを修正することなく、Geminiのフリークォータに素早く切り替えることができる。
  2. マルチモーダルなコンテンツ生成
    コンテンツ制作者は、画像やテキストをアップロードして、広告デザインや教材制作に適した説明や分析、クリエイティブなコンテンツを生成します。
  3. 自動化されたワークフロー
    組織は、geminicli2apiを通じて、文書の処理、レポートの生成、または顧客からの問い合わせへの回答を自動化し、業務効率を向上させます。

品質保証

  1. geminicli2apiはどのような認証方法をサポートしていますか?
    ベアラートークン、Basic認証、クエリパラメータ、Googleヘッダ認証をサポートしています。 GEMINI_AUTH_PASSWORD.
  2. Google OAuth認証情報はどのように入手できますか?
    Google Cloudコンソールでサービスアカウントを作成し、JSONキーファイルをダウンロードし、以下のように入力します。 GEMINI_CREDENTIALS または GOOGLE_APPLICATION_CREDENTIALS パス
  3. 対応するモデルバリエーションは?
    アジュバント -search(グーグル検索強化)、-nothinking(推論を減らす)、-maxthinking(推論の増加)のバリアント gemini-2.5-pro 歌で応える gemini-2.5-flash.
  4. ハギング・フェイス・スペースで展開するには?
    リポジトリをフォークし、Docker Spaceを作成し、Docker Spaceを設定する。 GEMINI_AUTH_PASSWORD 歌で応える GEMINI_CREDENTIALSスペースは自動的に展開される。
0ブックマークに登録
0表彰される

おすすめ

AIツールが見つからない?こちらをお試しください!

キーワードを入力する アクセシビリティこのサイトのAIツールセクションは、このサイトにあるすべてのAIツールを素早く簡単に見つける方法です。

受信箱

お問い合わせ

トップに戻る

ja日本語