概要
Gemini を LiteLLM Proxy でコールし OpenWebUI は LiteLLM Proxy に対してコールします
Gemini のエンドポイントはカスタムエンドポイントとします
過去に Azure OpenAI でやったバージョンの Gemini 版になります
環境
- Ubuntu 24.04
- OpenWebUI 0.6.7
- LiteLLM Proxy 1.68.0
ポイント
OpenWebUI が起動できたらモデルの設定を開き高度な設定から「Stream Chat Response」をオフにしましょう
compose.yaml
services:
openwebui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
volumes:
- open-webui:/app/backend/data
extra_hosts:
- "host.docker.internal:host-gateway"
environment:
- WEBUI_AUTH=False
# - OPENAI_API_KEY=${MASTER_KEY}
- OPENAI_API_BASE_URL=http://host.docker.internal:4000/v1
restart: always
litellm:
image: ghcr.io/berriai/litellm:main-latest
container_name: litellm
ports:
- "4000:4000"
volumes:
- ./litellm_config.yaml:/app/config.yaml
environment:
- GEMINI_API_BASE=${GEMINI_API_BASE}
- GEMINI_API_KEY=${GEMINI_API_KEY}
command: --config /app/config.yaml --port 4000 --detailed_debug
restart: always
volumes:
open-webui:
litellm_config.yaml
model_list:
- model_name: gemini/gemini-2.0-flash
litellm_params:
model: gemini/gemini-2.0-flash
api_base: os.environ/GEMINI_API_BASE # runs os.getenv("GEMINI_API_BASE")
api_key: os.environ/GEMINI_API_KEY # runs os.getenv("GEMINI_API_KEY")
api_version: ""
.env
GEMINI_API_KEY=xxx
GEMINI_API_BASE=https://your-api-endpoint/ai/chat-ai/flash
動作確認
- docker compose up -d
で 3000 ポートにアクセスしコンソールから質問できることを確認しましょう
最後に
どうやら OpenWebUI からだとストリーム API のレスポンス形式は想定しておらず generateContent のレスポンスを使っているっぽいのでオフにしてあげる必要がありました
Gemini のカスタムエンドポイントを使う場合には設定してみるといいかなと思います
OpenWebUI で Gemini を使う場合には Pipeline を使うのが王道ですが LiteLLM Proxy でも動作するようです
0 件のコメント:
コメントを投稿