Bagikan melalui


Gunakan kontainer Docker deteksi bahasa lokal

Kontainer memungkinkan Anda untuk meng-hosting API Deteksi Bahasa pada infrastruktur Anda sendiri. Jika Anda memiliki persyaratan keamanan atau tata kelola data yang tidak dapat dipenuhi dengan menghubungi Deteksi Bahasa dari jarak jauh, maka kontainer mungkin merupakan pilihan yang baik.

Prasyarat

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 kontainer deteksi bahasa. Setiap inti CPU harus setidaknya 2,6 gigahertz (GHz) atau lebih cepat. Transaksi Per Detik (TPS) yang diperbolehkan juga dicantumkan.

Spesifikasi host minimum Spesifikasi host yang direkomendasikan TPS minimum TPS maksimum
Deteksi bahasa 1 inti, memori 5GB 1 inti, memori 8GB 15 30

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 Deteksi Bahasa dapat ditemukan pada mcr.microsoft.com sindikat registri kontainer. Itu berada di dalam repositori azure-cognitive-services/textanalytics/ dan dinamai language. Nama gambar kontainer yang sepenuhnya memenuhi syarat adalah, mcr.microsoft.com/azure-cognitive-services/textanalytics/language

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/language:latest

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>

Jalankan kontainer dengan docker run

Setelah kontainer berada di komputer host, gunakan perintah jalankan docker untuk menjalankan kontainer. Kontainer akan terus berjalan hingga Anda menghentikannya.

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, dan ApiKey harus ditentukan untuk menjalankan kontainer; jika tidak, kontainer tidak akan dimulai. Untuk mengetahui informasi lebih lanjut, lihat Penagihan.

Untuk menjalankan kontainer Deteksi Bahasa, jalankan perintah docker run berikut. Ganti tempat penampung dengan nilai Anda:

Placeholder Nilai Format atau contoh
{API_KEY} Kunci untuk sumber bahasa pemrogram Anda. Anda dapat menemukannya di halaman Kunci dan titik akhir sumber daya, di portal Azure. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Titik akhir untuk mengakses API deteksi bahasa. Anda dapat menemukannya di halaman Kunci dan titik akhir sumber daya, di portal Azure. https://<your-custom-subdomain>.cognitiveservices.azure.com
docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/textanalytics/language \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Perintah ini:

  • Menjalankan kontainer Deteksi Bahasa 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 Kecerdasan Dokumen.

Placeholder Nilai Format atau contoh
{IMAGE} Gambar kontainer yang ingin Anda gunakan. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{LICENSE_MOUNT} Jalur di mana lisensi akan diunduh, dan dipasang. /host/license:/path/to/license/directory
{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} \
{IMAGE} \
eula=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/form-recognizer/invoice
{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
{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 {OUTPUT_PATH} \
{IMAGE} \
eula=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 pendeteksi bahasa mengirimkan informasi tagihan 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, memasang, dan menjalankan kontainer deteksi bahasa. Singkatnya:

  • Deteksi bahasa 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