Gemini modellerine, REST API ile birlikte OpenAI kitaplıkları (Python ve TypeScript / JavaScript) kullanılarak, üç kod satırını güncelleyerek ve Gemini API anahtarınızı kullanarak erişilebilir. Bu özellik hakkında daha fazla bilgi için uyumluluk rehberine göz atın.
Yöntem: chatCompletions
Bir sohbet geçmişi girişi verildiğinde modelden bir dizi yanıt oluşturur.
Uç nokta
yayınlahttps: / /generativelanguage.googleapis.com /v1beta:chatCompletions
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
model
string
Zorunlu. Tamamlamayı oluşturmak için kullanılacak Model
öğesinin adı. Model adında eğik çizgi yoksa model adının önüne "models/" eklenir.
messages[]
object (Struct
format)
Zorunlu. Tamamlama mesajını oluşturmak için kullanılacak sohbet geçmişi. Tek ve çok turlu sorguları destekler. Not: Bu, polimorfik bir alandır ve InternalChatMessage olarak serileştirilir.
stream
boolean
İsteğe bağlı. Yanıtın akış halinde mi yoksa tek bir yanıt olarak mı döndürüleceğini belirtir.
Doğru ise yanıttaki "object" alanı "chat.completion.chunk" olur. Aksi takdirde "chat.completion" olur.
streamOptions
object (StreamOptions
)
İsteğe bağlı. Akış istekleriyle ilgili seçenekler.
tools[]
object (ChatTool
)
İsteğe bağlı. Modelin çağrı oluşturabileceği araç grubu. Her araç kendi imzasını belirtir.
toolChoice
value (Value
format)
İsteğe bağlı. Modelin bir araç kullanıp kullanmayacağını ve hangi aracı kullanacağını kontrol eder. Şunlardan biri olabilir: - Araçları devre dışı bırakmak için "none" dizesi. - Modelin karar vermesine izin vermek için "auto" dizesi. - Modeli bir araç kullanmaya zorlamak için "required" dizesi. - Kullanılacak aracı belirten bir işlev adı tanımlayıcısı nesnesi. Son seçenek aşağıdaki şemayı izler: { "type": "function", "function": {"name" : "the_function_name"} }
n
integer
İsteğe bağlı. Oluşturulacak olası tamamlama sayısı. Pozitif bir tam sayı olmalıdır. Ayarlanmamışsa varsayılan değeri 1'dir.
stop
value (Value
format)
İsteğe bağlı. Çıktı oluşturmayı durduracak karakter dizisi grubu. Not: Bu, polimorfik bir alandır. Bir dize veya tekrarlanan dizeler içermesi gerekir.
maxCompletionTokens
integer
İsteğe bağlı. Bir yanıt adayına dahil edilecek maksimum jeton sayısı. Pozitif bir tam sayı olmalıdır.
maxTokens
integer
İsteğe bağlı. Bir yanıt adayına dahil edilecek maksimum jeton sayısı. Pozitif bir tam sayı olmalıdır. Bu alanın desteği SDK tarafından sonlandırılmıştır.
temperature
number
İsteğe bağlı. Çıktının rastgeleliğini kontrol eder.
topP
number
İsteğe bağlı. Örnekleme sırasında dikkate alınacak maksimum kümülatif jeton olasılığı.
responseFormat
object (ResponseFormat
)
İsteğe bağlı. Yanıtın biçimini tanımlar. Ayarlanmazsa yanıt metin olarak biçimlendirilir.
Yanıt gövdesi
Başarılı olursa yanıt, biçimi yöntem tarafından tanımlanan genel bir HTTP yanıtıdır.
Yöntem: embeddings
Giriş verilen modelden yerleştirilmiş öğeler oluşturur.
Uç nokta
yayınlahttps: / /generativelanguage.googleapis.com /v1beta /embeddings
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
input
value (Value
format)
Zorunlu. Yerleştirilmiş öğelerin oluşturulacağı giriş. Dize veya dize listesi olabilir. SDK, sayı listesi ve sayı listesi listesi destekler ancak bu henüz uygulanmamıştır.
model
string
Zorunlu. Yerleştirilmiş öğelerin oluşturulacağı model.
encodingFormat
string
İsteğe bağlı. Kodlamanın biçimi. "float" veya "base64" olmalıdır.
dimensions
integer
İsteğe bağlı. Oluşturulan yerleştirmelerin boyutu.
Yanıt gövdesi
Başarılıysa yanıt metni, GenerateEmbeddingsResponse
öğesinin bir örneğini içerir.
Yöntem: listModels
Şu anda mevcut modelleri listeler.
Uç nokta
gethttps: / /generativelanguage.googleapis.com /v1beta /listModels
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni boş olmalıdır.
Yanıt metni
Başarılıysa yanıt metni, SdkListModelsResponse
öğesinin bir örneğini içerir.
Yöntem: chat.completions
Bir sohbet geçmişi girişi verildiğinde modelden bir dizi yanıt oluşturur.
Uç nokta
yayınlahttps: / /generativelanguage.googleapis.com /v1beta /chat /completions
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
model
string
Zorunlu. Tamamlamayı oluşturmak için kullanılacak Model
öğesinin adı. Model adında eğik çizgi yoksa model adının önüne "models/" eklenir.
messages[]
object (Struct
format)
Zorunlu. Tamamlama mesajını oluşturmak için kullanılacak sohbet geçmişi. Tek ve çok turlu sorguları destekler. Not: Bu, polimorfik bir alandır ve InternalChatMessage olarak serileştirilir.
stream
boolean
İsteğe bağlı. Yanıtın akış halinde mi yoksa tek bir yanıt olarak mı döndürüleceğini belirtir.
Doğru ise yanıttaki "object" alanı "chat.completion.chunk" olur. Aksi takdirde "chat.completion" olur.
streamOptions
object (StreamOptions
)
İsteğe bağlı. Akış istekleriyle ilgili seçenekler.
tools[]
object (ChatTool
)
İsteğe bağlı. Modelin çağrı oluşturabileceği araç grubu. Her araç kendi imzasını belirtir.
toolChoice
value (Value
format)
İsteğe bağlı. Modelin bir araç kullanıp kullanmayacağını ve hangi aracı kullanacağını kontrol eder. Şunlardan biri olabilir: - Araçları devre dışı bırakmak için "none" dizesi. - Modelin karar vermesine izin vermek için "auto" dizesi. - Modeli bir araç kullanmaya zorlamak için "required" dizesi. - Kullanılacak aracı belirten bir işlev adı tanımlayıcısı nesnesi. Son seçenek aşağıdaki şemayı izler: { "type": "function", "function": {"name" : "the_function_name"} }
n
integer
İsteğe bağlı. Oluşturulacak olası tamamlama sayısı. Pozitif bir tam sayı olmalıdır. Ayarlanmamışsa varsayılan değeri 1'dir.
stop
value (Value
format)
İsteğe bağlı. Çıktı oluşturmayı durduracak karakter dizisi grubu. Not: Bu, polimorfik bir alandır. Bir dize veya tekrarlanan dizeler içermesi gerekir.
maxCompletionTokens
integer
İsteğe bağlı. Bir yanıt adayına dahil edilecek maksimum jeton sayısı. Pozitif bir tam sayı olmalıdır.
maxTokens
integer
İsteğe bağlı. Bir yanıt adayına dahil edilecek maksimum jeton sayısı. Pozitif bir tam sayı olmalıdır. Bu alanın desteği SDK tarafından sonlandırılmıştır.
temperature
number
İsteğe bağlı. Çıktının rastgeleliğini kontrol eder.
topP
number
İsteğe bağlı. Örnekleme sırasında dikkate alınacak maksimum kümülatif jeton olasılığı.
responseFormat
object (ResponseFormat
)
İsteğe bağlı. Yanıtın biçimini tanımlar. Ayarlanmazsa yanıt metin olarak biçimlendirilir.
Yanıt gövdesi
Başarılı olursa yanıt, biçimi yöntem tarafından tanımlanan genel bir HTTP yanıtıdır.
Yöntem: embeddings.generate
Giriş verilen modelden yerleştirilmiş öğeler oluşturur.
Uç nokta
yayınlahttps: / /generativelanguage.googleapis.com /v1beta /embeddings:generate
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
input
value (Value
format)
Zorunlu. Yerleştirilmiş öğelerin oluşturulacağı giriş. Dize veya dize listesi olabilir. SDK, sayı listesi ve sayı listesi listesi destekler ancak bu henüz uygulanmamıştır.
model
string
Zorunlu. Yerleştirilmiş öğelerin oluşturulacağı model.
encodingFormat
string
İsteğe bağlı. Kodlamanın biçimi. "float" veya "base64" olmalıdır.
dimensions
integer
İsteğe bağlı. Oluşturulan yerleştirmelerin boyutu.
Yanıt gövdesi
Başarılıysa yanıt metni, GenerateEmbeddingsResponse
öğesinin bir örneğini içerir.
Yöntem: openai.chat.completions
Bir sohbet geçmişi girişi verildiğinde modelden bir dizi yanıt oluşturur.
Uç nokta
yayınlahttps: / /generativelanguage.googleapis.com /v1beta /openai /chat /completions
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
model
string
Zorunlu. Tamamlamayı oluşturmak için kullanılacak Model
öğesinin adı. Model adında eğik çizgi yoksa model adının önüne "models/" eklenir.
messages[]
object (Struct
format)
Zorunlu. Tamamlama mesajını oluşturmak için kullanılacak sohbet geçmişi. Tek ve çok turlu sorguları destekler. Not: Bu, polimorfik bir alandır ve InternalChatMessage olarak serileştirilir.
stream
boolean
İsteğe bağlı. Yanıtın akış halinde mi yoksa tek bir yanıt olarak mı döndürüleceğini belirtir.
Doğru ise yanıttaki "object" alanı "chat.completion.chunk" olur. Aksi takdirde "chat.completion" olur.
streamOptions
object (StreamOptions
)
İsteğe bağlı. Akış istekleriyle ilgili seçenekler.
tools[]
object (ChatTool
)
İsteğe bağlı. Modelin çağrı oluşturabileceği araç grubu. Her araç kendi imzasını belirtir.
toolChoice
value (Value
format)
İsteğe bağlı. Modelin bir araç kullanıp kullanmayacağını ve hangi aracı kullanacağını kontrol eder. Şunlardan biri olabilir: - Araçları devre dışı bırakmak için "none" dizesi. - Modelin karar vermesine izin vermek için "auto" dizesi. - Modeli bir araç kullanmaya zorlamak için "required" dizesi. - Kullanılacak aracı belirten bir işlev adı tanımlayıcısı nesnesi. Son seçenek aşağıdaki şemayı izler: { "type": "function", "function": {"name" : "the_function_name"} }
n
integer
İsteğe bağlı. Oluşturulacak olası tamamlama sayısı. Pozitif bir tam sayı olmalıdır. Ayarlanmamışsa varsayılan değeri 1'dir.
stop
value (Value
format)
İsteğe bağlı. Çıktı oluşturmayı durduracak karakter dizisi grubu. Not: Bu, polimorfik bir alandır. Bir dize veya tekrarlanan dizeler içermesi gerekir.
maxCompletionTokens
integer
İsteğe bağlı. Bir yanıt adayına dahil edilecek maksimum jeton sayısı. Pozitif bir tam sayı olmalıdır.
maxTokens
integer
İsteğe bağlı. Bir yanıt adayına dahil edilecek maksimum jeton sayısı. Pozitif bir tam sayı olmalıdır. Bu alanın desteği SDK tarafından sonlandırılmıştır.
temperature
number
İsteğe bağlı. Çıktının rastgeleliğini kontrol eder.
topP
number
İsteğe bağlı. Örnekleme sırasında dikkate alınacak maksimum kümülatif jeton olasılığı.
responseFormat
object (ResponseFormat
)
İsteğe bağlı. Yanıtın biçimini tanımlar. Ayarlanmazsa yanıt metin olarak biçimlendirilir.
Yanıt gövdesi
Başarılı olursa yanıt, biçimi yöntem tarafından tanımlanan genel bir HTTP yanıtıdır.
Yöntem: openai.embeddings
Giriş verilen modelden yerleştirilmiş öğeler oluşturur.
Uç nokta
yayınlahttps: / /generativelanguage.googleapis.com /v1beta /openai /embeddings
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni aşağıdaki yapıyla birlikte verileri içerir:
input
value (Value
format)
Zorunlu. Yerleştirilmiş öğelerin oluşturulacağı giriş. Dize veya dize listesi olabilir. SDK, sayı listesi ve sayı listesi listesi destekler ancak bu henüz uygulanmamıştır.
model
string
Zorunlu. Yerleştirilmiş öğelerin oluşturulacağı model.
encodingFormat
string
İsteğe bağlı. Kodlamanın biçimi. "float" veya "base64" olmalıdır.
dimensions
integer
İsteğe bağlı. Oluşturulan yerleştirmelerin boyutu.
Yanıt gövdesi
Başarılıysa yanıt metni, GenerateEmbeddingsResponse
öğesinin bir örneğini içerir.
Yöntem: openai.models
Şu anda mevcut modelleri listeler.
Uç nokta
gethttps: / /generativelanguage.googleapis.com /v1beta /openai /models
URL, gRPC Kod Dönüştürme söz dizimini kullanır.
İstek içeriği
İstek metni boş olmalıdır.
Yanıt metni
Başarılıysa yanıt metni, SdkListModelsResponse
öğesinin bir örneğini içerir.
ChatTool
Modelin arama oluşturabileceği bir araç.
function
object (ChatFunction
)
Zorunlu. Aracı adı.
type
string
Zorunlu. Zorunlu, "function" olmalıdır.
JSON gösterimi |
---|
{
"function": {
object ( |
ChatFunction
Modelin çağrı oluşturabileceği bir işlev.
name
string
Zorunlu. İşlevin adı.
description
string
İsteğe bağlı. İşlevin açıklaması.
parameters
object (Struct
format)
İsteğe bağlı. İşlevin parametreleri.
strict
boolean
İsteğe bağlı. Şema doğrulamasının katı olup olmadığı. Doğru ise şema geçerli değilse model başarısız olur. NOT: Bu parametre şu anda yoksayılmaktadır.
JSON gösterimi |
---|
{ "name": string, "description": string, "parameters": { object }, "strict": boolean } |
GenerateEmbeddingsResponse
Yerleştirme oluşturma için yanıt.
object
string
Yalnızca çıkış. Her zaman "embedding" (yerleştirme) olmalıdır. Bu, SDK tarafından zorunlu kılınmıştır.
data[]
object (GenerateEmbeddingsEmbedding
)
Yalnızca çıkış. İstenen yerleştirmelerin listesi.
model
string
Yalnızca çıkış. Yerleşim oluşturmak için kullanılan model.
JSON gösterimi |
---|
{
"object": string,
"data": [
{
object ( |
GenerateEmbeddingsEmbedding
Model tarafından oluşturulan bir yerleştirme vektörü.
object
string
Yalnızca çıkış. Her zaman "embedding" (yerleştirme) olmalıdır. Bu, SDK tarafından zorunlu kılınmıştır.
index
integer
Yalnızca çıkış. Yerleştirme listesinde yer alan yerleştirmenin dizini.
embedding
value (Value
format)
Yalnızca çıkış. Giriş için oluşturulan yerleştirme vektörü. Kesirli sayı listesi veya C tarzı düzene sahip kesirli sayı listesini kodlayan bir base64 dizesi (Numpy uyumlu) olabilir.
JSON gösterimi |
---|
{ "object": string, "index": integer, "embedding": value } |
HttpBody
Rastgele bir HTTP gövde metnini temsil eden mesaj. Yalnızca ham ikili program veya HTML sayfası gibi JSON olarak temsil edilemeyen yük biçimleri için kullanılmalıdır.
Bu mesaj hem istekteki hem de yanıttaki akışkan ve akışkan olmayan API yöntemlerinde kullanılabilir.
Üst düzey istek alanı olarak kullanılabilir. Bu, URL veya HTTP şablonundan parametreleri alıp istek alanlarına yerleştirmek ve ham HTTP gövde metnine erişmek istediğinizde kullanışlı olur.
Örnek:
message GetResourceRequest {
// A unique request id.
string requestId = 1;
// The raw HTTP body is bound to this field.
google.api.HttpBody http_body = 2;
}
service ResourceService {
rpc GetResource(GetResourceRequest)
returns (google.api.HttpBody);
rpc UpdateResource(google.api.HttpBody)
returns (google.protobuf.Empty);
}
Akışkan yöntemlerin kullanıldığı örnek:
service CaldavService {
rpc GetCalendar(stream google.api.HttpBody)
returns (stream google.api.HttpBody);
rpc UpdateCalendar(stream google.api.HttpBody)
returns (stream google.api.HttpBody);
}
Bu türün kullanılması yalnızca istek ve yanıt gövde metinlerinin ele alınma biçimini değiştirir, diğer tüm özellikler herhangi bir değişiklik olmadan çalışmaya devam eder.
contentType
string
Gövdenin içerik türünü belirten HTTP Content-Type başlık değeri.
data
string (bytes format)
Ham ikili olarak HTTP istek/yanıt gövdesi.
Base64 kodlu bir dize.
extensions[]
object
Uygulamaya özgü yanıt meta verileri. Akışkan API'ler için ilk yanıtta ayarlanmalıdır.
İsteğe bağlı türde alanlar içeren bir nesne. "@type"
adlı ek bir alan, türü tanımlayan bir URI içerir. Örnek: { "id": 1234, "@type": "types.example.com/standard/id" }
.
JSON gösterimi |
---|
{ "contentType": string, "data": string, "extensions": [ { "@type": string, field1: ..., ... } ] } |
ResponseFormat
Yanıtın biçimini tanımlar.
type
string
Zorunlu. Yanıtın türü. Şu değerlerden biri olabilir: - "text": Yanıtı metin olarak biçimlendirir. - "json_object": Yanıtı JSON nesnesi olarak biçimlendirin. - "jsonSchema": Yanıtı, belirtilen şemaya uygun bir JSON nesnesi olarak biçimlendirir.
jsonSchema
object (ResponseFormatSchema
)
İsteğe bağlı. Uygulanacak JSON şeması. Yalnızca tür "jsonSchema" ise kullanılır.
JSON gösterimi |
---|
{
"type": string,
"jsonSchema": {
object ( |
ResponseFormatSchema
Yanıtın şeması.
description
string
İsteğe bağlı. Şema tarafından temsil edilen nesnenin açıklaması.
name
string
Zorunlu. Şema tarafından temsil edilen nesne türünün adı.
strict
boolean
İsteğe bağlı. Şema doğrulamasının katı olup olmadığı. Doğru ise şema geçerli değilse model başarısız olur. NOT: Bu parametre şu anda yoksayılmaktadır.
schema
object (Struct
format)
İsteğe bağlı. Uygulanacak JSON şeması.
JSON gösterimi |
---|
{ "description": string, "name": string, "strict": boolean, "schema": { object } } |
SdkListModelsResponse
Liste modelleri için yanıt.
object
string
Yalnızca çıkış. Her zaman "list", SDK tarafından zorunludur.
data[]
object (SdkModel
)
Yalnızca çıkış. İstenen yerleştirmelerin listesi.
JSON gösterimi |
---|
{
"object": string,
"data": [
{
object ( |
SdkModel
Model nesnesi.
id
string
Yalnızca çıkış. Modelin kimliği.
object
string
Yalnızca çıkış. Her zaman "model"dir ve SDK tarafından zorunlu tutulur.
created
string (int64 format)
Yalnızca çıkış. Modelin oluşturulduğu Unix zaman damgası (saniye cinsinden).
owned_by
string
Yalnızca çıkış. Modelin sahibi olan kuruluş.
JSON gösterimi |
---|
{ "id": string, "object": string, "created": string, "owned_by": string } |