谷歌近日宣布推出其 Gemini API 的新端點,旨在幫助已經采用 OpenAI 解決方案的開發者更輕松地切換到 Gemini。這一新端點目前仍處于測試階段,僅提供部分 OpenAI 功能的支持。

根據谷歌的介紹,該新端點可以在使用直接的 REST 調用或 OpenAI 官方 SDK 的情況下替代 OpenAI 的端點。例如,如果你有一個使用 OpenAI SDK(比如 Python)編寫的程序,可以通過如下代碼更改初始化,使用谷歌的模型:

from openai import OpenAI

client = OpenAI (

api_key="gemini_api_key",

base_url="https://generativelanguage.googleapis.com/v1beta/openai/"

在代碼中,開發者需要提供 Gemini API 密鑰,密鑰可以直接寫在代碼中或通過 OPENAI_API_KEY 環境變量傳遞。要生成文本,可以使用聊天補全 API,如下所示,指定希望使用的 Gemini 模型名稱:

response = client.chat.completions.create (

model="gemini-1.5-flash",

n=1,

messages=[

{"role": "system", "content": "你是一個有幫助的助手。"},

{

"role": "user",

"content": "給我解釋一下 AI 是如何工作的"

}

]

print (response.choices [0].message)

此外,新的 Gemini 端點還支持 OpenAI 的嵌入 API,用于測量文本字符串之間的相關性。簡而言之,嵌入 API 將文本映射為浮點數的向量,開發者可以利用這些向量來搜索特定值、對文本進行聚類、檢測異常和提供推薦等。以下代碼片段展示了如何在 Gemini 中使用這一功能:

response = client.embeddings.create (

input="您的文本字符串在這里",

model="text-embedding-004"

print (response.data [0].embedding)

目前,聊天補全 API 和嵌入 API 是唯一可以通過新 OpenAI 端點在 Gemini 模型上使用的 OpenAI 功能。此外,圖像上傳和結構化輸出的支持也僅限于有限的功能。谷歌表示,他們計劃添加更多 OpenAI 的功能,以便開發者能夠更方便地將 Gemini 作為 OpenAI 的替代方案,但具體的時間框架尚不明確。

在 Reddit 的討論中,評論者對谷歌的這一舉措表示贊賞,認為這為 OpenAI API 用戶提供了一種逃避鎖定的解決方案,盡管距離實現一個標準 API 以便于在不同模型提供者之間輕松切換仍有很長的路要走。

作為更通用的方法,vLLM 項目旨在支持各種生成和嵌入模型,并提供一個與 OpenAI 兼容的服務器。借助 vLLM,開發者可以使用 Mistral、Llama、Llava 以及當前可用的許多其他主要模型。

官方介紹:https://developers.googleblog.com/en/gemini-is-now-accessible-from-the-openai-library/

劃重點:

?? 谷歌推出 Gemini API 新端點,幫助開發者更輕松地切換到 Gemini。

?? 新端點支持 OpenAI 的聊天補全和嵌入 API,但功能尚不完全。

??? vLLM 項目提供多種模型的支持,提升 API 靈活性。