Konuşma hizmeti kapsayıcılarını yapılandırma
Konuşma kapsayıcıları, müşterilerin hem güçlü bulut özelliklerinden hem de uç yerelliğinden yararlanmak için iyileştirilmiş tek bir konuşma uygulaması mimarisi oluşturmasına olanak tanır.
Konuşma kapsayıcısı çalışma zamanı ortamı, komut bağımsız değişkenleri kullanılarak docker run
yapılandırılır. Bu kapsayıcının bazı gerekli ve isteğe bağlı ayarları vardır. Kapsayıcıya özgü ayarlar faturalama ayarlarıdır.
Yapılandırma ayarları
Kapsayıcı aşağıdaki yapılandırma ayarlarına sahiptir:
Zorunlu | Ayar | Purpose |
---|---|---|
Yes | ApiKey | Fatura bilgilerini izler. |
Hayır | ApplicationInsights | Kapsayıcınıza Azure Uygulaması Lication Insights telemetri desteği eklenmesini sağlar. |
Yes | Faturalandırma | Azure'daki hizmet kaynağının uç nokta URI'sini belirtir. |
Yes | Eula | Kapsayıcının lisansını kabul ettiğinizi gösterir. |
Hayır | Fluentd | Günlük ve isteğe bağlı olarak ölçüm verilerini Fluentd sunucusuna yazar. |
Hayır | HTTP Ara Sunucusu | Giden istekler yapmak için bir HTTP ara sunucusu yapılandırılır. |
Hayır | Günlüğe kaydetme | Kapsayıcınız için ASP.NET Core günlük kaydı desteği sağlar. |
Hayır | Bağlar | Konak bilgisayardan kapsayıcıya ve kapsayıcıdan ana bilgisayara verileri okur ve yazar. |
Önemli
ApiKey
, Billing
ve Eula
ayarları birlikte kullanılır ve üçü için de geçerli değerler sağlamanız gerekir; aksi takdirde kapsayıcınız başlatılmaz. Kapsayıcı örneği oluşturmak için bu yapılandırma ayarlarını kullanma hakkında daha fazla bilgi için bkz . Faturalama.
ApiKey yapılandırma ayarı
ayarı, ApiKey
kapsayıcının faturalama bilgilerini izlemek için kullanılan Azure kaynak anahtarını belirtir. ApiKey için bir değer belirtmeniz ve değerin yapılandırma ayarı için belirtilen Konuşma kaynağı için Billing
geçerli bir anahtar olması gerekir.
Bu ayar aşağıdaki yerde bulunabilir:
- Azure portalı: Konuşma Kaynağı Yönetimi, Anahtarlar altında
ApplicationInsights ayarı
Bu ApplicationInsights
ayar kapsayıcınıza Azure Uygulaması lication Insights telemetri desteği eklemenize olanak tanır. Application Insights kapsayıcınızın derinlemesine izlenmesini sağlar. Kullanılabilirlik, performans ve kullanım için kapsayıcınızı kolayca izleyebilirsiniz. Ayrıca kapsayıcınızdaki hataları hızla belirleyebilir ve tanılayabilirsiniz.
Aşağıdaki tabloda, bölümü altında ApplicationInsights
desteklenen yapılandırma ayarları açıklanmaktadır.
Zorunlu | Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|---|
Hayır | InstrumentationKey |
String | Kapsayıcı için telemetri verilerinin gönderildiği Application Insights örneğinin izleme anahtarı. Daha fazla bilgi için bkz . ASP.NET Core için Application Insights. Örnek: InstrumentationKey=123456789 |
Faturalama yapılandırma ayarı
ayarı, Billing
kapsayıcının faturalama bilgilerini ölçerken kullanılan Azure'daki Konuşma kaynağının uç nokta URI'sini belirtir. Bu yapılandırma ayarı için bir değer belirtmeniz ve değerin Azure'daki konuşma kaynağı için geçerli bir uç nokta URI'si olması gerekir. Kapsayıcı yaklaşık 10-15 dakikada bir kullanımı bildirir.
Bu ayar aşağıdaki yerde bulunabilir:
- Azure portalı: Konuşmaya genel bakış sayfasında etiketlenmiştir
Endpoint
Zorunlu | Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|---|
Yes | Billing |
String | Faturalama uç noktası URI'si. Faturalama URI'sini alma hakkında daha fazla bilgi için bkz . faturalama. Daha fazla bilgi ve bölgesel uç noktaların tam listesi için bkz . Azure AI hizmetleri için özel alt etki alanı adları. |
Eula ayarı
Eula
ayarı, kapsayıcının lisansını kabul ettiğinizi gösterir. Bu yapılandırma ayarı için bir değer belirtmelisiniz ve değeri olarak ayarlanmalıdır accept
.
Zorunlu | Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|---|
Yes | Eula |
String | Lisans kabulü Örnek: Eula=accept |
Azure yapay zeka hizmetleri kapsayıcıları, Azure kullanımınızı yöneten sözleşmeniz kapsamında lisanslandırılır. Azure kullanımınızı yöneten mevcut bir sözleşmeniz yoksa, Azure kullanımını düzenleyen sözleşmenizin, Çevrimiçi Hizmetler Koşulları'nı içeren Microsoft Çevrimiçi Abonelik Sözleşmesi olduğunu kabul edersiniz. Önizlemeler için Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları'nı da kabul edersiniz. Kapsayıcıyı kullanarak bu koşulları kabul etmiş olursunuz.
Fluentd ayarları
Fluentd, birleşik günlük kaydı için açık kaynak bir veri toplayıcıdır. Ayarlar kapsayıcının Fluentd
Fluentd sunucusuyla bağlantısını yönetir. Kapsayıcı, kapsayıcınızın fluentd sunucusuna günlükleri ve isteğe bağlı olarak ölçüm verilerini yazmasına olanak tanıyan bir Fluentd günlük sağlayıcısı içerir.
Aşağıdaki tabloda, bölümü altında Fluentd
desteklenen yapılandırma ayarları açıklanmaktadır.
Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|
Host |
String | Fluentd sunucusunun IP adresi veya DNS ana bilgisayar adı. |
Port |
Tamsayı | Fluentd sunucusunun bağlantı noktası. Varsayılan değer 24224'dür. |
HeartbeatMs |
Tamsayı | Milisaniye cinsinden sinyal aralığı. Bu süre dolmadan önce hiçbir olay trafiği gönderilmediyse Fluentd sunucusuna bir sinyal gönderilir. Varsayılan değer 60000 milisaniyedir (1 dakika). |
SendBufferSize |
Tamsayı | Gönderme işlemleri için ayrılan bayt cinsinden ağ arabelleği alanı. Varsayılan değer 32768 bayttır (32 kilobayt). |
TlsConnectionEstablishmentTimeoutMs |
Tamsayı | Fluentd sunucusuyla SSL/TLS bağlantısı kurmak için milisaniye cinsinden zaman aşımı. Varsayılan değer 10000 milisaniyedir (10 saniye). false olarak ayarlanırsa UseTLS , bu değer yoksayılır. |
UseTLS |
Boolean | Kapsayıcının Fluentd sunucusuyla iletişim kurmak için SSL/TLS kullanıp kullanmayacağını gösterir. Varsayılan değer olarak yanlış kullanılır. |
HTTP proxy kimlik bilgileri ayarları
Giden istekler yapmak için bir HTTP ara sunucusu yapılandırmanız gerekiyorsa, şu iki bağımsız değişkeni kullanın:
Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|
HTTP_PROXY | Dize | Kullanılacak ara sunucu, örneğin, http://proxy:8888 <proxy-url> |
HTTP_PROXY_CREDS | Dize | Proxy'de kimlik doğrulaması yapmak için gereken tüm kimlik bilgileri, örneğin, username:password . Bu değer küçük harfle yazılmalıdır. |
<proxy-user> |
Dize | Ara sunucu için kullanıcı. |
<proxy-password> |
Dize | Ara sunucu için ile <proxy-user> ilişkilendirilmiş parola. |
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
HTTP_PROXY=<proxy-url> \
HTTP_PROXY_CREDS=<proxy-user>:<proxy-password> \
Günlüğe kaydetme ayarları
Ayarlar Logging
, kapsayıcınız için ASP.NET Core günlük desteğini yönetir. Kapsayıcınız için bir ASP.NET Core uygulaması için kullandığınız yapılandırma ayarlarını ve değerlerini kullanabilirsiniz.
Aşağıdaki günlük sağlayıcıları kapsayıcı tarafından desteklenir:
Provider | Purpose |
---|---|
Konsol | ASP.NET Core Console günlük sağlayıcısı. Bu günlük sağlayıcısı için tüm ASP.NET Core yapılandırma ayarları ve varsayılan değerler desteklenir. |
Hata Ayıklama | ASP.NET Core Debug günlük sağlayıcısı. Bu günlük sağlayıcısı için tüm ASP.NET Core yapılandırma ayarları ve varsayılan değerler desteklenir. |
Disk | JSON günlük sağlayıcısı. Bu günlük sağlayıcısı günlük verilerini çıkış bağlamasına yazar. |
Bu kapsayıcı komutu, günlük bilgilerini JSON biçiminde çıkış bağlamasına depolar:
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output
Bu kapsayıcı komutu, kapsayıcı çalışırken ile ön ekli dbug
hata ayıklama bilgilerini gösterir:
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Console:LogLevel:Default=Debug
Disk günlüğü
Günlük Disk
sağlayıcısı aşağıdaki yapılandırma ayarlarını destekler:
Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|
Format |
String | Günlük dosyalarının çıkış biçimi. Not: Günlük sağlayıcısını json etkinleştirmek için bu değer olarak ayarlanmalıdır. Bu değer kapsayıcı örneği oluşturulurken çıkış bağlaması belirtilmeden belirtilirse bir hata oluşur. |
MaxFileSize |
Tamsayı | Günlük dosyasının megabayt (MB) cinsinden en büyük boyutu. Geçerli günlük dosyasının boyutu bu değeri karşıladığında veya aştığında, günlük sağlayıcısı tarafından yeni bir günlük dosyası başlatılır. -1 belirtilirse, günlük dosyasının boyutu yalnızca çıktı bağlaması için en büyük dosya boyutuyla (varsa) sınırlıdır. Varsayılan değer 1 şeklindedir. |
ASP.NET Core günlük kaydını yapılandırma hakkında daha fazla bilgi için bkz . Ayarlar dosya yapılandırması.
Bağlama ayarları
Kapsayıcıya ve kapsayıcıdan veri okumak ve yazmak için bağlama bağlamalarını kullanın. Docker run komutunda seçeneğini belirterek --mount
bir giriş bağlaması veya çıkış bağlaması belirtebilirsiniz.
Standart Konuşma kapsayıcıları, eğitim veya hizmet verilerini depolamak için giriş veya çıkış bağlamaları kullanmaz. Ancak, özel konuşma kapsayıcıları birim bağlamalarına dayanır.
Konak bağlama konumunun tam söz dizimi, konak işletim sistemine bağlı olarak değişir. Ayrıca, docker hizmet hesabı tarafından kullanılan izinlerle ana bilgisayar bağlama konumu izinleri arasındaki çakışma nedeniyle ana bilgisayarın bağlama konumuna erişilemiyor olabilir.
İsteğe bağlı | Veri Akışı Adı | Veri türü | Açıklama |
---|---|---|---|
İzin verilmiyor | Input |
String | Standart Konuşma kapsayıcıları bunu kullanmaz. Özel konuşma kapsayıcıları birim bağlamalarını kullanır. |
İsteğe bağlı | Output |
String | Çıkış bağlamasının hedefi. Varsayılan değer şudur: /output . Bu, günlüklerin konumudur. Buna kapsayıcı günlükleri dahildir. Örnek: --mount type=bind,src=c:\output,target=/output |
Birim bağlama ayarları
Özel konuşma kapsayıcıları, özel modelleri kalıcı hale getirmek için birim bağlamalarını kullanır. Docker run komutuna -v
(veya --volume
) seçeneğini ekleyerek bir birim bağlaması belirtebilirsiniz.
Not
Birim bağlama ayarları yalnızca metin kapsayıcılarına özel konuşma için geçerlidir.
Özel modeller, özel konuşma kapsayıcısı docker run
komutunun bir parçası olarak yeni bir model ilk kez alınışında indirilir. Özel konuşma kapsayıcısı için aynı ModelId
sıralı çalıştırmalar, daha önce indirilen modeli kullanır. Birim bağlaması sağlanmamışsa, özel modeller kalıcı olamaz.
Birim bağlama ayarı üç renkle :
ayrılmış alandan oluşur:
- İlk alan, konak makinedeki birimin adıdır, örneğin C:\input.
- İkinci alan kapsayıcıdaki dizindir, örneğin /usr/local/models.
- Üçüncü alan (isteğe bağlı) virgülle ayrılmış bir seçenek listesidir. Daha fazla bilgi için bkz . birimleri kullanma.
C:\input dizinini kapsayıcılar /usr/local/models dizinine bağlayan bir birim bağlama örneği aşağıda verilmiştir.
-v C:\input:/usr/local/models