Bagikan melalui


Menggunakan kontainer Docker ringkasan lokal

Kontainer memungkinkan Anda untuk menghosting API Ringkasan pada infrastruktur Anda sendiri. Jika Anda memiliki persyaratan keamanan atau tata kelola data yang tidak dapat dipenuhi dengan memanggil Ringkasan dari jarak jauh, maka kontainer mungkin merupakan opsi yang baik.

Prasyarat

  • Jika Anda tidak memiliki langganan Azure, buat akun gratis.
  • Docker diinstal di komputer host. Docker harus dikonfigurasi agar kontainer dapat terhubung dengan dan mengirim data tagihan ke Azure.
    • Di Windows, Docker juga harus dikonfigurasi agar mendukung kontainer Linux.
    • Anda harus memiliki pemahaman dasar tentang konsep Docker.
  • Sumber daya Bahasa dengan tingkat harga gratis (F0) atau standar (S). Untuk kontainer yang terputus, tingkat DC0 diperlukan.

Mengumpulkan parameter yang diperlukan

Tiga parameter utama untuk semua kontainer Azure AI diperlukan. Syarat Lisensi Perangkat Lunak Microsoft harus ada dengan nilai terima. Kunci URI dan API Titik akhir juga diperlukan.

URI titik akhir

Nilai {ENDPOINT_URI} tersedia di halaman Ringkasan portal Azure sumber daya layanan Azure AI terkait. Buka halaman Gambaran Umum, arahkan mouse ke titik akhir, dan ikon Salin ke clipboard muncul. Salin dan gunakan titik akhir jika diperlukan.

Cuplikan layar yang menunjukkan pengumpulan URI titik akhir untuk digunakan nanti.

Kunci

Nilai {API_KEY} digunakan untuk memulai kontainer dan tersedia di halaman Kunci portal Azure dari sumber daya layanan Azure AI yang sesuai. Buka halaman Kunci, dan pilih ikon Salin ke clipboard.

Cuplikan layar yang menunjukkan cara mendapatkan salah satu dari dua kunci untuk digunakan nanti.

Penting

Kunci langganan ini digunakan untuk mengakses API layanan Azure AI Anda. Jangan bagikan kunci Anda. Simpan dengan aman. Misalnya, gunakan Azure Key Vault. Sebaiknya Anda meregenerasi kunci ini secara rutin. Hanya satu kunci yang diperlukan untuk melakukan panggilan API. Saat Anda meregenerasi kunci pertama, Anda dapat menggunakan kunci kedua untuk melanjutkan akses ke layanan.

Persyaratan dan rekomendasi komputer host

Host adalah komputer berbasis x64 yang menjalankan kontainer Docker. Ini bisa menjadi komputer lokal Anda atau layanan hosting Docker di Azure, seperti:

Tabel berikut menjelaskan spesifikasi minimum dan yang direkomendasikan untuk keterampilan kontainer ringkasan. Kombinasi CPU/memori yang tercantum adalah untuk input token 4000 (konsumsi percakapan adalah untuk semua aspek dalam permintaan yang sama).

Jenis Kontainer Jumlah inti CPU yang direkomendasikan Memori yang direkomendasikan Catatan
Kontainer CPU ringkasan 16 48 GB
Ringkasan kontainer GPU 2 24 GB Membutuhkan GPU Nvidia yang mendukung Cuda 11.8 dengan VRAM 16GB.

Inti CPU dan memori sesuai dengan pengaturan --cpus dan --memory, yang digunakan sebagai bagian dari perintah docker run.

Dapatkan gambar kontainer dengan docker pull

Gambar kontainer Ringkasan dapat ditemukan pada mcr.microsoft.com sindikat registri kontainer. Itu berada di dalam repositori azure-cognitive-services/textanalytics/ dan dinamai summarization. Nama gambar kontainer yang sepenuhnya memenuhi syarat adalah, mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization

Untuk menggunakan versi terbaru kontainer, Anda dapat menggunakan latest tag . Anda juga dapat menemukan daftar lengkap tag di MCR.

Gunakan perintah docker pull untuk mengunduh gambar kontainer dari Microsoft Container Registry.

docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu

untuk kontainer CPU,

docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:gpu

untuk kontainer GPU.

Tip

Anda dapat menggunakan perintah gambar docker untuk mencantumkan gambar kontainer yang diunduh. Misalnya, perintah berikut mencantumkan ID, repositori, dan tag dari setiap gambar kontainer yang diunduh, yang diformat sebagai tabel:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

Mengunduh model kontainer ringkasan

Prasyarat untuk menjalankan kontainer ringkasan adalah mengunduh model terlebih dahulu. Ini dapat dilakukan dengan menjalankan salah satu perintah berikut menggunakan gambar kontainer CPU sebagai contoh:

docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ExtractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=AbstractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ConversationSummarization billing={ENDPOINT_URI} apikey={API_KEY}

Tidak disarankan untuk mengunduh model untuk semua keterampilan di dalam yang sama HOST_MODELS_PATH, karena kontainer memuat semua model di dalam HOST_MODELS_PATH. Melakukannya akan menggunakan sejumlah besar memori. Disarankan untuk hanya mengunduh model untuk keterampilan yang Anda butuhkan dalam tertentu HOST_MODELS_PATH.

Untuk memastikan kompatibilitas antara model dan kontainer, unduh ulang model yang digunakan setiap kali Anda membuat kontainer menggunakan versi gambar baru. Saat menggunakan kontainer yang terputus, lisensi harus diunduh lagi setelah mengunduh model.

Jalankan kontainer dengan docker run

Setelah kontainer Ringkasan berada di komputer host, gunakan perintah berikut docker run untuk menjalankan kontainer. Kontainer akan terus berjalan hingga Anda menghentikannya. Ganti tempat penampung dengan nilai Anda:

Placeholder Nilai Format atau contoh
{HOST_MODELS_PATH} Pemasangan volume komputer host, yang digunakan Docker untuk mempertahankan model. Contohnya adalah c:\SummarizationModel tempat drive c:\ berada di komputer host.
{ENDPOINT_URI} Titik akhir untuk mengakses API ringkasan. Anda dapat menemukannya di halaman Kunci dan titik akhir sumber daya, di portal Azure. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} Kunci untuk sumber bahasa pemrogram Anda. Anda dapat menemukannya di halaman Kunci dan titik akhir sumber daya, di portal Azure. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
docker run -p 5000:5000 -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu eula=accept rai_terms=accept billing={ENDPOINT_URI} apikey={API_KEY}

Atau jika Anda menjalankan kontainer GPU, gunakan perintah ini sebagai gantinya.

docker run -p 5000:5000 --gpus all -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:gpu eula=accept rai_terms=accept billing={ENDPOINT_URI} apikey={API_KEY}

Jika ada lebih dari satu GPU pada komputer, ganti --gpus all dengan --gpus device={DEVICE_ID}.

Penting

  • Perintah docker di bagian berikut menggunakan garis miring terbalik, \, sebagai karakter kelanjutan baris. Ganti atau hapus ini berdasarkan persyaratan sistem operasi host Anda.
  • Opsi Eula, Billing, rai_terms dan ApiKey harus ditentukan untuk menjalankan kontainer; jika tidak, kontainer tidak akan dimulai. Untuk mengetahui informasi lebih lanjut, lihat Penagihan.

Perintah ini:

  • Menjalankan kontainer Ringkasan dari gambar kontainer
  • Mengalokasikan satu core CPU dan memori 4 gigabyte (GB)
  • Mengekspos port TCP 5000 dan mengalokasikan pseudo-TTY untuk kontainer
  • Menghapus kontainer secara otomatis setelah kontainer keluar. Gambar kontainer masih tersedia di komputer host.

Menjalankan beberapa kontainer pada host yang sama

Jika Anda berniat menjalankan beberapa kontainer dengan port yang terbuka, pastikan untuk menjalankan setiap kontainer dengan port terbuka yang berbeda. Misalnya, jalankan kontainer pertama pada port 5000 dan kontainer kedua pada port 5001.

Anda dapat memiliki kontainer ini dan kontainer layanan Azure AI yang berbeda yang berjalan di HOST bersama-sama. Anda juga dapat memiliki beberapa kontainer kontainer layanan Azure AI yang sama yang berjalan.

Mengkueri titik akhir prediksi kontainer

Kontainer menyediakan API titik akhir prediksi kueri berbasis REST.

Gunakan host, http://localhost:5000, untuk API kontainer.

Memvalidasi bahwa kontainer dapat dijalankan

Ada beberapa cara untuk memvalidasi bahwa kontainer sedang berjalan. Temukan alamat IP Eksternal dan port kontainer yang diekspos yang dimaksud, dan buka browser web favorit Anda. Gunakan berbagai URL permintaan yang mengikuti untuk memvalidasi bahwa kontainer sedang berjalan. Contoh URL permintaan yang tercantum di sini adalah http://localhost:5000, tetapi kontainer tertentu Anda mungkin bervariasi. Pastikan Anda mengandalkan port yang terekspos dan alamat IP Eksternal kontainer Anda.

URL Permintaan Tujuan
http://localhost:5000/ Kontainer menyediakan halaman beranda.
http://localhost:5000/ready Diminta dengan GET, URL ini memberikan verifikasi bahwa kontainer siap menerima kueri terhadap model. Permintaan ini dapat digunakan untuk penyelidikan keaktifan dan kesiapan Kubernetes.
http://localhost:5000/status Juga diminta dengan GET, ini memverifikasi apakah kunci-api yang digunakan untuk memulai kontainer yang valid tanpa menyebabkan kueri titik akhir. Permintaan ini dapat digunakan untuk penyelidikan keaktifan dan kesiapan Kubernetes.
http://localhost:5000/swagger Kontainer menyediakan serangkaian dokumentasi lengkap untuk titik akhir dan fitur Coba. Dengan fitur ini, Anda dapat memasukkan pengaturan Anda ke dalam formulir HTML berbasis web dan membuat kueri tanpa harus menulis kode apa pun. Setelah kueri ditampilkan, contoh perintah CURL disediakan untuk menunjukkan header dan format isi HTTP yang diperlukan.

Halaman beranda kontainer

Jalankan kontainer yang terputus dari internet

Untuk menggunakan kontainer ini yang terputus dari internet, Anda harus terlebih dahulu meminta akses dengan mengisi aplikasi, dan membeli rencana komitmen. Lihat Menggunakan kontainer Docker di lingkungan yang terputus untuk informasi selengkapnya.

Jika Anda telah disetujui untuk menjalankan kontainer yang terputus dari internet, gunakan contoh berikut menunjukkan pemformatan perintah yang docker run akan Anda gunakan, dengan nilai tempat penampung. Ganti nilai tempat penampung dengan nilai Anda sendiri.

Parameter DownloadLicense=True dalam perintah Anda docker run akan mengunduh file lisensi yang akan memungkinkan kontainer Docker Anda berjalan saat tidak terhubung ke internet. Ini juga berisi tanggal kedaluwarsa, setelah itu file lisensi akan tidak valid untuk menjalankan kontainer. Anda hanya dapat menggunakan file lisensi dengan kontainer yang sesuai tempat Anda disetujui. Misalnya, Anda tidak dapat menggunakan file lisensi untuk kontainer ucapan ke teks dengan kontainer Layanan bahasa.

Unduh ringkasan model kontainer yang terputus

Prasyarat untuk menjalankan kontainer ringkasan adalah mengunduh model terlebih dahulu. Ini dapat dilakukan dengan menjalankan salah satu perintah berikut menggunakan gambar kontainer CPU sebagai contoh:

docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ExtractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=AbstractiveSummarization billing={ENDPOINT_URI} apikey={API_KEY}
docker run -v {HOST_MODELS_PATH}:/models mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu downloadModels=ConversationSummarization billing={ENDPOINT_URI} apikey={API_KEY}

Tidak disarankan untuk mengunduh model untuk semua keterampilan di dalam yang sama HOST_MODELS_PATH, karena kontainer memuat semua model di dalam HOST_MODELS_PATH. Melakukannya akan menggunakan sejumlah besar memori. Disarankan untuk hanya mengunduh model untuk keterampilan yang Anda butuhkan dalam tertentu HOST_MODELS_PATH.

Untuk memastikan kompatibilitas antara model dan kontainer, unduh ulang model yang digunakan setiap kali Anda membuat kontainer menggunakan versi gambar baru. Saat menggunakan kontainer yang terputus, lisensi harus diunduh lagi setelah mengunduh model.

Jalankan kontainer yang terputus dengan docker run

Placeholder Nilai Format atau contoh
{IMAGE} Gambar kontainer yang ingin Anda gunakan. mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu
{LICENSE_MOUNT} Jalur di mana lisensi akan diunduh, dan dipasang. /host/license:/path/to/license/directory
{HOST_MODELS_PATH} Jalur tempat model diunduh, dan dipasang. /host/models:/models
{ENDPOINT_URI} Titik akhir untuk mengautentikasi permintaan layanan Anda. Anda dapat menemukannya di halaman Kunci dan titik akhir sumber daya, di portal Azure. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} Kunci untuk sumber daya Text Analytics Anda. Anda dapat menemukannya di halaman Kunci dan titik akhir sumber daya, di portal Azure. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{CONTAINER_LICENSE_DIRECTORY} Lokasi folder lisensi pada filesystem lokal kontainer. /path/to/license/directory
docker run --rm -it -p 5000:5000 \ 
-v {LICENSE_MOUNT} \
-v {HOST_MODELS_PATH} \
{IMAGE} \
eula=accept \
rai_terms=accept \
billing={ENDPOINT_URI} \
apikey={API_KEY} \
DownloadLicense=True \
Mounts:License={CONTAINER_LICENSE_DIRECTORY} 

Setelah file lisensi diunduh, Anda dapat menjalankan kontainer di lingkungan yang terputus. Contoh berikut menunjukkan pemformatan perintah yang docker run akan Anda gunakan, dengan nilai tempat penampung. Ganti nilai tempat penampung dengan nilai Anda sendiri.

Di mana pun kontainer dijalankan, file lisensi harus dipasang ke kontainer dan lokasi folder lisensi pada sistem file lokal kontainer harus ditentukan dengan Mounts:License=. Mount output juga harus ditentukan sehingga catatan penggunaan penagihan dapat ditulis.

Placeholder Nilai Format atau contoh
{IMAGE} Gambar kontainer yang ingin Anda gunakan. mcr.microsoft.com/azure-cognitive-services/textanalytics/summarization:cpu
{MEMORY_SIZE} Ukuran memori yang sesuai untuk dialokasikan untuk kontainer Anda. 4g
{NUMBER_CPUS} Jumlah CPU yang sesuai untuk dialokasikan untuk kontainer Anda. 4
{LICENSE_MOUNT} Jalur di mana lisensi akan berada dan dipasang. /host/license:/path/to/license/directory
{HOST_MODELS_PATH} Jalur tempat model diunduh, dan dipasang. /host/models:/models
{OUTPUT_PATH} Jalur output untuk mencatat catatan penggunaan. /host/output:/path/to/output/directory
{CONTAINER_LICENSE_DIRECTORY} Lokasi folder lisensi pada filesystem lokal kontainer. /path/to/license/directory
{CONTAINER_OUTPUT_DIRECTORY} Lokasi folder output pada filesystem lokal kontainer. /path/to/output/directory
docker run --rm -it -p 5000:5000 --memory {MEMORY_SIZE} --cpus {NUMBER_CPUS} \ 
-v {LICENSE_MOUNT} \ 
-v {HOST_MODELS_PATH} \
-v {OUTPUT_PATH} \
{IMAGE} \
eula=accept \
rai_terms=accept \
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
Mounts:Output={CONTAINER_OUTPUT_DIRECTORY}

Menghentikan kontainer

Untuk mematikan kontainer, di lingkungan baris perintah tempat kontainer berjalan, pilih Ctrl+C.

Pemecahan Masalah

Jika Anda menjalankan kontainer dengan pemasangan output dan pengelogan diaktifkan, kontainer membuat file log yang berguna untuk memecahkan masalah yang terjadi saat memulai atau menjalankan kontainer.

Tip

Untuk informasi dan panduan pemecahan masalah selengkapnya, lihat Tanya Jawab Umum (FAQ) kontainer Azure AI.

Billing

Kontainer ringkasan mengirim informasi penagihan ke Azure, menggunakan sumber daya Bahasa di akun Azure Anda.

Kueri ke kontainer ditagih pada tingkat harga sumber daya Azure yang digunakan untuk ApiKey parameter.

Kontainer layanan Azure AI tidak dilisensikan untuk dijalankan tanpa tersambung ke titik akhir pengukuran atau penagihan. Anda harus mengaktifkan kontainer untuk mengomunikasikan informasi tagihan dengan titik akhir penagihan setiap saat. Kontainer layanan Azure AI tidak mengirim data pelanggan, seperti gambar atau teks yang sedang dianalisis, ke Microsoft.

Hubungkan ke Azure

Kontainer memerlukan nilai argumen penagihan untuk berjalan. Nilai-nilai ini memungkinkan kontainer tersambung ke titik akhir penagihan. Kontainer melaporkan penggunaan sekitar setiap 10 hingga 15 menit. Jika kontainer tidak tersambung ke Azure dalam jendela waktu yang diizinkan, kontainer terus berjalan tetapi tidak melayani kueri hingga titik akhir penagihan dipulihkan. Koneksi dicoba 10 kali pada interval waktu yang sama, 10 hingga 15 menit. Jika tidak dapat tersambung ke titik akhir penagihan dalam 10 percobaan, kontainer berhenti melayani permintaan. Lihat FAQ kontainer layanan Azure AI untuk contoh informasi yang dikirim ke Microsoft untuk penagihan.

Argumen penagihan

Perintah docker run akan memulai kontainer ketika ketiga opsi berikut disediakan dengan nilai yang valid:

Opsi Deskripsi
ApiKey Kunci API sumber daya layanan Azure AI yang digunakan untuk melacak informasi penagihan.
Nilai opsi ini harus diatur ke kunci API untuk resource yang disediakan yang ditentukan dalam Billing.
Billing Titik akhir sumber daya layanan Azure AI yang digunakan untuk melacak informasi penagihan.
Nilai opsi ini harus diatur ke URI titik akhir dari sumber daya Azure yang disediakan.
Eula Menunjukkan bahwa Anda menerima lisensi untuk kontainer.
Nilai opsi ini harus diatur untuk menerima.

Untuk informasi selengkapnya tentang opsi ini, lihat Konfigurasikan kontainer.

Ringkasan

Dalam artikel ini, Anda mempelajari konsep dan alur kerja untuk mengunduh, menginstal, dan menjalankan kontainer ringkasan. Singkatnya:

  • Ringkasan menyediakan kontainer Linux untuk Docker
  • Gambar kontainer diunduh dari Microsoft Container Registry (MCR).
  • Gambar kontainer dijalankan di Docker.
  • Anda harus menentukan informasi tagihan saat membuat instans kontainer.

Penting

Kontainer ini tidak dilisensikan untuk berjalan tanpa terhubung ke Azure untuk pengukuran. Pelanggan harus mengaktifkan kontainer untuk mengomunikasikan informasi tagihan dengan layanan pengukuran setiap saat. Kontainer Azure AI tidak mengirim data pelanggan (misalnya teks yang sedang dianalisis) ke Microsoft.

Langkah berikutnya