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

image.png

根據谷歌的介紹,該新端點可以在使用直接的 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 靈活性。