Aracılığıyla paylaş


Yardımcılar API'si (Önizleme) başvurusu

Not

  • Dosya arama , yardımcı başına 10.000'e kadar dosya alabilir - öncekinden 500 kat daha fazla. Hızlıdır, çok iş parçacıklı aramalar aracılığıyla paralel sorguları destekler ve gelişmiş yeniden derecelendirme ve sorguyu yeniden yazma özellikleri sunar.
    • Vektör deposu API'de yeni bir nesnedir. Bir dosya bir vektör deposuna eklendikten sonra otomatik olarak ayrıştırılır, öbeklere ayrılır, eklenir ve aramaya hazır hale getirilir. Vektör depolarının birden fazla yardımcı ve iş parçacığı arasında kullanılabilmesi, dosya yönetimini ve faturalamayı basitleştirir.
  • Belirli bir çalıştırmada tool_choice belirli bir aracın (dosya arama, kod yorumlayıcı veya işlev gibi) kullanılmasını zorlamak için kullanılabilecek parametre desteği ekledik.

Bu makalede, yeni Yardımcılar API'sine (Önizleme) yönelik Python ve REST için başvuru belgeleri sağlanır. Başlangıç kılavuzunda daha ayrıntılı adım adım yönergeler sağlanır.

Yardımcı oluşturma

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview

Model ve yönergeler içeren bir yardımcı oluşturun.

Request body

Adı Tür Zorunlu Açıklama
model Dize Zorunlu Kullanılacak modelin model dağıtım adı.
Adı dize veya null İsteğe bağlı Asistanın adı. Uzunluk üst sınırı 256 karakterdir.
açıklama dize veya null İsteğe bağlı Asistanın açıklaması. Uzunluk üst sınırı 512 karakterdir.
yönergeler dize veya null İsteğe bağlı Yardımcının kullandığı sistem yönergeleri. Uzunluk üst sınırı 256.000 karakterdir.
araçlar dizi İsteğe bağlı Varsayılan olarak []. Yardımcıda etkinleştirilen araçların listesi. Yardımcı başına en fazla 128 araç olabilir. Araçlar şu anda veya functiontüründe code_interpreterolabilir. Açıklama function en fazla 1.024 karakter olabilir.
meta veriler map İsteğe bağlı Bir nesneye eklenebilen 16 anahtar-değer çifti kümesi. Bu, nesne hakkında ek bilgileri yapılandırılmış biçimde depolamak için yararlı olabilir. Anahtarlar en fazla 64 karakter uzunluğunda ve değerler en fazla 512 karakter uzunluğunda olabilir.
sıcaklık sayı veya null İsteğe bağlı Varsayılan değer 1'tir. 0 ile 2 arasında hangi örnekleme sıcaklığının kullanılacağını belirler. 0,8 gibi daha yüksek değerler çıkışı daha rastgele hale getirirken, 0,2 gibi daha düşük değerler daha odaklanmış ve belirleyici hale getirir.
top_p sayı veya null İsteğe bağlı Varsayılan değer 1'tir. Modelin top_p olasılık kütlesine sahip belirteçlerin sonuçlarını dikkate aldığı, çekirdek örneklemesi olarak adlandırılan sıcaklıkla örneklemeye alternatiftir. Bu nedenle 0,1 yalnızca ilk %10 olasılık kütlesinden oluşan belirteçlerin dikkate alınması anlamına gelir. Genellikle bunu veya sıcaklığı değiştirmenizi öneririz, ancak ikisini birden değiştirmemenizi öneririz.
response_format dize veya nesne İsteğe bağlı Modelin çıkış yapması gereken biçimi belirtir. GPT-4 Turbo ve gpt-3.5-turbo-1106'dan bu yana tüm GPT-3.5 Turbo modelleri ile uyumludur. Bu parametreyi JSON modunu etkinleştirecek şekilde { "type": "json_object" } ayarlamak, modelin oluşturduğu iletinin geçerli JSON olduğunu garanti eder. Önemli olan, JSON modunu kullanırken modele bir sistem veya kullanıcı iletisi kullanarak JSON üretmesini de belirtmeniz gerekir. Bu yönerge olmadan model, nesil belirteç sınırına ulaşana kadar bitmeyen bir boşluk akışı oluşturabilir ve bu da uzun süre çalışan ve görünüşe göre "takılmış" bir istekle sonuçlanır. Ayrıca, kullanırsanız finish_reason="length"ileti içeriği kısmen kesilebilir. Bu, neslin aştığını max_tokens veya konuşmanın bağlam uzunluğunun üst sınırını aştığını gösterir.
tool_resources nesne İsteğe bağlı Yardımcının araçları tarafından kullanılan bir kaynak kümesi. Kaynaklar araç türüne özeldir. Örneğin, code_interpreter araç bir dosya kimlikleri listesi gerektirirken file_search , araç vektör deposu kimliklerinin listesini gerektirir.

response_format türleri

string

auto varsayılan değerdir.

object

Olası type değerler: text, json_object, json_schema.

json_schema

Adı Tür Açıklama Varsayılan Gerekli/isteğe bağlı
description Dize Yanıt biçiminin ne için olduğuna ilişkin bir açıklama, model tarafından biçimde nasıl yanıt verileceğini belirlemek için kullanılır. İsteğe bağlı
name Dize Yanıt biçiminin adı. En fazla uzunluğu 64 olan a-z, A-Z, 0-9 veya alt çizgi ve kısa çizgi içermelidir. Zorunlu
schema nesne JSON Şeması nesnesi olarak tanımlanan yanıt biçimi şeması. İsteğe bağlı
strict boole veya null Çıktı oluşturulurken sıkı şemaya bağlı kalınmasının etkinleştirilip etkinleştirilmeyileceği. True olarak ayarlanırsa, model her zaman alanda tanımlanan tam şemayı schema izler. olduğunda stricttrueJSON Şemasının yalnızca bir alt kümesi desteklenir. yanlış İsteğe bağlı

tool_resources özellikleri

code_interpreter

Adı Tür Açıklama Varsayılan
file_ids dizi code_interpreter aracının kullanımına sunulan dosya kimliklerinin listesi. Araçla ilişkili en fazla 20 dosya olabilir. []

file_search

Adı Tür Açıklama Gerekli/isteğe bağlı
vector_store_ids dizi Bu iş parçacığına bağlı vektör deposu. İş parçacığına en fazla 1 vektör deposu eklenebilir. İsteğe bağlı
vector_stores dizi file_ids ile bir vektör deposu oluşturmak ve bunu bu iş parçacığına eklemek için bir yardımcı. İş parçacığına en fazla 1 vektör deposu eklenebilir. İsteğe bağlı

vector_stores

Adı Tür Açıklama Gerekli/isteğe bağlı
file_ids dizi Vektör deposuna eklenecek dosya kimliklerinin listesi. Vektör deposunda en fazla 10000 dosya olabilir. İsteğe bağlı
chunking_strategy nesne Dosyaları öbekleme için kullanılan öbekleme stratejisi. Ayarlanmadıysa, otomatik stratejiyi kullanır. İsteğe bağlı
metadata map Vektör deposuna eklenebilen 16 anahtar-değer çifti kümesi. Bu, vektör deposu hakkında ek bilgileri yapılandırılmış biçimde depolamak için yararlı olabilir. Anahtarlar en fazla 64 karakter uzunluğunda ve değerler en fazla 512 karakter uzunluğunda olabilir. İsteğe bağlı

chunking_strategy

Adı Tür Açıklama Gerekli/isteğe bağlı
Auto Chunking Strategy nesne Varsayılan strateji. Bu strateji şu anda ve'nin chunk_overlap_tokens bir max_chunk_size_tokens sürümünü 800400kullanır. type her zaman auto değerine sahiptir Zorunlu
Static Chunking Strategy nesne type Her zaman static Zorunlu

Statik Öbekleme Stratejisi

Adı Tür Açıklama Gerekli/isteğe bağlı
max_chunk_size_tokens integer Her öbekteki en fazla belirteç sayısı. Varsayılan değer şudur: 800. En düşük değer, 100 en büyük değer ise şeklindedir 4096. Zorunlu
chunk_overlap_tokens integer Öbekler arasında çakışan belirteçlerin sayısı. Varsayılan değer şudur: 400. Çakışmanın yarısını max_chunk_size_tokensaşmaması gerektiğini unutmayın. Zorunlu

Döndürülenler

Bir yardımcı nesnesi.

Örnek yardımcı oluşturma isteği

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

assistant = client.beta.assistants.create(
  instructions="You are an AI assistant that can write code to help answer math questions",
  model="<REPLACE WITH MODEL DEPLOYMENT NAME>", # replace with model deployment name. 
  tools=[{"type": "code_interpreter"}]
)

Yardımcıları listeleme

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview

Tüm yardımcıların listesini döndürür.

Sorgu parametreleri

Parametre Türü Zorunlu Açıklama
limit integer İsteğe bağlı Döndürülecek nesne sayısıyla ilgili bir sınır. Sınır 1 ile 100 arasında olabilir ve varsayılan değer 20'dir.
order Dize İsteğe bağlı - Desc varsayılanları Düzeni nesnelerin created_at zaman damgasına göre sıralayın. artan düzen için asc ve azalan düzen için desc.
after Dize İsteğe bağlı Sayfalandırmada kullanılacak bir imleç. after , listedeki yerinizi tanımlayan bir nesne kimliğidir. Örneğin, bir liste isteğinde bulunur ve obj_foo ile biten 100 nesne alırsanız, listenin sonraki sayfasını getirmek için sonraki çağrınız after=obj_foo içerebilir.
before Dize İsteğe bağlı Sayfalandırmada kullanılacak bir imleç. before , listedeki yerinizi tanımlayan bir nesne kimliğidir. Örneğin, bir liste isteğinde bulunur ve obj_foo ile biten 100 nesne alırsanız, listenin önceki sayfasını getirmek için sonraki çağrınız before=obj_foo içerebilir.

Döndürülenler

Yardımcı nesnelerin listesi

Örnek liste yardımcıları

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_assistants = client.beta.assistants.list(
    order="desc",
    limit="20",
)
print(my_assistants.data)

Yardımcıyı alma

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-08-01-preview

Bir yardımcı alır.

Yol parametreleri

Parametre Türü Zorunlu Açıklama
assistant_id Dize Zorunlu Alınacak yardımcının kimliği.

İadeler

Belirtilen kimlikle eşleşen yardımcı nesnesi.

Örnek alma yardımcısı

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_assistant = client.beta.assistants.retrieve("asst_abc123")
print(my_assistant)

Yardımcıyı değiştir

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-08-01-preview

Bir yardımcıyı değiştirir.

Yol parametreleri

Parametre Türü Zorunlu Açıklama
assistant_id Dize Zorunlu Dosyanın ait olduğu yardımcının kimliği.

İstek Gövdesi

Parametre Türü Zorunlu Açıklama
model İsteğe bağlı Kullanılacak modelin model dağıtım adı.
name dize veya null İsteğe bağlı Asistanın adı. Uzunluk üst sınırı 256 karakterdir.
description dize veya null İsteğe bağlı Asistanın açıklaması. Uzunluk üst sınırı 512 karakterdir.
instructions dize veya null İsteğe bağlı Yardımcının kullandığı sistem yönergeleri. Uzunluk üst sınırı 32768 karakterdir.
tools dizi İsteğe bağlı Varsayılan olarak []. Yardımcıda etkinleştirilen araçların listesi. Yardımcı başına en fazla 128 araç olabilir. Araçlar code_interpreter veya işlev türünde olabilir. Açıklama function en fazla 1.024 karakter olabilir.
metadata map İsteğe bağlı Bir nesneye eklenebilen 16 anahtar-değer çifti kümesi. Bu, nesne hakkında ek bilgileri yapılandırılmış biçimde depolamak için yararlı olabilir. Anahtarlar en fazla 64 karakter uzunluğunda ve değerler en fazla 512 karakter uzunluğunda olabilir.
temperature sayı veya null İsteğe bağlı Varsayılan değer 1'tir. 0 ile 2 arasında hangi örnekleme sıcaklığının kullanılacağını belirler. 0,8 gibi daha yüksek değerler çıkışı daha rastgele hale getirirken, 0,2 gibi daha düşük değerler daha odaklanmış ve belirleyici hale getirir.
top_p sayı veya null İsteğe bağlı Varsayılan değer 1'tir. Modelin top_p olasılık kütlesine sahip belirteçlerin sonuçlarını dikkate aldığı, çekirdek örneklemesi olarak adlandırılan sıcaklıkla örneklemeye alternatiftir. Bu nedenle 0,1 yalnızca ilk %10 olasılık kütlesinden oluşan belirteçlerin dikkate alınması anlamına gelir. Genellikle bunu veya sıcaklığı değiştirmenizi öneririz, ancak ikisini birden değiştirmemenizi öneririz.
response_format dize veya nesne İsteğe bağlı Modelin çıkış yapması gereken biçimi belirtir. GPT-4 Turbo ve gpt-3.5-turbo-1106'dan bu yana tüm GPT-3.5 Turbo modelleri ile uyumludur. Bu parametreyi JSON modunu etkinleştirecek şekilde { "type": "json_object" } ayarlamak, modelin oluşturduğu iletinin geçerli JSON olduğunu garanti eder. Önemli olan, JSON modunu kullanırken modele bir sistem veya kullanıcı iletisi kullanarak JSON üretmesini de belirtmeniz gerekir. Bu yönerge olmadan model, nesil belirteç sınırına ulaşana kadar bitmeyen bir boşluk akışı oluşturabilir ve bu da uzun süre çalışan ve görünüşe göre "takılmış" bir istekle sonuçlanır. Ayrıca, kullanırsanız finish_reason="length"ileti içeriği kısmen kesilebilir. Bu, neslin aştığını max_tokens veya konuşmanın bağlam uzunluğunun üst sınırını aştığını gösterir.
tool_resources nesne İsteğe bağlı Yardımcının araçları tarafından kullanılan bir kaynak kümesi. Kaynaklar araç türüne özeldir. Örneğin, code_interpreter araç bir dosya kimlikleri listesi gerektirirken file_search , araç vektör deposu kimliklerinin listesini gerektirir.

İadeler

Değiştirilen yardımcı nesnesi.

Örnek değiştirme yardımcısı

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_updated_assistant = client.beta.assistants.update(
  "asst_abc123",
  instructions="You are an HR bot, and you have access to files to answer employee questions about company policies. Always respond with info from either of the files.",
  name="HR Helper",
  tools=[{"type": "code-interpreter"}],
  model="gpt-4", #model = model deployment name
)

print(my_updated_assistant)

Yardımcıyı sil

DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-08-01-preview

Bir yardımcıyı silin.

Yol parametreleri

Parametre Türü Zorunlu Açıklama
assistant_id Dize Zorunlu Dosyanın ait olduğu yardımcının kimliği.

İadeler

Silme durumu.

Örnek silme yardımcısı

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

response = client.beta.assistants.delete("asst_abc123")
print(response)

Dosya yükleme API'si başvurusu

Yardımcılar, dosya yükleme için ince ayar ile aynı API'yi kullanır. Bir dosyayı karşıya yüklerken, amaç parametresi için uygun bir değer belirtmeniz gerekir.

Yardımcı nesnesi

Alan Tür Veri Akışı Açıklaması
id Dize API uç noktalarında başvurulabilen tanımlayıcı.
object Dize Her zaman yardımcı olan nesne türü.
created_at integer Yardımcının oluşturulduğu zaman için Unix zaman damgası (saniye olarak).
name dize veya null Asistanın adı. Uzunluk üst sınırı 256 karakterdir.
description dize veya null Asistanın açıklaması. Uzunluk üst sınırı 512 karakterdir.
model Dize Kullanılacak model dağıtım adının adı.
instructions dize veya null Yardımcının kullandığı sistem yönergeleri. Uzunluk üst sınırı 32768 karakterdir.
tools dizi Yardımcıda etkinleştirilen aracın listesi. Yardımcı başına en fazla 128 araç olabilir. Araçlar code_interpreter veya işlev türünde olabilir. Açıklama function en fazla 1.024 karakter olabilir.
metadata map Bir nesneye eklenebilen 16 anahtar-değer çifti kümesi. Bu, nesne hakkında ek bilgileri yapılandırılmış biçimde depolamak için yararlı olabilir. Anahtarlar en fazla 64 karakter uzunluğunda ve değerler en fazla 512 karakter uzunluğunda olabilir.
temperature sayı veya null Varsayılan değer 1'tir. 0 ile 2 arasında hangi örnekleme sıcaklığının kullanılacağını belirler. 0,8 gibi daha yüksek değerler çıkışı daha rastgele hale getirirken, 0,2 gibi daha düşük değerler daha odaklanmış ve belirleyici hale getirir.
top_p sayı veya null Varsayılan değer 1'tir. Modelin top_p olasılık kütlesine sahip belirteçlerin sonuçlarını dikkate aldığı, çekirdek örneklemesi olarak adlandırılan sıcaklıkla örneklemeye alternatiftir. Bu nedenle 0,1 yalnızca ilk %10 olasılık kütlesinden oluşan belirteçlerin dikkate alınması anlamına gelir. Genellikle bunu veya sıcaklığı değiştirmenizi öneririz, ancak ikisini birden değiştirmemenizi öneririz.
response_format dize veya nesne Modelin çıkış yapması gereken biçimi belirtir. GPT-4 Turbo ve gpt-3.5-turbo-1106'dan bu yana tüm GPT-3.5 Turbo modelleri ile uyumludur. Bu parametreyi JSON modunu etkinleştirecek şekilde { "type": "json_object" } ayarlamak, modelin oluşturduğu iletinin geçerli JSON olduğunu garanti eder. Önemli olan, JSON modunu kullanırken modele bir sistem veya kullanıcı iletisi kullanarak JSON üretmesini de belirtmeniz gerekir. Bu yönerge olmadan model, nesil belirteç sınırına ulaşana kadar bitmeyen bir boşluk akışı oluşturabilir ve bu da uzun süre çalışan ve görünüşe göre "takılmış" bir istekle sonuçlanır. Ayrıca, kullanırsanız finish_reason="length"ileti içeriği kısmen kesilebilir. Bu, neslin aştığını max_tokens veya konuşmanın bağlam uzunluğunun üst sınırını aştığını gösterir.
tool_resources nesne Yardımcının araçları tarafından kullanılan bir kaynak kümesi. Kaynaklar araç türüne özeldir. Örneğin, code_interpreter araç bir dosya kimlikleri listesi gerektirirken file_search , araç vektör deposu kimliklerinin listesini gerektirir.