Aracılığıyla paylaş


Temel model REST API başvurusu

Bu makalede Databricks Foundation Model API'leri ve destekledikleri modeller için genel API bilgileri sağlanır. Temel Model API'leri, mevcut projelerin geçirilmesini kolaylaştırmak için OpenAI'nin REST API'sine benzer şekilde tasarlanmıştır. Hem belirteç başına ödeme hem de sağlanan aktarım hızı uç noktaları aynı REST API istek biçimini kabul eder.

Bitiş noktası

Her belirteç başına ödeme modelinin tek bir uç noktası vardır ve kullanıcılar HTTP POST isteklerini kullanarak bu uç noktalarla etkileşimde bulunabilir. Sağlanan aktarım hızı uç noktaları API veya Sunum Kullanıcı Arabirimi kullanılarak oluşturulabilir. Bu uç noktalar, sunulan her iki model de aynı API biçimini kullanıma sunulduğu sürece A/B testi için uç nokta başına birden çok modeli de destekler. Örneğin, her iki model de sohbet modelleridir.

İstekler ve yanıtlar JSON kullanır; tam JSON yapısı bir uç noktanın görev türüne bağlıdır. Sohbet ve tamamlama uç noktaları akış yanıtlarını destekler.

Belirteç başına ödeme iş yükleri belirli modelleri destekler. Bkz . Bu modeller ve kabul edilen API biçimleri için belirteç başına ödeme için desteklenen modeller.

Kullanım

Yanıtlar, istek ve yanıttaki belirteç sayısını bildiren bir usage alt ileti içerir. Bu alt iletinin biçimi tüm görev türlerinde aynıdır.

Alan Tür Açıklama
completion_tokens Tamsayı Oluşturulan belirteçlerin sayısı. Yanıtları eklemeye dahil değildir.
prompt_tokens Tamsayı Giriş istemlerinden belirteç sayısı.
total_tokens Tamsayı Toplam belirteç sayısı.

Kullanıcı istemi gibi llama-2-70b-chat modeller modele geçirilmeden önce bir istem şablonu kullanılarak dönüştürülür. Belirteç başına ödeme uç noktaları için bir sistem istemi de eklenebilir. prompt_tokens sunucumuz tarafından eklenen tüm metinleri içerir.

Sohbet görevi

Sohbet görevleri, bir modelle çok aşamalı konuşmalar için iyileştirilmiştir. Her istek, messages şu ana kadarki konuşmayı açıklar ve alanın bir user iletiyle biten ve assistant roller arasında user geçiş yapması gerekir. Model yanıtı konuşmada bir sonraki assistant iletiyi sağlar.

Sohbet isteği

Alan Varsayılan Type Açıklama
messages ChatMessage listesi Geçerli konuşmayı temsil eden iletilerin listesi. (Gerekli)
max_tokens nil Sıfırdan büyük veya nilsonsuzluğu temsil eden tamsayı Oluşturulacak en fazla belirteç sayısı.
stream true Boolean İstekler için kısmi sonuçlara izin vermek için yanıtları bir istemciye geri akışla aktar. Bu parametre isteğe dahil edilirse, yanıtlar Sunucu tarafından gönderilen olaylar standardı kullanılarak gönderilir.
temperature 1.0 Float in [0,2] Örnekleme sıcaklığı. 0, belirlenimcidir ve daha yüksek değerler daha fazla rastgelelik sağlar.
top_p 1.0 Float in (0,1] Çekirdek örneklemesi için kullanılan olasılık eşiği.
top_k nil Sıfırdan büyük veya nilsonsuzluğu temsil eden tamsayı Üst k filtreleme için kullanılacak en olası k belirteç sayısını tanımlar. Çıkışları belirleyici hale getirmek için bu değeri 1 olarak ayarlayın.
stop [] Dize veya Liste[Dize] içindeki dizilerden stop herhangi biriyle karşılaşıldığında model daha fazla belirteç üretmeyi durdurur.
n 1 Sıfırdan büyük tamsayı BELIRTILDIĞInde n API bağımsız sohbet tamamlamaları döndürürn. Ek çıkarım verimliliği ve maliyet tasarrufu için aynı girişte birden çok tamamlama oluşturan iş yükleri için önerilir. Yalnızca sağlanan aktarım hızı uç noktaları için kullanılabilir.

ChatMessage

Alan Tür Veri Akışı Açıklaması
role String Gerekli. İletinin yazarının rolü. , "user"veya "assistant"olabilir"system".
content String Gerekli. İletinin içeriği. (Gerekli)

Rol system , konuşmadaki ilk ileti olarak yalnızca bir kez kullanılabilir. Modelin varsayılan sistem istemini geçersiz kılar.

Sohbet yanıtı

Akışsız istekler için yanıt tek bir sohbet tamamlama nesnesidir. Akış istekleri için yanıt, her olayın bir text/event-stream tamamlama öbek nesnesi olduğu bir yanıttır. Tamamlama ve öbek nesnelerinin üst düzey yapısı neredeyse aynıdır: yalnızca choices farklı bir türe sahiptir.

Alan Tür Veri Akışı Açıklaması
id String Sohbetin tamamlanması için benzersiz tanımlayıcı.
choices List[ChatCompletionChoice] veya List[ChatCompletionChunk] (akış) Sohbet tamamlama metinlerinin listesi. n parametresi belirtilirse n seçenekler döndürülür.
object String Nesne türü. "chat.completions" Akış dışı veya "chat.completion.chunk" akış için eşittir.
created Tamsayı Sohbet tamamlama işleminin saniyeler içinde oluşturulduğu zaman.
model String Yanıtı oluşturmak için kullanılan model sürümü.
usage Kullanım Belirteç kullanımı meta verileri. Akış yanıtlarında mevcut olmayabilir.

ChatCompletionChoice

Alan Tür Açıklama
index Tamsayı Oluşturulan seçimler listesinde tercih edilen dizin.
message ChatMessage Model tarafından döndürülen bir sohbet tamamlama iletisi. Rol olacaktır assistant.
finish_reason String Modelin belirteç oluşturma işlemini durdurmasının nedeni.

ChatCompletionChunk

Alan Tür Açıklama
index Tamsayı Oluşturulan seçimler listesinde tercih edilen dizin.
delta ChatMessage Modelden oluşturulan akışlı yanıtların bir parçası olan sohbet tamamlama iletisi. Yalnızca ilk öbeğin doldurulacak şekilde role garanti edilir.
finish_reason String Modelin belirteç oluşturma işlemini durdurmasının nedeni. Yalnızca son öbekte bu doldurulur.

Tamamlama görevi

Metin tamamlama görevleri, tek bir istem için yanıt oluşturmaya yöneliktir. Sohbet'in aksine, bu görev toplu girişleri destekler: tek bir istekte birden çok bağımsız istem gönderilebilir.

Tamamlama isteği

Alan Varsayılan Type Açıklama
prompt Dize veya Liste[Dize] Modelin istemleri. (Gerekli)
max_tokens nil Sıfırdan büyük veya nilsonsuzluğu temsil eden tamsayı Oluşturulacak en fazla belirteç sayısı.
stream true Boolean İstekler için kısmi sonuçlara izin vermek için yanıtları bir istemciye geri akışla aktar. Bu parametre isteğe dahil edilirse, yanıtlar Sunucu tarafından gönderilen olaylar standardı kullanılarak gönderilir.
temperature 1.0 Float in [0,2] Örnekleme sıcaklığı. 0, belirlenimcidir ve daha yüksek değerler daha fazla rastgelelik sağlar.
top_p 1.0 Float in (0,1] Çekirdek örneklemesi için kullanılan olasılık eşiği.
top_k nil Sıfırdan büyük veya nilsonsuzluğu temsil eden tamsayı Üst k filtreleme için kullanılacak en olası k belirteç sayısını tanımlar. Çıkışları belirleyici hale getirmek için bu değeri 1 olarak ayarlayın.
error_behavior "error" "truncate" veya "error" Zaman aşımları ve bağlam uzunluğu aşıldı hataları için. Bunlardan biri: "truncate" (mümkün olduğunca çok belirteç döndür) ve "error" (hata döndür). Bu parametre yalnızca belirteç uç noktaları başına ödeme tarafından kabul edilir.
n 1 Sıfırdan büyük tamsayı BELIRTILDIĞInde n API bağımsız sohbet tamamlamaları döndürürn. Ek çıkarım verimliliği ve maliyet tasarrufu için aynı girişte birden çok tamamlama oluşturan iş yükleri için önerilir. Yalnızca sağlanan aktarım hızı uç noktaları için kullanılabilir.
stop [] Dize veya Liste[Dize] içindeki dizilerden stop herhangi biriyle karşılaşıldığında model daha fazla belirteç üretmeyi durdurur.
suffix "" String Her tamamlamanın sonuna eklenen bir dize.
echo false Boolean tamamlama ile birlikte istem döndürür.
use_raw_prompt false Boolean ise true, öğesini herhangi bir dönüştürme olmadan doğrudan modele geçirin prompt .

Tamamlama yanıtı

Alan Tür Veri Akışı Açıklaması
id String Metin tamamlama için benzersiz tanımlayıcı.
choices CompletionChoice Metin tamamlamalarının listesi. Geçirilen her istem için, n belirtilirse n seçenekler oluşturulur. Varsayılan n değer 1'dir.
object String Nesne türü. Eşittir "text_completion"
created Tamsayı Tamamlanmanın saniyeler içinde oluşturulduğu zaman.
usage Kullanım Belirteç kullanımı meta verileri.

CompletionChoice

Alan Tür Açıklama
index Tamsayı İstekteki istemin dizini.
text String Oluşturulan tamamlama.
finish_reason String Modelin belirteç oluşturma işlemini durdurmasının nedeni.

Ekleme görevi

Ekleme görevleri giriş dizelerini ekleme vektörlerine eşler. Her istekte birçok giriş birlikte toplu işlenebilir.

Ekleme isteği

Alan Tür Açıklama
input Dize veya Liste[Dize] Eklenmek için giriş metni. Dize veya dize listesi olabilir. (Gerekli)
instruction String Ekleme modeline geçirmek için isteğe bağlı bir yönerge.

Yönergeler isteğe bağlıdır ve modele özeldir. Örneğin BGE yazarları öbekleri dizine eklerken yönerge önermez ve alma sorguları için yönergenin "Represent this sentence for searching relevant passages:" kullanılmasını önerir. Instructor-XL gibi diğer modeller çok çeşitli yönerge dizelerini destekler.

Eklemeler yanıtı

Alan Tür Veri Akışı Açıklaması
id String Ekleme için benzersiz tanımlayıcı.
object String Nesne türü. eşittir "list".
model String Eklemeyi oluşturmak için kullanılan ekleme modelinin adı.
data EmbeddingObject Ekleme nesnesi.
usage Kullanım Belirteç kullanımı meta verileri.

EmbeddingObject

Alan Tür Veri Akışı Açıklaması
object String Nesne türü. eşittir "embedding".
index Tamsayı Eklemenin, model tarafından oluşturulan eklemeler listesindeki dizini.
embedding Liste[Kayan] Ekleme vektör. Her model sabit boyutlu vektör döndürür (BGE-Large için 1024)

Ek kaynaklar