Mengirimkan sekumpulan prompt dengan OpenAI Batch API - Amazon Bedrock

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengirimkan sekumpulan prompt dengan OpenAI Batch API

Anda dapat menjalankan tugas inferensi batch menggunakan OpenAICreate batch API dengan model Amazon BedrockOpenAI.

Anda dapat memanggil OpenAI Create batch API dengan cara berikut:

  • Buat permintaan HTTP dengan endpoint Amazon Bedrock Runtime.

  • Gunakan permintaan OpenAI SDK dengan titik akhir Amazon Bedrock Runtime.

Pilih topik untuk mempelajari lebih lanjut:

Model dan Wilayah yang didukung untuk API OpenAI batch

Anda dapat menggunakan OpenAI Create batch API dengan semua OpenAI model yang didukung di Amazon Bedrock dan di AWS Wilayah yang mendukung model ini. Untuk informasi selengkapnya tentang model dan wilayah yang didukung, lihatModel pondasi yang didukung di Amazon Bedrock.

Prasyarat untuk menggunakan API batch OpenAI

Untuk melihat prasyarat penggunaan operasi API OpenAI batch, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

OpenAI SDK
  • Otentikasi — OpenAI SDK hanya mendukung otentikasi dengan kunci Amazon Bedrock API. Buat kunci Amazon Bedrock API untuk mengautentikasi permintaan Anda. Untuk mempelajari kunci Amazon Bedrock API dan cara membuatnya, lihatBuat kunci Amazon Bedrock API untuk mengautentikasi dengan mudah ke Amazon Bedrock API.

  • Endpoint — Temukan titik akhir yang sesuai dengan AWS Wilayah yang akan digunakan di titik akhir dan kuota Amazon Bedrock Runtime. Jika Anda menggunakan AWS SDK, Anda mungkin hanya perlu menentukan kode wilayah dan bukan seluruh titik akhir saat menyiapkan klien.

  • Akses model — Minta akses ke model Amazon Bedrock yang mendukung fitur ini. Untuk informasi selengkapnya, lihat Menambah atau menghapus akses ke model foundation Amazon Bedrock.

  • Menginstal OpenAI SDK — Untuk informasi selengkapnya, lihat Pustaka dalam dokumentasi. OpenAI

  • File Batch JSONL yang diunggah ke S3 - Ikuti langkah-langkah di Siapkan file batch Anda dalam OpenAI dokumentasi untuk menyiapkan file batch Anda dengan format yang benar. Kemudian unggah ke bucket Amazon S3.

  • Izin IAM - Pastikan Anda memiliki identitas IAM berikut dengan izin yang tepat:

HTTP request

Buat pekerjaan OpenAI batch

Untuk detail tentang OpenAI Create batch API, lihat sumber daya berikut dalam OpenAI dokumentasi:

  • Buat batch - Detail permintaan dan respons.

  • Objek keluaran permintaan - Merinci bidang output yang dihasilkan dari pekerjaan batch. Lihat dokumentasi ini saat menafsirkan hasil di bucket S3 Anda.

Bentuk permintaan

Saat membentuk permintaan inferensi batch, perhatikan bidang dan nilai khusus Amazon BedROCK berikut:

Minta header
Minta parameter tubuh:
  • Endpoint — Harus. v1/chat/completions

  • input_file_id - Tentukan URI S3 dari file JSONL batch Anda.

Temukan hasil yang dihasilkan

Respons pembuatan menyertakan ID batch. Hasil dan pencatatan kesalahan pekerjaan inferensi batch ditulis ke folder S3 yang berisi file input. Hasilnya akan berada di folder dengan nama yang sama dengan ID batch, seperti pada struktur folder berikut:

---- {batch_input_folder} |---- {batch_input}.jsonl |---- {batch_id} |---- {batch_input}.jsonl.out |---- {batch_input}.jsonl.err

Untuk melihat contoh penggunaan OpenAI Create batch API dengan metode yang berbeda, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

OpenAI SDK (Python)

Untuk membuat pekerjaan batch dengan OpenAI SDK, lakukan hal berikut:

  1. Impor OpenAI SDK dan atur klien dengan bidang berikut:

    • base_url— Awali titik akhir Amazon Bedrock Runtime ke/openai/v1, seperti dalam format berikut:

      https://${bedrock-runtime-endpoint}/openai/v1
    • api_key— Tentukan kunci API Amazon Bedrock.

    • default_headers— Jika Anda perlu menyertakan header apa pun, Anda dapat memasukkannya sebagai pasangan kunci-nilai dalam objek ini. Anda juga dapat menentukan header di extra_headers saat melakukan panggilan API tertentu.

  2. Gunakan metode batches.create () dengan klien.

Sebelum menjalankan contoh berikut, ganti placeholder di bidang berikut:

  • api_key - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

  • X-Amzn-BedrockRoleArn — Ganti arn:aws:iam::123456789012:role/BatchServiceRole dengan peran layanan inferensi batch aktual yang Anda siapkan.

  • input_file_id - Ganti s3://amzn-s3-demo-bucket/openai-input.jsonl dengan URI S3 aktual tempat Anda mengunggah file JSONL batch Anda.

Contoh ini memanggil OpenAI Create batch job API us-west-2 dan menyertakan satu bagian dari metadata.

from openai import OpenAI client = OpenAI( base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1", api_key="$AWS_BEARER_TOKEN_BEDROCK", # Replace with actual API key default_headers={ "X-Amzn-Bedrock-RoleArn": "arn:aws:iam::123456789012:role/BatchServiceRole" # Replace with actual service role ARN } ) job = client.batches.create( input_file_id="s3://amzn-s3-demo-bucket/openai-input.jsonl", # Replace with actual S3 URI endpoint="/v1/chat/completions", completion_window="24h", metadata={ "description": "test input" }, extra_headers={ "X-Amzn-Bedrock-ModelId": "openai.gpt-oss-20b-1:0", } ) print(job)
HTTP request

Untuk membuat penyelesaian obrolan dengan permintaan HTTP langsung, lakukan hal berikut:

  1. Gunakan metode POST dan tentukan URL dengan mengawali titik akhir Amazon Bedrock Runtime ke/openai/v1/batches, seperti dalam format berikut:

    https://${bedrock-runtime-endpoint}/openai/v1/batches
  2. Tentukan AWS kredensional Anda atau kunci Amazon Bedrock API di header. Authorization

Sebelum menjalankan contoh berikut, pertama-tama ganti placeholder di bidang berikut:

  • Otorisasi - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

  • X-Amzn-BedrockRoleArn — Ganti arn:aws:iam::123456789012:role/BatchServiceRole dengan peran layanan inferensi batch aktual yang Anda siapkan.

  • input_file_id - Ganti s3://amzn-s3-demo-bucket/openai-input.jsonl dengan URI S3 aktual tempat Anda mengunggah file JSONL batch Anda.

Contoh berikut memanggil Create chat completion API us-west-2 dan menyertakan satu bagian dari metadata:

curl -X POST 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches' \ -H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK' \ -H 'Content-Type: application/json' \ -H 'X-Amzn-Bedrock-ModelId: openai.gpt-oss-20b-1:0' \ -H 'X-Amzn-Bedrock-RoleArn: arn:aws:iam::123456789012:role/BatchServiceRole' \ -d '{ "input_file_id": "s3://amzn-s3-demo-bucket/openai-input.jsonl", "endpoint": "/v1/chat/completions", "completion_window": "24h", "metadata": {"description": "test input"} }'

Mengambil pekerjaan OpenAI batch

Untuk detail tentang permintaan dan respons OpenAI Retrieve batch API, lihat Ambil batch.

Saat Anda membuat permintaan, Anda menentukan ID pekerjaan batch untuk mendapatkan informasi. Respons mengembalikan informasi tentang pekerjaan batch, termasuk nama file keluaran dan kesalahan yang dapat Anda cari di bucket S3 Anda.

Untuk melihat contoh penggunaan OpenAI Retrieve batch API dengan metode yang berbeda, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

OpenAI SDK (Python)

Untuk mengambil pekerjaan batch dengan OpenAI SDK, lakukan hal berikut:

  1. Impor OpenAI SDK dan atur klien dengan bidang berikut:

    • base_url— Awali titik akhir Amazon Bedrock Runtime ke/openai/v1, seperti dalam format berikut:

      https://${bedrock-runtime-endpoint}/openai/v1
    • api_key— Tentukan kunci API Amazon Bedrock.

    • default_headers— Jika Anda perlu menyertakan header apa pun, Anda dapat memasukkannya sebagai pasangan kunci-nilai dalam objek ini. Anda juga dapat menentukan header di extra_headers saat melakukan panggilan API tertentu.

  2. Gunakan metode batches.retrieve () dengan klien dan tentukan ID batch untuk mengambil informasi.

Sebelum menjalankan contoh berikut, ganti placeholder di bidang berikut:

  • api_key - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

  • batch_id — Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

Contoh ini memanggil OpenAI Retrieve batch job API us-west-2 pada pekerjaan batch yang ID-nyabatch_abc123.

from openai import OpenAI client = OpenAI( base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1", api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key ) job = client.batches.retrieve(batch_id="batch_abc123") # Replace with actual ID print(job)
HTTP request

Untuk mengambil pekerjaan batch dengan permintaan HTTP langsung, lakukan hal berikut:

  1. Gunakan metode GET dan tentukan URL dengan mengawali titik akhir Amazon Bedrock Runtime ke/openai/v1/batches/${batch_id}, seperti dalam format berikut:

    https://${bedrock-runtime-endpoint}/openai/v1/batches/batch_abc123
  2. Tentukan AWS kredensional Anda atau kunci Amazon Bedrock API di header. Authorization

Sebelum menjalankan contoh berikut, pertama-tama ganti placeholder di bidang berikut:

  • Otorisasi - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

  • batch_abc123 — Di jalur, ganti nilai ini dengan ID sebenarnya dari pekerjaan batch Anda.

Contoh berikut memanggil OpenAI Retrieve batch API us-west-2 pada pekerjaan batch yang ID-nyabatch_abc123.

curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123' \ -H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'

Daftar pekerjaan OpenAI batch

Untuk detail tentang permintaan dan respons API kumpulan OpenAI Daftar, lihat daftar kumpulan. Respons mengembalikan array informasi tentang pekerjaan batch Anda.

Saat Anda membuat permintaan, Anda dapat menyertakan parameter kueri untuk memfilter hasil. Respons mengembalikan informasi tentang pekerjaan batch, termasuk nama file keluaran dan kesalahan yang dapat Anda cari di bucket S3 Anda.

Untuk melihat contoh penggunaan API OpenAI daftar batch dengan metode yang berbeda, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

OpenAI SDK (Python)

Untuk membuat daftar pekerjaan batch dengan OpenAI SDK, lakukan hal berikut:

  1. Impor OpenAI SDK dan atur klien dengan bidang berikut:

    • base_url— Awali titik akhir Amazon Bedrock Runtime ke/openai/v1, seperti dalam format berikut:

      https://${bedrock-runtime-endpoint}/openai/v1
    • api_key— Tentukan kunci API Amazon Bedrock.

    • default_headers— Jika Anda perlu menyertakan header apa pun, Anda dapat memasukkannya sebagai pasangan kunci-nilai dalam objek ini. Anda juga dapat menentukan header di extra_headers saat melakukan panggilan API tertentu.

  2. Gunakan metode batches.list () dengan klien. Anda dapat menyertakan salah satu parameter opsional.

Sebelum menjalankan contoh berikut, ganti placeholder di bidang berikut:

  • api_key - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

Contoh ini memanggil API OpenAI List batch jobs us-west-2 dan menentukan batas 2 hasil yang akan dikembalikan.

from openai import OpenAI client = OpenAI( base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1", api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key ) job = client.batches.retrieve(batch_id="batch_abc123") # Replace with actual ID print(job)
HTTP request

Untuk membuat daftar pekerjaan batch dengan permintaan HTTP langsung, lakukan hal berikut:

  1. Gunakan metode GET dan tentukan URL dengan mengawali titik akhir Amazon Bedrock Runtime ke/openai/v1/batches, seperti dalam format berikut:

    https://${bedrock-runtime-endpoint}/openai/v1/batches

    Anda dapat menyertakan salah satu parameter kueri opsional.

  2. Tentukan AWS kredensional Anda atau kunci Amazon Bedrock API di header. Authorization

Sebelum menjalankan contoh berikut, pertama-tama ganti placeholder di bidang berikut:

  • Otorisasi - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

Contoh berikut memanggil OpenAI List batch API us-west-2 dan menentukan batas 2 hasil untuk kembali.

curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123' \ -H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'

Membatalkan pekerjaan OpenAI batch

Untuk detail tentang permintaan dan respons OpenAI Batalkan batch API, lihat Batalkan batch. Respons mengembalikan informasi tentang pekerjaan batch yang dibatalkan.

Saat Anda membuat permintaan, Anda menentukan ID pekerjaan batch yang ingin Anda batalkan.

Untuk melihat contoh penggunaan OpenAI Batalkan batch API dengan metode yang berbeda, pilih tab untuk metode pilihan Anda, lalu ikuti langkah-langkahnya:

OpenAI SDK (Python)

Untuk membatalkan pekerjaan batch dengan OpenAI SDK, lakukan hal berikut:

  1. Impor OpenAI SDK dan atur klien dengan bidang berikut:

    • base_url— Awali titik akhir Amazon Bedrock Runtime ke/openai/v1, seperti dalam format berikut:

      https://${bedrock-runtime-endpoint}/openai/v1
    • api_key— Tentukan kunci API Amazon Bedrock.

    • default_headers— Jika Anda perlu menyertakan header apa pun, Anda dapat memasukkannya sebagai pasangan kunci-nilai dalam objek ini. Anda juga dapat menentukan header di extra_headers saat melakukan panggilan API tertentu.

  2. Gunakan metode batches.cancel () dengan klien dan tentukan ID batch untuk mengambil informasi.

Sebelum menjalankan contoh berikut, ganti placeholder di bidang berikut:

  • api_key - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

  • batch_id — Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

Contoh ini memanggil OpenAI Cancel batch job API us-west-2 pada pekerjaan batch yang ID-nyabatch_abc123.

from openai import OpenAI client = OpenAI( base_url="https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1", api_key="$AWS_BEARER_TOKEN_BEDROCK" # Replace with actual API key ) job = client.batches.cancel(batch_id="batch_abc123") # Replace with actual ID print(job)
HTTP request

Untuk membatalkan pekerjaan batch dengan permintaan HTTP langsung, lakukan hal berikut:

  1. Gunakan metode POST dan tentukan URL dengan mengawali titik akhir Amazon Bedrock Runtime ke/openai/v1/batches/${batch_id}/cancel, seperti dalam format berikut:

    https://${bedrock-runtime-endpoint}/openai/v1/batches/batch_abc123/cancel
  2. Tentukan AWS kredensional Anda atau kunci Amazon Bedrock API di header. Authorization

Sebelum menjalankan contoh berikut, pertama-tama ganti placeholder di bidang berikut:

  • Otorisasi - Ganti $AWS_BEARER_TOKEN_BEDROCK dengan kunci API Anda yang sebenarnya.

  • batch_abc123 — Di jalur, ganti nilai ini dengan ID sebenarnya dari pekerjaan batch Anda.

Contoh berikut memanggil OpenAI Cancel batch API us-west-2 pada pekerjaan batch yang ID-nyabatch_abc123.

curl -X GET 'https://bedrock-runtime.us-west-2.amazonaws.com/openai/v1/batches/batch_abc123/cancel' \ -H 'Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK'