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. |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk