Bagikan melalui


Referensi Assistants API (Pratinjau)

Catatan

  • Pencarian file dapat menyerap hingga 10.000 file per asisten - 500 kali lebih banyak dari sebelumnya. Ini cepat, mendukung kueri paralel melalui pencarian multi-utas, dan fitur reranking dan penulisan ulang kueri yang ditingkatkan.
    • Penyimpanan vektor adalah objek baru di API. Setelah file ditambahkan ke penyimpanan vektor, file secara otomatis diurai, dipotong, dan disematkan, dibuat siap untuk dicari. Penyimpanan vektor dapat digunakan di seluruh asisten dan utas, menyederhanakan manajemen dan penagihan file.
  • Kami telah menambahkan dukungan untuk tool_choice parameter yang dapat digunakan untuk memaksa penggunaan alat tertentu (seperti pencarian file, penerjemah kode, atau fungsi) dalam eksekusi tertentu.

Artikel ini menyediakan dokumentasi referensi untuk Python dan REST untuk Assistants API (Pratinjau) baru. Panduan langkah demi langkah yang lebih mendalam disediakan dalam panduan memulai.

Membuat asisten

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

Buat asisten dengan model dan instruksi.

Isi permintaan

Nama Tipe Wajib Deskripsi
model string Wajib Nama penyebaran model model yang akan digunakan.
nama string atau null Opsional Nama asisten. Panjang maksimum adalah 256 karakter.
description string atau null Opsional Penjabaran dari asisten. Panjang maksimum adalah 512 karakter.
petunjuk string atau null Opsional Instruksi sistem yang digunakan asisten. Panjang maksimum adalah 256.000 karakter.
alat array Opsional Default ke []. Daftar alat yang diaktifkan pada asisten. Mungkin ada maksimal 128 alat per asisten. Alat saat ini dapat dari jenis code_interpreter, atau function. Deskripsi function dapat maksimal 1.024 karakter.
file_ids array Opsional Default ke []. Daftar ID file yang dilampirkan ke asisten ini. Mungkin ada maksimal 20 file yang dilampirkan ke asisten. File diurutkan berdasarkan tanggal pembuatannya dalam urutan naik.
metadata peta Opsional Set 16 pasangan kunci-nilai yang dapat dilampirkan ke objek. Ini dapat berguna untuk menyimpan informasi tambahan tentang objek dalam format terstruktur. Kunci dapat memiliki panjang maksimal 64 karakter dan nilai dapat memiliki panjang maksimal 512 karakter.
suhu angka atau null Opsional Default ke 1. Menentukan suhu pengambilan sampel apa yang akan digunakan, antara 0 dan 2. Nilai yang lebih tinggi seperti 0,8 akan membuat output lebih acak, sementara nilai yang lebih rendah seperti 0,2 akan membuatnya lebih fokus dan deterministik.
top_p angka atau null Opsional Default ke 1. Alternatif untuk pengambilan sampel dengan suhu, yang disebut pengambilan sampel nukleus, di mana model mempertimbangkan hasil token dengan massa peluang top_p. Jadi 0,1 berarti hanya token yang terdiri dari 10% massa peluang teratas yang dipertimbangkan. Kami umumnya merekomendasikan untuk mengubah ini atau suhu tetapi tidak keduanya.
response_format string atau objek Opsional Menentukan format yang harus dihasilkan model. Kompatibel dengan GPT-4 Turbo dan semua model GPT-3.5 Turbo sejak gpt-3.5-turbo-1106. Mengatur parameter ini untuk { "type": "json_object" } mengaktifkan mode JSON, yang menjamin pesan yang dihasilkan model adalah JSON yang valid. Yang penting, saat menggunakan mode JSON, Anda juga harus menginstruksikan model untuk menghasilkan JSON sendiri menggunakan sistem atau pesan pengguna. Tanpa instruksi ini, model dapat menghasilkan aliran spasi kosong yang tidak berujung sampai pembuatan mencapai batas token, yang mengakibatkan permintaan yang berjalan lama dan tampaknya "macet". Selain itu, konten pesan dapat dipotong sebagian jika Anda menggunakan finish_reason="length", yang menunjukkan pembuatan terlampaui max_tokens atau percakapan melebihi panjang konteks maksimum.

Mengembalikan

Sebuah objek asisten .

Contoh permintaan buat asisten

from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-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"}]
)

Membuat file asisten

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

Buat file asisten dengan melampirkan File ke assistant.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten tempat file harus dilampirkan.

Badan permintaan

Nama Tipe Wajib Deskripsi
file_id string Wajib ID File (dengan purpose="assistants") yang harus digunakan asisten. Berguna untuk alat seperti code_interpreter yang dapat mengakses file.

Mengembalikan

Objek file asisten.

Contoh membuat permintaan file asisten

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

assistant_file = client.beta.assistants.files.create(
  assistant_id="asst_abc123",
  file_id="assistant-abc123"
)
print(assistant_file)

Mencantumkan asisten

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

Mengembalikan daftar semua asisten.

Parameter kueri

Parameter Tipe Wajib Deskripsi
limit Integer Opsional Batas jumlah objek yang akan dikembalikan. Batas dapat berkisar antara 1 dan 100, dan defaultnya adalah 20.
order string Opsional - Default ke desc Urutkan urutan menurut tanda waktu created_at objek. naik untuk urutan naik dan turun untuk urutan turun.
after string Opsional Kursor untuk digunakan dalam penomoran halaman. after adalah ID objek yang menentukan tempat Anda dalam daftar. Misalnya, jika Anda membuat permintaan daftar dan menerima 100 objek, berakhir dengan obj_foo, panggilan berikutnya dapat menyertakan after=obj_foo untuk mengambil halaman berikutnya dari daftar.
before string Opsional Kursor untuk digunakan dalam penomoran halaman. before adalah ID objek yang menentukan tempat Anda dalam daftar. Misalnya, jika Anda membuat permintaan daftar dan menerima 100 objek, berakhir dengan obj_foo, panggilan berikutnya dapat menyertakan before=obj_foo untuk mengambil halaman sebelumnya dari daftar.

Mengembalikan

Daftar objek asisten

Contoh asisten daftar

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

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

Mencantumkan file asisten

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

Mengembalikan daftar file asisten.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten tempat file berada.

Parameter kueri

Parameter Tipe Wajib Deskripsi
limit Integer Opsional Batas jumlah objek yang akan dikembalikan. Batas dapat berkisar antara 1 dan 100, dan defaultnya adalah 20.
order string Opsional - Default ke desc Urutkan urutan menurut tanda waktu created_at objek. naik untuk urutan naik dan turun untuk urutan turun.
after string Opsional Kursor untuk digunakan dalam penomoran halaman. after adalah ID objek yang menentukan tempat Anda dalam daftar. Misalnya, jika Anda membuat permintaan daftar dan menerima 100 objek, berakhir dengan obj_foo, panggilan berikutnya dapat menyertakan after=obj_foo untuk mengambil halaman berikutnya dari daftar.
before string Opsional Kursor untuk digunakan dalam penomoran halaman. before adalah ID objek yang menentukan tempat Anda dalam daftar. Misalnya, jika Anda membuat permintaan daftar dan menerima 100 objek, berakhir dengan obj_foo, panggilan berikutnya dapat menyertakan before=obj_foo untuk mengambil halaman sebelumnya dari daftar.

Mengembalikan

Daftar objek file asisten

Contoh file asisten daftar

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

assistant_files = client.beta.assistants.files.list(
  assistant_id="asst_abc123"
)
print(assistant_files)

Mengambil asisten

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

Mengambil asisten.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten yang akan diambil.

Kembali

Objek asisten yang cocok dengan ID yang ditentukan.

Contoh mengambil asisten

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

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

Mengambil file asisten

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

Mengambil file Asisten.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten tempat file berada.
file_id string Wajib ID file yang kita dapatkan

Mengembalikan

Objek file asisten yang cocok dengan ID yang ditentukan

Contoh mengambil file asisten

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

assistant_file = client.beta.assistants.files.retrieve(
  assistant_id="asst_abc123",
  file_id="assistant-abc123"
)
print(assistant_file)

Mengubah asisten

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

Memodifikasi asisten.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten tempat file berada.

Isi Permintaan

Parameter Tipe Wajib Deskripsi
model Opsional Nama penyebaran model model yang akan digunakan.
name string atau null Opsional Nama asisten. Panjang maksimum adalah 256 karakter.
description string atau null Opsional Penjabaran dari asisten. Panjang maksimum adalah 512 karakter.
instructions string atau null Opsional Instruksi sistem yang digunakan asisten. Panjang maksimum adalah 32768 karakter.
tools array Opsional Default ke []. Daftar alat yang diaktifkan pada asisten. Mungkin ada maksimal 128 alat per asisten. Alat bisa dari jenis code_interpreter, atau fungsi. Deskripsi function dapat maksimal 1.024 karakter.
file_ids array Opsional Default ke []. Daftar ID File yang dilampirkan ke asisten ini. Mungkin ada maksimal 20 file yang dilampirkan ke asisten. File diurutkan berdasarkan tanggal pembuatannya dalam urutan naik. Jika file sebelumnya dilampirkan ke daftar tetapi tidak muncul dalam daftar, file tersebut akan dihapus dari asisten.
metadata peta Opsional Set 16 pasangan kunci-nilai yang dapat dilampirkan ke objek. Ini dapat berguna untuk menyimpan informasi tambahan tentang objek dalam format terstruktur. Kunci dapat memiliki panjang maksimal 64 karakter dan nilai dapat memiliki panjang maksimal 512 karakter.

Kembali

Objek asisten yang dimodifikasi.

Contoh asisten modifikasi

client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-05-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
  file_ids=["assistant-abc123", "assistant-abc456"],
)

print(my_updated_assistant)

Hapus asisten

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

Menghapus asisten.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten tempat file berada.

Kembali

Status penghapusan.

Contoh asisten penghapusan

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

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

Menghapus file asisten

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

Menghapus file asisten.

Parameter jalur

Parameter Tipe Wajib Deskripsi
assistant_id string Wajib ID asisten tempat file berada.
file_id string Wajib ID file yang akan dihapus

Kembali

Status penghapusan file

Contoh file asisten penghapusan

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

deleted_assistant_file = client.beta.assistants.files.delete(
    assistant_id="asst_abc123",
    file_id="assistant-abc123"
)
print(deleted_assistant_file)

Referensi API unggahan file

Asisten menggunakan API yang sama untuk pengunggahan file sebagai penyempurnaan. Saat mengunggah file, Anda harus menentukan nilai yang sesuai untuk parameter tujuan.

Objek asisten

Bidang Jenis Deskripsi
id string Pengidentifikasi, yang dapat dirujuk di titik akhir API.
object string Jenis objek, yang selalu asisten.
created_at Integer Tanda waktu Unix (dalam detik) saat asisten dibuat.
name string atau null Nama asisten. Panjang maksimum adalah 256 karakter.
description string atau null Penjabaran dari asisten. Panjang maksimum adalah 512 karakter.
model string Nama nama penyebaran model yang akan digunakan.
instructions string atau null Instruksi sistem yang digunakan asisten. Panjang maksimum adalah 32768 karakter.
tools array Daftar alat yang diaktifkan pada asisten. Mungkin ada maksimal 128 alat per asisten. Alat bisa dari jenis code_interpreter, atau fungsi. Deskripsi function dapat maksimal 1.024 karakter.
file_ids array Daftar ID file yang dilampirkan ke asisten ini. Mungkin ada maksimal 20 file yang dilampirkan ke asisten. File diurutkan berdasarkan tanggal pembuatannya dalam urutan naik.
metadata peta Set 16 pasangan kunci-nilai yang dapat dilampirkan ke objek. Ini dapat berguna untuk menyimpan informasi tambahan tentang objek dalam format terstruktur. Kunci dapat memiliki panjang maksimal 64 karakter dan nilai dapat memiliki panjang maksimal 512 karakter.

Objek file asisten

Bidang Jenis Deskripsi
id string Pengidentifikasi, yang dapat dirujuk di titik akhir API.
object string Jenis objek, yang selalu assistant.file
created_at Integer Tanda waktu Unix (dalam detik) saat file asisten dibuat.
assistant_id string ID asisten tempat file dilampirkan.