跳至主要內容

Vercel AI Gateway

總覽

屬性詳細資訊
說明Vercel AI Gateway 提供透過單一端點存取多個 AI 提供者的統一介面,內建快取、速率限制與分析。
LiteLLM 上的提供者路由vercel_ai_gateway/
提供者文件連結Vercel AI Gateway 文件 ↗
基礎 URLhttps://ai-gateway.vercel.sh/v1
支援的操作/chat/completions, /embeddings, /models


https://vercel.com/docs/ai-gateway

我們支援透過 Vercel AI Gateway 可用的所有模型,只要在送出 completion 請求時將 vercel_ai_gateway/ 設為前綴即可

必要變數

Environment Variables
os.environ["VERCEL_AI_GATEWAY_API_KEY"] = ""  # your Vercel AI Gateway API key
# OR
os.environ["VERCEL_OIDC_TOKEN"] = "" # your Vercel OIDC token for authentication

選用變數

Environment Variables
os.environ["VERCEL_SITE_URL"] = ""  # your site url
# OR
os.environ["VERCEL_APP_NAME"] = "" # your app name

註:請參閱 Vercel AI Gateway 文件 以取得金鑰的操作說明。

使用方式 - LiteLLM Python SDK

非串流

Vercel AI Gateway Non-streaming Completion
import os
import litellm
from litellm import completion

os.environ["VERCEL_AI_GATEWAY_API_KEY"] = "your-api-key"

messages = [{"content": "Hello, how are you?", "role": "user"}]

# Vercel AI Gateway call
response = completion(
model="vercel_ai_gateway/openai/gpt-4o",
messages=messages
)

print(response)

串流

Vercel AI Gateway Streaming Completion
import os
import litellm
from litellm import completion

os.environ["VERCEL_AI_GATEWAY_API_KEY"] = "your-api-key"

messages = [{"content": "Hello, how are you?", "role": "user"}]

# Vercel AI Gateway call with streaming
response = completion(
model="vercel_ai_gateway/openai/gpt-4o",
messages=messages,
stream=True
)

for chunk in response:
print(chunk)

嵌入向量

Vercel AI Gateway Embeddings
import os
from litellm import embedding

os.environ["VERCEL_AI_GATEWAY_API_KEY"] = "your-api-key"

# Vercel AI Gateway embedding call
response = embedding(
model="vercel_ai_gateway/openai/text-embedding-3-small",
input="Hello world"
)

print(response.data[0]["embedding"][:5]) # Print first 5 dimensions

您也可以指定 dimensions 參數:

Vercel AI Gateway Embeddings with Dimensions
response = embedding(
model="vercel_ai_gateway/openai/text-embedding-3-small",
input=["Hello world", "Goodbye world"],
dimensions=768
)

使用方式 - LiteLLM Proxy

請將下列內容加入您的 LiteLLM Proxy 設定檔:

config.yaml
model_list:
- model_name: gpt-4o-gateway
litellm_params:
model: vercel_ai_gateway/openai/gpt-4o
api_key: os.environ/VERCEL_AI_GATEWAY_API_KEY

- model_name: claude-4-sonnet-gateway
litellm_params:
model: vercel_ai_gateway/anthropic/claude-4-sonnet
api_key: os.environ/VERCEL_AI_GATEWAY_API_KEY

- model_name: text-embedding-3-small-gateway
litellm_params:
model: vercel_ai_gateway/openai/text-embedding-3-small
api_key: os.environ/VERCEL_AI_GATEWAY_API_KEY

啟動您的 LiteLLM Proxy 伺服器:

Start LiteLLM Proxy
litellm --config config.yaml

# RUNNING on http://0.0.0.0:4000
Vercel AI Gateway via Proxy - Non-streaming
from openai import OpenAI

# Initialize client with your proxy URL
client = OpenAI(
base_url="http://localhost:4000", # Your proxy URL
api_key="your-proxy-api-key" # Your proxy API key
)

# Non-streaming response
response = client.chat.completions.create(
model="gpt-4o-gateway",
messages=[{"role": "user", "content": "Hello, how are you?"}]
)

print(response.choices[0].message.content)
Vercel AI Gateway via Proxy - Streaming
from openai import OpenAI

# Initialize client with your proxy URL
client = OpenAI(
base_url="http://localhost:4000", # Your proxy URL
api_key="your-proxy-api-key" # Your proxy API key
)

# Streaming response
response = client.chat.completions.create(
model="gpt-4o-gateway",
messages=[{"role": "user", "content": "Hello, how are you?"}],
stream=True
)

for chunk in response:
if chunk.choices[0].delta.content is not None:
print(chunk.choices[0].delta.content, end="")

如需關於使用 LiteLLM Proxy 的更詳細資訊,請參閱 LiteLLM Proxy 文件

其他資源

🚅
LiteLLM Enterprise
為正式環境打造的 SSO/SAML、稽核記錄、支出追蹤、多團隊管理與防護欄。
深入瞭解 →