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
- 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).
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.
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.
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:
- Azure Kubernetes Service.
- Azure Container Instances.
- Kluster Kubernetes yang disebarkan ke Azure Stack. Untuk mengetahui informasi selengkapnya, lihat Menyebarkan Kube ke Azure Stack.
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
, danApiKey
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. |
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
- Lihat Mengonfigurasi kontainer untuk pengaturan konfigurasi.