Düzenle

Aracılığıyla paylaş


Temel OpenAI uçtan uca sohbet başvuru mimarisi

Azure OpenAI Service
Azure Machine Learning
Azure App Service
Azure Key Vault
Azure Monitor

Kurumsal sohbet uygulamaları, konuşma etkileşimi aracılığıyla çalışanları güçlendirebilir. Bu durum özellikle OpenAI'nin GPT modelleri ve Meta'nın LLaMA modelleri gibi dil modellerinin sürekli ilerlemesi nedeniyle geçerlidir. Bu sohbet uygulamaları bir sohbet kullanıcı arabiriminden (UI), kullanıcının sorgularıyla ilgili etki alanına özgü bilgiler içeren veri depolarından, ilgili bir yanıt üretmek için etki alanına özgü veriler üzerinde neden olan dil modellerinden ve bu bileşenler arasındaki etkileşimi denetleyan bir düzenleyiciden oluşur.

Bu makalede, Azure OpenAI Hizmeti dil modellerini kullanan kurumsal sohbet uygulamaları oluşturmak ve dağıtmak için temel bir mimari sağlanır. Mimaride yürütülebilir akışlar oluşturmak için Azure Machine Learning istem akışı kullanılmaktadır. Bu yürütülebilir akışlar, gelen istemlerden veri depolarına giden iş akışını düzenleyerek dil modellerinin temel verilerini ve diğer gerekli Python mantığını getirir. Yürütülebilir akış, yönetilen çevrimiçi uç noktanın arkasındaki bir Machine Learning işlem kümesine dağıtılır.

Özel sohbet kullanıcı arabiriminin (UI) barındırılması, Azure Uygulaması Hizmetleri'nde güvenli, alanlar arası yedekli ve yüksek oranda kullanılabilir bir web uygulaması dağıtmak için temel uygulama hizmetleri web uygulaması kılavuzunu izler. Bu mimaride App Service, özel uç noktalar üzerinden sanal ağ tümleştirmesi aracılığıyla Hizmet olarak Azure platformu (PaaS) çözümüyle iletişim kurar. Sohbet UI App Service, akışın yönetilen çevrimiçi uç noktasıyla özel bir uç nokta üzerinden iletişim kurar. Machine Learning çalışma alanına genel erişim devre dışı bırakıldı.

Önemli

Makalede temel App Service web uygulamasından alınan bileşenler veya mimari kararları ele alınmıyor. Sohbet kullanıcı arabirimini barındırma hakkında mimari rehberlik için bu makaleyi okuyun.

Machine Learning çalışma alanı, tüm giden bağlantıların onaylanmasını gerektiren yönetilen sanal ağ yalıtımıyla yapılandırılır. Bu yapılandırmayla, iş yeri Azure Depolama, Azure Container Registry ve Azure OpenAI gibi özel kaynaklara bağlantı sağlayan yönetilen özel uç noktaların yanı sıra yönetilen bir sanal ağ oluşturulur. Bu özel bağlantılar akış yazma ve test sırasında ve Machine Learning işlemlerinde dağıtılan akışlar tarafından kullanılır.

İpucu

GitHub logosu. Bu makale, Azure'da temel bir uçtan uca sohbet uygulamasını gösteren bir başvuru uygulaması tarafından desteklenmiştir. Bu uygulamayı, üretime yönelik ilk adımınızda özel çözüm geliştirme için temel olarak kullanabilirsiniz.

Mimari

OpenAI ile temel uçtan uca sohbet mimarisini gösteren diyagram.

Bu mimarinin bir Visio dosyasını indirin.

Bileşenler

Sohbet kullanıcı arabirimini barındırmak için kullandığınız yöntem her iki mimaride de aynı olduğundan, bu mimarinin bileşenlerinin çoğu temel App Service web uygulaması mimarisindeki kaynaklarla aynıdır. Bu bölümde vurgulanan bileşenler sohbet akışları, veri hizmetleri ve dil modellerini kullanıma sunan hizmetler oluşturmak ve yönetmek için kullanılan bileşenlere odaklanır.

  • Machine Learning , makine öğrenmesi modellerini eğitmek, dağıtmak ve yönetmek için kullanabileceğiniz yönetilen bir bulut hizmetidir. Bu mimaride, dil modelleri tarafından desteklenen yapay zeka uygulamaları için yürütülebilir akışlar geliştirmek ve dağıtmak için kullanılan Machine Learning'in diğer birkaç özelliği kullanılır:

    • Machine Learning istem akışı , kullanıcı istemlerini, Python kodu aracılığıyla eylemleri ve dil öğrenmesi modellerine çağrıları bağlayan akışlar oluşturmak, değerlendirmek ve dağıtmak için kullanabileceğiniz bir geliştirme aracıdır. İstem akışı, istem, farklı veri depoları ve dil modeli arasında akışı düzenleyen katman olarak bu mimaride kullanılır.

    • Yönetilen çevrimiçi uç noktalar , gerçek zamanlı çıkarım için bir akış dağıtmanıza olanak tanır. Bu mimaride, Machine Learning tarafından barındırılan istem akışlarını çağırmak için sohbet kullanıcı arabirimi için PaaS uç noktası olarak kullanılır.

  • Depolama, istem akışı geliştirme için istem akışı kaynak dosyalarını kalıcı hale getirmek için kullanılır.

  • Container Registry , kapsayıcı görüntülerini ve yapıtlarını her tür kapsayıcı dağıtımı için özel bir kayıt defterinde oluşturmanıza, depolamanıza ve yönetmenize olanak tanır. Bu mimaride akışlar kapsayıcı görüntüleri olarak paketlenir ve Container Registry'de depolanır.

  • Azure OpenAI , GPT-4, GPT-3.5-Turbo ve ekleme modelleri de dahil olmak üzere Azure OpenAI'nin dil modellerine REST API erişimi sağlayan tam olarak yönetilen bir hizmettir. Bu mimaride model erişimine ek olarak sanal ağ ve özel bağlantı, yönetilen kimlik desteği ve içerik filtreleme gibi yaygın kurumsal özellikleri eklemek için kullanılır.

  • Azure AI Search, tam metin arama, anlamsal arama, vektör araması ve karma aramayı destekleyen bir bulut arama hizmetidir. Yapay Zeka Arama, sohbet uygulamalarının arkasındaki akışlarda kullanılan ortak bir hizmet olduğundan mimariye dahildir. AI Search, kullanıcı sorguları için uygun verileri almak ve dizine eklemek için kullanılabilir. İstem akışı, istemden uygun sorguyu ayıklamak, AI Arama'yı sorgulamak ve sonuçları Azure OpenAI modeli için temel veri olarak kullanmak için RAG Alma Artırılmış Oluşturma desenini uygular.

Machine Learning istem akışı

Kurumsal sohbet uygulamalarının arka ucu genellikle aşağıdaki akışa benzer bir desen izler:

  • Kullanıcı özel sohbet kullanıcı arabirimine (UI) bir istem girer.
  • Bu istem, arabirim kodu tarafından arka uca gönderilir.
  • Soru veya yönerge gibi kullanıcı amacı, arka uç tarafından isteminden ayıklanır.
  • İsteğe bağlı olarak, arka uç, kullanıcı istemiyle ilgili verileri barındıran veri depolarını belirler
  • Arka uç, ilgili veri depolarını sorgular.
  • Arka uç amacı, ilgili temel verileri ve istemde sağlanan tüm geçmişleri dil modeline gönderir.
  • Arka uç, kullanıcı arabiriminde görüntülenebilmesi için sonucu döndürür.

Arka uç, herhangi bir sayıda dilde uygulanabilir ve çeşitli Azure hizmetlerine dağıtılabilir. Bu mimari, istemler, arka uç veri depoları ve dil modelleri arasında düzenlenmiş akışlar oluşturmak, test etmek ve dağıtmak için kolaylaştırılmış bir deneyim sağladığından Machine Learning istem akışını kullanır.

Akış çalışma zamanlarını iste

Machine Learning doğrudan iki tür istem akışı çalışma zamanı barındırabilir.

  • Otomatik çalışma zamanı: İşlemin yaşam döngüsü ve performans özelliklerini yöneten ve ortamın akış temelli özelleştirmesine olanak tanıyan sunucusuz işlem seçeneği.

  • İşlem örneği çalışma zamanı: İş yükü ekibinin performans özelliklerini seçmesi gereken her zaman açık işlem seçeneği. Bu çalışma zamanı, ortamın daha fazla özelleştirmesini ve denetimini sunar.

İstem akışları, konak kapsayıcısı konak platformlarında Machine Learning işleminin dışında da barındırılabilir. Bu mimaride dış barındırmayı göstermek için App Service kullanılır.

Ağ güvenliği, kimlik tabanlı erişimin yanı sıra OpenAI kullanan temel uçtan uca sohbet mimarisinin merkezinde yer alır. Ağ mimarisi yüksek düzeyden şunları sağlar:

  • Sohbet kullanıcı arabirimi trafiği için yalnızca tek ve güvenli bir giriş noktası.
  • Ağ trafiği filtrelenmiştir.
  • Aktarımdaki veriler Aktarım Katmanı Güvenliği (TLS) ile uçtan uca şifrelenir.
  • Azure'da trafiği tutmak için Özel Bağlantı kullanılarak veri sızdırma en aza indirilir.
  • Ağ kaynakları mantıksal olarak gruplandırılır ve ağ segmentasyonu aracılığıyla birbirinden yalıtılır.

Ağ akışları

Akış numaraları içeren OpenAI ile temel uçtan uca sohbet mimarisini gösteren diyagram.

Bu diyagramdaki iki akış temel App Service web uygulaması mimarisinde ele alınmıştır: Son kullanıcıdan sohbet kullanıcı arabirimine (1) ve App Service'ten Azure PaaS hizmetlerine (2) gelen akış. Bu bölüm Machine Learning çevrimiçi uç nokta akışına odaklanır. Aşağıdaki akış, temel App Service web uygulamasında çalışan sohbet kullanıcı arabiriminden Machine Learning işlemine dağıtılan akışa gider:

  1. App Service tarafından barındırılan sohbet kullanıcı arabiriminden yapılan çağrı, özel bir uç nokta üzerinden Machine Learning çevrimiçi uç noktasına yönlendirilir.
  2. Çevrimiçi uç nokta, çağrıyı dağıtılan akışı çalıştıran bir sunucuya yönlendirir. Çevrimiçi uç nokta hem yük dengeleyici hem de yönlendirici işlevi görür.
  3. Dağıtılan akışın gerektirdiği Azure PaaS hizmetlerine yapılan çağrılar yönetilen özel uç noktalar üzerinden yönlendirilir.

Machine Learning'e giriş

Bu mimaride Machine Learning çalışma alanına genel erişim devre dışıdır. Mimari Machine Learning çalışma alanı yapılandırması için özel uç noktayı izlediğinden kullanıcılar çalışma alanına özel erişim yoluyla erişebilir. Aslında, kimlik tabanlı güvenliği tamamlamak için bu mimarinin tamamında özel uç noktalar kullanılır. Örneğin, App Service tarafından barındırılan sohbet kullanıcı arabiriminiz Machine Learning uç noktaları da dahil olmak üzere genel İnternet'e açık olmayan PaaS hizmetlerine bağlanabilir.

Akış yazma için Machine Learning çalışma alanına bağlanmak için özel uç nokta erişimi de gereklidir.

Akış numaraları içeren bir akış OpenAI yazmak için bir atlama kutusu aracılığıyla Machine Learning çalışma alanına bağlanan kullanıcıyı gösteren diyagram.

Diyagramda, Azure Bastion aracılığıyla bir sanal makine atlama kutusuna bağlanan bir istem akışı yazarı gösterilmektedir. Bu atlama kutusundan yazar, atlama kutusuyla aynı ağdaki özel bir uç nokta üzerinden Machine Learning çalışma alanına bağlanabilir. Sanal ağ Bağlan, ExpressRoute veya VPN ağ geçitleri ve sanal ağ eşlemesi aracılığıyla da gerçekleştirilebilir.

Machine Learning tarafından yönetilen sanal ağdan Azure PaaS hizmetlerine akış

Machine Learning çalışma alanını, tüm giden bağlantıların onaylanmasını gerektiren yönetilen sanal ağ yalıtımı için yapılandırmanızı öneririz. Bu mimari bu öneriye uyar. İki tür onaylı giden kuralı vardır. Gerekli giden kuralları, çözümün çalışması için gerekli olan Container Registry ve Depolama gibi kaynaklardır. Kullanıcı tanımlı giden kuralları , iş akışınızın kullanacağını Azure OpenAI veya AI Search gibi özel kaynaklara yöneliktir. Kullanıcı tanımlı giden kurallarını yapılandırmanız gerekir. Yönetilen sanal ağ oluşturulduğunda gerekli giden kuralları yapılandırılır.

Giden kuralları özel uç noktalar, hizmet etiketleri veya dış genel uç noktalar için tam etki alanı adları (FQDN) olabilir. Bu mimaride Container Registry, Depolama, Azure Key Vault, Azure OpenAI ve AI Search gibi Azure hizmetlerine bağlantı özel bağlantı üzerinden bağlanır. Bu mimaride olmasa da, FQDN giden kuralı yapılandırmayı gerektirebilecek bazı yaygın işlemler pip paketi indirmek, GitHub deposunu klonlama veya dış depolardan temel kapsayıcı görüntülerini indirmektir.

Sanal ağ segmentasyonu ve güvenliği

Bu mimarideki ağın aşağıdaki amaçlarla ayrı alt ağları vardır:

  • Application Gateway
  • App Service tümleştirme bileşenleri
  • Özel uç noktalar
  • Azure Bastion
  • Atlama kutusu sanal makinesi
  • Eğitim - bu mimaride model eğitimi için kullanılmaz
  • Puanlama

Her alt ağın, bu alt ağlar için hem gelen hem de giden trafiği yalnızca gerekli olanlarla sınırlayan bir ağ güvenlik grubu (NSG) vardır. Aşağıdaki tabloda, temelin her alt ağa eklediği NSG kurallarının basitleştirilmiş bir görünümü gösterilmektedir. Tablo, kural adını ve işlevini sağlar.

Alt ağ Gelen Giden
snet-appGateway Sohbet kullanıcılarımız için izinler, kaynak IP'ler (genel İnternet gibi) ve hizmet için gerekli öğeler. App Service özel uç noktasına ve hizmet için gerekli öğelere erişim.
snet-PrivateEndpoints Yalnızca sanal ağdan gelen trafiğe izin verin. Yalnızca sanal ağa giden trafiğe izin verin.
snet-AppService Yalnızca sanal ağdan gelen trafiğe izin verin. Özel uç noktalara ve Azure İzleyici'ye erişime izin verin.
AzureBastionSubnet NSG erişimi ve Azure Bastion ile çalışma yönergelerine bakın. NSG erişimi ve Azure Bastion ile çalışma yönergelerine bakın.
snet-jumpbox Azure Bastion ana bilgisayar alt ağından gelen RDP ve SSH'ye izin verin. Özel uç noktalara erişime izin ver
snet-agents Yalnızca sanal ağdan gelen trafiğe izin verin. Yalnızca sanal ağa giden trafiğe izin verin.
snet eğitimi Yalnızca sanal ağdan gelen trafiğe izin verin. Yalnızca sanal ağa giden trafiğe izin verin.
snet puanlama Yalnızca sanal ağdan gelen trafiğe izin verin. Yalnızca sanal ağa giden trafiğe izin verin.

Diğer tüm trafik açıkça reddedilir.

Sanal ağ segmentasyonu ve güvenliği uygularken aşağıdaki noktaları göz önünde bulundurun.

  • Genel IP adresine sahip bir uygulama ağ geçidinin parçası olan bir alt ağ ile sanal ağ için DDoS korumasını etkinleştirin.

  • Mümkün olduğunda her alt ağa bir NSG ekleyin. Tam çözüm işlevselliğini etkinleştiren en katı kuralları kullanın.

  • NSG'leri gruplandırmak için uygulama güvenlik gruplarını kullanın. NSG'leri gruplandırma, karmaşık ortamlar için kural oluşturmayı kolaylaştırır.

İçerik filtreleme ve uygunsuz kullanım izleme

Azure OpenAI, hem giriş istemlerinde hem de çıkış tamamlamalarında zararlı olabilecek belirli içerik kategorilerini algılamak ve önlemek için sınıflandırma modellerinden oluşan bir grup kullanan bir içerik filtreleme sistemi içerir. Bu zararlı olabilecek içerik kategorileri arasında nefret, cinsel, kendine zarar verme, şiddet, küfür ve jailbreak (dil modelinin kısıtlamalarını atlamak için tasarlanmış içerik) yer alır. Her kategori için içeriği filtrelemek istediğiniz içeriğin katılığını yapılandırabilirsiniz; seçenekler düşük, orta veya yüksektir. Bu başvuru mimarisi sıkı bir yaklaşım benimser. Ayarları gereksinimlerinize göre ayarlayın.

Azure OpenAI, içerik filtrelemeye ek olarak kötüye kullanım izleme özellikleri de uygular. Kötüye kullanım izleme, hizmetin Azure OpenAI kullanım kurallarını ihlal eden bir şekilde kullanılmasını öneren yinelenen içerik veya davranışları algılamak ve azaltmak için tasarlanmış zaman uyumsuz bir işlemdir. Verileriniz son derece hassassa veya kötüye kullanım tespiti için verilerin işlenmesini engelleyen iç politikalar veya geçerli yasal düzenlemeler varsa, kötüye kullanım izleme ve insan incelemesinin muaf tutulmasını isteyebilirsiniz.

Güvenilirlik

Temel App Service web uygulaması mimarisi, önemli bölgesel hizmetler için bölgesel yedekliliğe odaklanır. Kullanılabilirlik alanları, bir bölge içinde fiziksel olarak ayrı konumlardır. Bir bölgede iki veya daha fazla örnek dağıtıldığında hizmetleri desteklemek için yedeklilik sağlar. Bir bölge kapalı kalma süresiyle karşılaştığında, bölge içindeki diğer bölgeler hala etkilenmeyebilir. Mimari ayrıca azure hizmetlerinin yeterince örneğini ve bu hizmetlerin yapılandırmasını kullanılabilirlik alanlarına yaymak için sağlar. Daha fazla bilgi için bu kılavuzu gözden geçirmek için temele bakın.

Bu bölümde, Machine Learning, Azure OpenAI ve AI Search gibi App Service temelinde ele alınmayan bu mimarideki bileşenlerin perspektifinden güvenilirlik ele alınıyor.

Akış dağıtımları için bölgesel yedeklilik

Kurumsal dağıtımlar genellikle bölgesel yedeklilik gerektirir. Azure'da bölgesel yedeklilik elde etmek için kaynakların kullanılabilirlik alanlarını desteklemesi ve kaynağın en az üç örneğini dağıtmanız veya örnek denetimi kullanılamadığında platform desteğini etkinleştirmeniz gerekir. Machine Learning işlem şu anda kullanılabilirlik alanları için destek sunmamaktadır. Veri merkezi düzeyindeki bir felaketin Machine Learning bileşenleri üzerindeki olası etkisini azaltmak için, çağrıları bu kümeler arasında dağıtmak için bir yük dengeleyici dağıtmanın yanı sıra çeşitli bölgelerde kümeler oluşturmak gerekir. Çağrıların yalnızca düzgün çalışan kümelere yönlendirildiğinden emin olmak için sistem durumu denetimlerini kullanabilirsiniz.

İstem akışlarının dağıtılması Machine Learning işlem kümeleriyle sınırlı değildir. Kapsayıcılı uygulama olan yürütülebilir akış, kapsayıcılarla uyumlu herhangi bir Azure hizmetine dağıtılabilir. Bu seçenekler Azure Kubernetes Service (AKS), Azure İşlevleri, Azure Container Apps ve App Service gibi hizmetleri içerir. Bu hizmetlerin her biri kullanılabilirlik alanlarını destekler. Çok bölgeli dağıtımın karmaşıklığı olmadan, istem akışı yürütme için bölgesel yedeklilik elde etmek için akışlarınızı bu hizmetlerden birine dağıtmanız gerekir.

Aşağıdaki diyagramda, istem akışlarının App Service'e dağıtıldığı alternatif bir mimari gösterilmektedir. İş yükü sohbet kullanıcı arabirimi için zaten kullandığından ve iş yüküne yeni bir teknoloji eklemenin avantajlarından yararlanmayacağından App Service bu mimaride kullanılır. AKS deneyimine sahip iş yükü ekipleri, özellikle aks iş yükündeki diğer bileşenler için kullanılıyorsa bu ortamda dağıtım yapmayı göz önünde bulundurmalıdır.

OpenAI ile temel uçtan uca sohbet mimarisini gösteren ve istem akışının App Service'e dağıtıldığını gösteren diyagram.

Diyagram, bu mimarideki önemli alanlar için numaralandırılır:

  1. Akışlar Machine Learning istem akışında hala yazıldı ve Machine Learning ağ mimarisi değişmedi. Akış yazarları özel uç nokta üzerinden çalışma alanı yazma deneyimine bağlanmaya devam eder ve yönetilen özel uç noktalar akışları test ederken Azure hizmetlerine bağlanmak için kullanılır.

  2. Bu noktalı çizgi, kapsayıcılı yürütülebilir akışların Container Registry'ye gönderildiğini gösterir. Diyagramda, akışları kapsayıcıya alan ve Container Registry'ye gönderen işlem hatları gösterilmez.

  3. Sohbet kullanıcı arabirimini barındıran aynı App Service planına dağıtılan başka bir web uygulaması daha vardır. Yeni web uygulaması, kullanılabilirlik alanlarına yayılmış en az üç örnekte çalışan aynı App Service planında birlikte bulunan kapsayıcılı istem akışını barındırır. Bu App Service örnekleri, istem akışı kapsayıcı görüntüsü yüklenirken özel bir uç nokta üzerinden Container Registry'ye bağlanır.

  4. İstem akışı kapsayıcısının akış yürütme için tüm bağımlı hizmetlere bağlanması gerekir. Bu mimaride, istem akışı kapsayıcısı AI Search'e ve Azure OpenAI'ye bağlanır. Yalnızca Machine Learning tarafından yönetilen özel uç nokta alt ağına sunulan PaaS hizmetlerinin artık App Service'ten görüş hattının kurulabilmesi için sanal ağda da kullanıma sunulmaları gerekir.

Azure OpenAI - güvenilirlik

Azure OpenAI şu anda kullanılabilirlik alanlarını desteklemez. Veri merkezi düzeyindeki bir felaketin Azure OpenAI'deki model dağıtımları üzerindeki olası etkisini azaltmak için Azure OpenAI'yi çeşitli bölgelere dağıtmak ve çağrıları bölgeler arasında dağıtmak için bir yük dengeleyici dağıtmak gerekir. Çağrıların yalnızca düzgün çalışan kümelere yönlendirildiğinden emin olmak için sistem durumu denetimlerini kullanabilirsiniz.

Birden çok örneği etkili bir şekilde desteklemek için coğrafi olarak yedekli bir Depolama hesabı gibi hassas ayarlama dosyalarını dışlaştırmanızı öneririz. Bu yaklaşım, her bölge için Azure OpenAI'de depolanan durumu en aza indirir. Model dağıtımını barındırmak için her örneğin dosyalarında ince ayarlamalar yapmaya devam etmeniz gerekir.

Dakika başına belirteçler (TPM) ve dakika başına istekler (RPM) açısından gerekli aktarım hızını izlemek önemlidir. Dağıtımlarınızın talebini karşılamak ve dağıtılan modellerinize yönelik çağrıların kısıtlanmasını önlemek için kotanızdan yeterli TPM u atandığından emin olun. Azure API Management gibi bir ağ geçidi OpenAI hizmetinizin veya hizmetlerinizin önünde dağıtılabilir ve geçici hatalar ve azaltma varsa yeniden deneme için yapılandırılabilir. API Management, hizmetin çağrıya boğularak kotasını aşmasını önlemek için devre kesici olarak da kullanılabilir.

Yapay Zeka Araması - güvenilirlik

Kullanılabilirlik alanlarını destekleyen bir bölgede Standart fiyatlandırma katmanı veya üzeri ile AI Search'ü dağıtın ve üç veya daha fazla çoğaltma dağıtın. Çoğaltmalar, kullanılabilirlik alanlarına otomatik olarak eşit olarak yayılır.

Uygun çoğaltma ve bölüm sayısını belirlemek için aşağıdaki kılavuzu göz önünde bulundurun:

  • AI Arama'yı izleyin.

  • Sorgu tabanlı azaltmayı ve bölümleri önlemek ve dizin tabanlı azaltmayı önlemek için uygun çoğaltma sayısını belirlemek için izleme ölçümlerini ve günlüklerini ve performans analizini kullanın.

Machine Learning - güvenilirlik

Machine Learning tarafından yönetilen çevrimiçi uç noktanın arkasındaki işlem kümelerine dağıtım yaparsanız ölçeklendirmeyle ilgili aşağıdaki yönergeleri göz önünde bulundurun:

Not

Akışınızı App Service'e dağıtırsanız temel mimarideki App Service ölçeklenebilirlik kılavuzunun aynısı uygulanır.

Güvenlik

Bu mimari hem ağ hem de kimlik güvenlik çevresi uygular. Ağ açısından bakıldığında, İnternet'ten erişilebilir olması gereken tek şey Application Gateway üzerinden sohbet kullanıcı arabirimidir. Kimlik açısından bakıldığında sohbet kullanıcı arabiriminin isteklerin kimliğini doğrulaması ve yetkilendirmesi gerekir. Yönetilen kimlikler mümkün olduğunda Azure hizmetlerinde uygulamaların kimliğini doğrulamak için kullanılır.

Bu bölümde anahtar döndürme ve Azure OpenAI model ince ayarı için kimlik ve erişim yönetimi ile güvenlik konuları açıklanmaktadır.

Kimlik ve erişim yönetimi

Aşağıdaki kılavuz, App Service temelinde kimlik ve erişim yönetimi kılavuzunu genişletir:

  • Uygun olduğunda aşağıdaki Machine Learning kaynakları için ayrı yönetilen kimlikler oluşturun:
    • Akış yazma ve yönetim için çalışma alanları
    • Akışları test etme için işlem örnekleri
    • Akış yönetilen bir çevrimiçi uç noktaya dağıtılırsa dağıtılan akıştaki çevrimiçi uç noktalar
  • Microsoft Entra Id kullanarak sohbet kullanıcı arabirimi için kimlik erişim denetimleri uygulama

Machine Learning rol tabanlı erişim rolleri

Machine Learning çalışma alanınıza erişimi yönetmek için kullanabileceğiniz beş varsayılan rol vardır: AzureML Veri Bilimci, AzureML İşlem Operatörü, Okuyucu, Katkıda Bulunan ve Sahip. Bu varsayılan rollerle birlikte, çalışma alanı gizli dizileri ve kayıt defteri gibi çalışma alanı kaynaklarına erişim verebilen bir AzureML Öğrenme Çalışma Alanı Bağlan ion Gizli Dizi Okuyucusu ve AzureML Kayıt Defteri Kullanıcısı vardır.

Bu mimari, yalnızca gerekli oldukları önceki kimliklere roller atayarak en az ayrıcalık ilkesini izler. Aşağıdaki rol atamalarını göz önünde bulundurun.

Yönetilen kimlik Kapsam Rol atamaları
Çalışma alanı yönetilen kimliği Kaynak grubu Katılımcı
Çalışma alanı yönetilen kimliği Çalışma Alanı Depolama Hesabı Depolama Blobu Veri Katılımcısı
Çalışma alanı yönetilen kimliği Çalışma Alanı Depolama Hesabı Depolama Dosya Verileri Ayrıcalıklı Katkıda Bulunanı
Çalışma alanı yönetilen kimliği Çalışma Alanı Anahtar Kasası Key Vault Yönetici istrator
Çalışma alanı yönetilen kimliği Çalışma Alanı Kapsayıcı Kayıt Defteri AcrPush
Çevrimiçi uç nokta yönetilen kimliği Çalışma Alanı Kapsayıcı Kayıt Defteri AcrPull
Çevrimiçi uç nokta yönetilen kimliği Çalışma Alanı Depolama Hesabı Depolama Blob Verileri Okuyucusu
Çevrimiçi uç nokta yönetilen kimliği Machine Learning çalışma alanı AzureML Çalışma Alanı Bağlan Ion Gizli Dizi okuyucusu
İşlem örneği yönetilen kimliği Çalışma Alanı Kapsayıcı Kayıt Defteri AcrPull
İşlem örneği yönetilen kimliği Çalışma Alanı Depolama Hesabı Depolama Blob Verileri Okuyucusu

Anahtar döndürme

Bu mimaride anahtar tabanlı kimlik doğrulaması kullanan iki hizmet vardır: Azure OpenAI ve Machine Learning tarafından yönetilen çevrimiçi uç nokta. Bu hizmetler için anahtar tabanlı kimlik doğrulaması kullandığınızdan, şunları yapmak önemlidir:

  • anahtarı, istek akışı kapsayıcısını barındıran Azure Web App gibi yetkili istemcilerden isteğe bağlı erişim için Key Vault gibi güvenli bir depoda depolayın.

  • Anahtar döndürme stratejisi uygulama. Anahtarları el ile döndürürseniz, bir anahtar süre sonu ilkesi oluşturun ve anahtarın döndürülmüş olup olmadığını izlemek için Azure İlkesi kullanın.

OpenAI model ince ayarı

Uygulamanızda OpenAI modellerini ince ayarlarsanız aşağıdaki yönergeleri göz önünde bulundurun:

  • hassas ayarlama için eğitim verilerini karşıya yüklerseniz, bu verileri şifrelemek için müşteri tarafından yönetilen anahtarları kullanmayı göz önünde bulundurun.

  • Eğitim verilerini Azure Blob Depolama gibi bir depoda depolarsanız, veri şifrelemesi için müşteri tarafından yönetilen bir anahtar, verilere erişimi denetlemek için yönetilen kimlik ve verilere bağlanmak için özel bir uç nokta kullanmayı göz önünde bulundurun.

İlke aracılığıyla idare

Güvenlikle uyumlu olmasını sağlamaya yardımcı olmak için, dağıtımların iş yükünün gereksinimlerine uygun olması için Azure İlkesi ve ağ ilkesi kullanmayı göz önünde bulundurun. platform otomasyonunun ilke aracılığıyla kullanılması, el ile doğrulama adımlarının yükünü azaltır ve işlem hatları atlanmış olsa bile idareyi güvence altına alır. Aşağıdaki güvenlik ilkelerini göz önünde bulundurun:

  • Azure AI hizmetleri ve Key Vault gibi hizmetlerde anahtar veya diğer yerel kimlik doğrulama erişimini devre dışı bırakın.
  • Ağ erişim kurallarının veya NSG'lerin belirli bir yapılandırmasını zorunlu kılma.
  • Müşteri tarafından yönetilen anahtarların kullanılması gibi şifreleme gerektirir.

Maliyet iyileştirme

Maliyet iyileştirmesi, gereksiz giderleri azaltmanın ve operasyonel verimlilikleri iyileştirmenin yollarını aramaktır. Daha fazla bilgi için bkz . Maliyet İyileştirme için tasarım gözden geçirme denetim listesi.

Bu senaryoya yönelik fiyatlandırma örneğini görmek için Azure fiyatlandırma hesaplayıcısını kullanın. Bu örnek yalnızca mimariye dahil edilen bileşenleri içerdiğinden örneği kullanımınızla eşleşecek şekilde özelleştirmeniz gerekir. Senaryodaki en pahalı bileşenler sohbet kullanıcı arabirimi ve istem akışı işlem ve AI Arama'dır. En yüksek maliyetten tasarruf etmek için bu kaynakları iyileştirin.

İşlem

Machine Learning istem akışı yürütülebilir akışları barındırmak için birden çok seçeneği destekler. Seçenekler arasında Machine Learning, AKS, App Service ve Azure Container Service'teki yönetilen çevrimiçi uç noktalar yer alır. Bu seçeneklerin her birinin kendi faturalama modeli vardır. İşlem seçimi çözümün genel maliyetini etkiler.

Azure OpenAI

Azure OpenAI tüketim tabanlı bir hizmettir ve her tüketim tabanlı hizmette olduğu gibi, arza karşı talebi denetlemek birincil maliyet denetimidir. Bunu özellikle Azure OpenAI'de yapmak için yaklaşımların bir bileşimini kullanmanız gerekir:

  • İstemcileri denetleme. İstemci istekleri tüketim modelindeki birincil maliyet kaynağıdır, bu nedenle istemci davranışını denetlemek kritik önem taşır. Tüm istemciler:

    • Onaylanmalıdır. Hizmeti herkes için ücretsiz erişimi destekleyecek şekilde kullanıma açmaktan kaçının. Hem ağ hem de anahtarlar veya rol tabanlı erişim denetimi (RBAC) gibi kimlik denetimleri aracılığıyla erişimi sınırlayın.

    • Kendi kendini kontrol altına alın. İstemcilerin MAX_TOKENS ve max_completions gibi API çağrıları tarafından sunulan belirteç sınırlama kısıtlamalarını kullanmasını zorunlu kılar.

    • Pratik olduğu durumlarda toplu işlem kullanın. İstemcileri gözden geçirerek istemleri düzgün bir şekilde toplu olarak çalıştırdığından emin olun.

    • İstem girişini ve yanıt uzunluğunu iyileştirin. Daha uzun istemler daha fazla belirteç tüketerek maliyeti yükseltir, ancak yeterli bağlamı olmayan istemler modellerin iyi sonuçlar vermesine yardımcı olmaz. Modelin yararlı bir yanıt oluşturmasına izin vermek için yeterli bağlam sağlayan kısa istemler oluşturun. Benzer şekilde, yanıt uzunluğu sınırını iyileştirdiğinizden emin olun.

  • Azure OpenAI oyun alanı kullanımı, üretim öncesi örneklerde ve gerekli olmalıdır, böylece bu etkinlikler üretim maliyetlerine neden olmaz.

  • Doğru yapay zeka modelini seçin. Model seçimi, Azure OpenAI'nin genel maliyetinde de büyük bir rol oynar. Tüm modellerin güçlü ve zayıf yönleri vardır ve ayrı ayrı fiyatlendirilir. Daha düşük maliyetli bir model kabul edilebilir sonuçlar verirken daha pahalı bir modelde fazla harcama yapmadığınızdan emin olmak için kullanım örneği için doğru modeli kullanın. Bu sohbet başvurusu uygulamasında GPT 3.5-turbo, gpt-4 üzerinden model dağıtım maliyetlerinin yaklaşık bir sırası kadar tasarruf etmek ve yeterli sonuçlar elde etmek için seçildi.

  • Faturalama kesme noktalarını anlama. Hassas ayarlamalar saatte bir ücretlendirilir. En verimli olmak için, bir sonraki faturalama dönemine geçmekten kaçınarak ince ayar sonuçlarını iyileştirmek için saat başına bu sürenin çoğunu kullanmak istiyorsunuz. Benzer şekilde, görüntü oluşturma işleminden alınan 100 görüntünün maliyeti, bir görüntünün maliyetiyle aynıdır. Fiyat kesme noktalarını avantajınıza göre en üst düzeye çıkarın.

  • Faturalama modellerini anlama. Azure OpenAI, sağlanan aktarım hızı teklifi aracılığıyla taahhüt tabanlı bir faturalama modelinde de kullanılabilir. Tahmin edilebilir kullanım desenleriniz olduktan sonra, kullanım hacminizde daha uygun maliyetliyse bu önceden satın alma faturalama modeline geçmeyi göz önünde bulundurun.

  • Sağlama sınırlarını ayarlayın. Tüm sağlama kotasının yalnızca iş yükünün parçası olması beklenen modellere model temelinde ayrıldığından emin olun. Dinamik kota etkinken, zaten dağıtılmış modellere aktarım hızı bu sağlanan kotayla sınırlı değildir. Kota doğrudan maliyetlerle eşlenemez ve bu maliyet değişebilir.

  • Kullandıkça öde kullanımını izleyin. Kullandıkça öde fiyatlandırması kullanıyorsanız TPM ve RPM kullanımını izleyin. Hangi modellerin kullanılacağı gibi mimari tasarım kararlarını bilgilendirmek ve istem boyutlarını iyileştirmek için bu bilgileri kullanın.

  • Sağlanan aktarım hızı kullanımını izleyin. Sağlanan aktarım hızını kullanıyorsanız, satın aldığınız sağlanan aktarım hızının altında kullanmadığınızdan emin olmak için sağlanan yönetilen kullanımı izleyin.

  • Maliyet yönetimi. Maliyetleri izlemek, maliyetleri yönetmek için bütçeler ayarlamak ve proje katılımcılarını riskleri veya anomalileri bildirmek için uyarılar oluşturmak için OpenAI ile maliyet yönetimi özelliklerini kullanma yönergelerini izleyin.

Operasyonel mükemmellik

Operasyonel mükemmellik, bir uygulamayı dağıtan ve üretimde çalışır durumda tutan operasyon süreçlerini özetler. Daha fazla bilgi için bkz . Operasyonel Mükemmellik için tasarım gözden geçirme denetim listesi.

Machine Learning - yerleşik istem akışı çalışma zamanları

İşletim yükünü en aza indirmek için Otomatik Çalışma Zamanı , Machine Learning'de işlem yönetimini basitleştiren ve istem akışı yapılandırmasının çoğunu çalışan uygulamanın requirements.txt dosyası ve flow.dag.yaml yapılandırmasına devreden sunucusuz bir işlem seçeneğidir. Bu, bu seçimi düşük bakım, kısa ömürlü ve uygulama odaklı yapar. İşlem Örneği Çalışma Zamanı veya bu mimaride olduğu gibi dışlaştırılmış işlem kullanmak, işlem için daha fazla iş yükü ekip tarafından yönetilen yaşam döngüsü gerektirir ve iş yükü gereksinimleri otomatik çalışma zamanı seçeneğinin yapılandırma özelliklerini aştığında seçilmelidir.

İzleme

Tanılama tüm hizmetler için yapılandırılır. Machine Learning ve App Service dışında tüm hizmetler tüm günlükleri yakalayacak şekilde yapılandırılır. Machine Learning tanılamaları, verilerle müşteri etkileşimlerini veya hizmetin ayarlarını kaydeden tüm kaynak günlükleri olan denetim günlüklerini yakalayacak şekilde yapılandırılır. App Service, AppServiceHTTPLogs, AppServiceConsoleLogs, AppServiceAppLogs ve AppServicePlatformLogs'u yakalayacak şekilde yapılandırılmıştır.

Bu mimarideki kaynaklar için Azure İzleyici temel uyarılarında bulunanlar gibi özel uyarılar oluşturma işlemini değerlendirin. Örneğin:

Dil modeli işlemleri

Bu mimari gibi Azure OpenAI tabanlı sohbet çözümleri için dağıtım, Azure DevOps ve GitHub ile istem akışıyla LLMOps'daki yönergeleri izlemelidir. Ayrıca, sürekli tümleştirme ve sürekli teslim (CI/CD) ve ağ güvenli mimariler için en iyi yöntemleri göz önünde bulundurması gerekir. Aşağıdaki kılavuz, LLMOps önerilerine göre akışların ve bunların ilişkili altyapılarının uygulanmasını ele alır. Bu dağıtım kılavuzu, Temel yüksek oranda kullanılabilir alanlar arası yedekli web uygulaması mimarisinde değişmeyen ön uç uygulama öğelerini içermez.

Geliştirme

Machine Learning istem akışı hem Machine Learning studio'da hem de Visual Studio Code uzantısı aracılığıyla tarayıcı tabanlı bir yazma deneyimi sunar. Her iki seçenek de akış kodunu dosya olarak depolar. Machine Learning Studio'yu kullandığınızda dosyalar bir Depolama hesabında depolanır. VS Code'da çalışırken, dosyalar yerel dosya sisteminizde depolanır.

İşbirliğine dayalı geliştirme için en iyi yöntemleri izlemek için kaynak dosyaların GitHub gibi bir çevrimiçi kaynak kod deposunda tutulması gerekir. Bu yaklaşım tüm kod değişikliklerinin izlenmesini, akış yazarları arasındaki işbirliğini ve tüm kod değişikliklerini test eden ve doğrulayan dağıtım akışlarıyla tümleştirmeyi kolaylaştırır.

Kurumsal geliştirme için VS Code uzantısını ve geliştirme için istem akışı SDK'sını/CLI'yı kullanın. İstem akışı yazarları VS Code'dan akışlarını derleyip test edebilir ve yerel olarak depolanan dosyaları çevrimiçi kaynak denetim sistemi ve işlem hatları ile tümleştirebilir. Tarayıcı tabanlı deneyim keşif geliştirme için çok uygun olsa da, bazı çalışmalarla kaynak denetim sistemiyle tümleştirilebilir. Akış klasörü paneldeki akış sayfasından Files indirilebilir, sıkıştırması açılabilir ve kaynak denetim sistemine gönderilebilir.

Değerlendirme

Diğer yazılım yapıtlarını test ettiğiniz gibi sohbet uygulamasında kullanılan akışları da test edin. Dil modeli çıkışları için tek bir "doğru" yanıt belirtmek ve onaylamak zordur, ancak yanıtları değerlendirmek için dil modelinin kendisini kullanabilirsiniz. Dil modeli akışlarınızın aşağıdaki otomatik değerlendirmelerini uygulamayı göz önünde bulundurun:

  • Sınıflandırma doğruluğu: Dil modelinin "doğru" veya "yanlış" puan verip vermediğini değerlendirir ve doğruluk notu oluşturmak için sonuçları toplar.

  • Tutarlılık: Modelin tahmin edilen yanıtlarındaki cümlelerin ne kadar iyi yazıldıklarını ve birbirleriyle nasıl uyumlu bir şekilde bağlandıklarını değerlendirir.

  • Akıcılık: Modelin dil bilgisi ve dil doğruluğu için tahmin edilen yanıtını değerlendirir.

  • Bağlama karşı dayanak: Modelin tahmin edilen yanıtlarının önceden yapılandırılmış bağlama göre ne kadar iyi olduğunu değerlendirir. Dil modeli yanıtları doğru olsa bile, verilen bağlamda doğrulanamıyorsa, bu tür yanıtlar temellenmez.

  • İlgi: Modelin tahmin edilen yanıtlarının sorulan soruyla ne kadar uyumlu olduğunu değerlendirir.

Otomatik değerlendirmeleri uygularken aşağıdaki yönergeleri göz önünde bulundurun:

  • Değerlendirmelerden puanlar üretin ve bunları önceden tanımlanmış bir başarı eşiğine göre ölçün. İşlem hatlarınızda test geçişi/başarısız olduğunu bildirmek için bu puanları kullanın.

  • Bu testlerden bazıları soruların, bağlamın ve temel gerçeğin önceden yapılandırılmış veri girişlerini gerektirir.

  • Test sonuçlarının güvenilir olduğundan emin olmak için en az 100-150 çiftin önerildiğinden emin olmak için yeterli soru-yanıt çifti ekleyin. Bu soru-cevap çiftleri "altın veri kümeniz" olarak adlandırılır. Veri kümenizin boyutuna ve etki alanına bağlı olarak daha büyük bir popülasyon gerekebilir.

  • Altın veri kümenizdeki verilerden herhangi birini oluşturmak için dil modellerini kullanmaktan kaçının.

Dağıtım Akışı

bir istem akışı için dağıtım akışını gösteren diyagram.

  1. İstem mühendisi/veri bilimcisi belirli bir görev veya özellik üzerinde çalıştıkları bir özellik dalı açar. komut istemi mühendisi/veri bilimcisi VS Code için istem akışını kullanarak akış üzerinde yinelenir, değişiklikleri düzenli aralıklarla işler ve bu değişiklikleri özellik dalı için gönderir.

  2. Yerel geliştirme ve deneme tamamlandıktan sonra, istem mühendisi/veri bilimcisi Özellik dalından Ana dala bir çekme isteği açar. Çekme isteği (PR) bir çekme isteği işlem hattını tetikler. Bu işlem hattı şunları içermesi gereken hızlı kalite denetimleri çalıştırır:

    • Deneme akışlarının yürütülmesi
    • Yapılandırılmış birim testlerinin yürütülmesi
    • Kod tabanının derlenmesi
    • Statik kod analizi
  3. İşlem hattı, birleştirmeden önce en az bir ekip üyesinin çekme isteğini el ile onaylamasını gerektiren bir adım içerebilir. Onaylayan, işleyici olamaz ve istek akışı uzmanlığına ve proje gereksinimlerine aşinalığa sahiptir. Çekme isteği onaylanmamışsa birleştirme engellenir. Çekme isteği onaylanırsa veya onay adımı yoksa özellik dalı Ana dal ile birleştirilir.

  4. Main ile birleştirme, Geliştirme ortamı için derleme ve yayın işlemini tetikler. Özellikle:

    a. CI işlem hattı, Main ile birleştirme işleminden tetikleniyor. CI işlem hattı, çekme isteği işlem hattında yapılan tüm adımları ve aşağıdaki adımları gerçekleştirir:

    • Deneme akışı
    • Değerlendirme akışı
    • Değişiklikler algılandığında Akışları Machine Learning Kayıt Defteri'ne kaydeder

    b. CI işlem hattı tamamlandıktan sonra CD işlem hattı tetikleniyor. Bu akış aşağıdaki adımları gerçekleştirir:

    • Akışı Machine Learning kayıt defterinden Machine Learning çevrimiçi uç noktasına dağıtır
    • Çevrimiçi uç noktayı hedefleyen tümleştirme testleri çalıştırır
    • Çevrimiçi uç noktayı hedefleyen duman testleri çalıştırır
  5. Onay süreci, sürüm yükseltme işleminde yerleşik olarak bulunur. Onaydan sonra, 4.a. adımlarda açıklanan CI ve CD işlemleri. & 4.b. yinelenir ve Test ortamı hedeflenir. A. ve b. adımları aynıdır, ancak kullanıcı kabul testleri Test ortamındaki duman testlerinin ardından çalıştırılır.

  6. 4.a. adımlarında açıklanan CI ve CD işlemleri. & 4.b. Test ortamı doğrulanıp onaylandıktan sonra sürümü Üretim ortamına yükseltmek için çalıştırılır.

  7. Canlı ortama yayımlandıktan sonra performans ölçümlerini izleme ve dağıtılan dil modellerini değerlendirme işlemleri gerçekleşir. Buna şunlar dahildir ancak bunlarla sınırlı değildir:

    • Veri kaymalarını algılama
    • Altyapıyı gözlemleme
    • Maliyetleri yönetme
    • Modelin performansını paydaşlara iletme

Dağıtım kılavuzu

Machine Learning uç noktalarını kullanarak modelleri üretim ortamında kullanıma sunarken esneklik sağlayan bir şekilde dağıtabilirsiniz. En iyi model performansını ve kalitesini sağlamak için aşağıdaki stratejileri göz önünde bulundurun:

  • Mavi/yeşil dağıtımlar: Bu stratejiyle, tüm trafiği yeni dağıtıma yönlendirmeden önce web hizmetinin yeni sürümünü sınırlı bir kullanıcı veya istek grubuna güvenle dağıtabilirsiniz.

  • A/B testi: Yalnızca değişiklikleri güvenli bir şekilde dağıtmak için etkili olan mavi/yeşil dağıtımlar değildir, aynı zamanda kullanıcıların bir alt kümesinin değişikliğin etkisini değerlendirmesine olanak tanıyan yeni davranışlar dağıtmak için de kullanılabilir.

  • İşlem hatlarınızdaki istem akışının parçası olan Python dosyalarının lintini ekleyin. Linting stil standartları, hatalar, kod karmaşıklığı, kullanılmayan içeri aktarmalar ve değişken adlandırma ile uyumluluğu denetler.

  • Akışınızı ağdan yalıtılmış Machine Learning çalışma alanına dağıttığınızda, Azure kaynaklarınıza yapıt dağıtmak için şirket içinde barındırılan bir aracı kullanın.

  • Machine Learning model kayıt defteri yalnızca modelde değişiklikler olduğunda güncelleştirilmelidir.

  • Dil modelleri, akışlar ve istemci kullanıcı arabirimi gevşek bir şekilde birleştirilmelidir. Akışlara ve istemci kullanıcı arabirimine Güncelleştirmeler modeli etkilemeden yapılabilir ve yapılabilir.

  • Birden çok akış geliştirip dağıttığınızda, her akışın kendi yaşam döngüsü olmalıdır ve bu da akışları denemeden üretime yükseltirken gevşek bir şekilde bağlanmış bir deneyim sağlar.

Altyapı

Temel Azure OpenAI uçtan uca sohbet bileşenlerini dağıttığınızda, sağlanan hizmetlerden bazıları mimari içinde temel ve kalıcı olurken, diğer bileşenler doğası gereği daha kısa ömürlü olur ve bunların varlığı bir dağıtıma bağlıdır.

Temel bileşenler

Bu mimarideki bazı bileşenler, tek tek herhangi bir istem akışının veya model dağıtımının ötesine uzanan bir yaşam döngüsüyle mevcuttur. Bu kaynaklar genellikle iş yükü ekibi tarafından temel dağıtımın bir parçası olarak bir kez dağıtılır ve istem akışları veya model dağıtımları için yeni, kaldırılmış veya güncelleştirmeler dışında tutulur.

  • Machine Learning çalışma alanı
  • Machine Learning çalışma alanı için Depolama hesabı
  • Container Registry
  • AI Arama
  • Azure OpenAI
  • Azure Application Insights
  • Azure Bastion
  • Atlama kutusu için Azure Sanal Makinesi
Kısa ömürlü bileşenler

Bazı Azure kaynakları, belirli istem akışlarının tasarımıyla daha sıkı bir şekilde birleştirilmiştir. Bu yaklaşım, bu kaynakların bileşenin yaşam döngüsüne bağlı olmasını ve bu mimaride kısa ömürlü olmasını sağlar. Azure kaynakları, iş yükü geliştikçe (akışlar eklendiğinde veya kaldırıldığında veya yeni modeller sunulduğunda) etkilenir. Bu kaynaklar yeniden oluşturulur ve önceki örnekler kaldırılır. Bu kaynaklardan bazıları doğrudan Azure kaynakları, bazıları ise bu kaynakları içeren hizmet içindeki veri düzlemi belirtileridir.

  • Machine Learning model kayıt defterindeki model, değiştirilirse CD işlem hattının bir parçası olarak güncelleştirilmelidir.

  • Kapsayıcı görüntüsü, CD işlem hattının bir parçası olarak kapsayıcı kayıt defterinde güncelleştirilmelidir.

  • Dağıtım mevcut olmayan bir uç noktaya başvuruda bulunursa bir istem akışı dağıtıldığında bir Machine Learning uç noktası oluşturulur. Genel erişimi kapatmak için bu uç noktanın güncelleştirilmesi gerekir.

  • Bir akış dağıtıldığında veya silindiğinde Machine Learning uç noktasının dağıtımları güncelleştirilir.

  • İstemci kullanıcı arabirimi için Key Vault, yeni bir uç nokta oluşturulduğunda uç nokta anahtarıyla güncelleştirilmelidir.

Performans verimliliği

Performans verimliliği, iş yükünüzün kullanıcılar tarafından talep edilen talepleri karşılayacak şekilde verimli bir şekilde ölçeklendirebilmesidir. Daha fazla bilgi için bkz . Performans Verimliliği için tasarım gözden geçirme denetim listesi.

Bu bölümde Azure Search, Azure OpenAI ve Machine Learning açısından performans verimliliği açıklanmaktadır.

Azure Search - performans verimliliği

Yapay Zeka Arama'da performansı analiz etmek için yönergeleri izleyin.

Azure OpenAI - performans verimliliği

  • Uygulamanızın sağlanan aktarım hızı mı yoksa paylaşılan barındırma mı yoksa tüketim modeli mi gerektirdiğini belirleyin. Sağlanan aktarım hızı, OpenAI model dağıtımlarınız için ayrılmış işleme kapasitesi sağlar ve bu da modelleriniz için tahmin edilebilir performans ve aktarım hızı sağlar. Bu faturalama modeli, paylaşılan barındırma veya tüketim modelinden farklı bir modeldir. Tüketim modeli en iyi çabayı gösterir ve gürültülü komşuya veya platformdaki diğer stresörlere tabi olabilir.

  • Sağlanan aktarım hızı için sağlanan yönetilen kullanımı izleyin.

Machine Learning - performans verimliliği

Machine Learning çevrimiçi uç noktalarına dağıtıyorsanız:

  • Çevrimiçi uç noktayı otomatik ölçeklendirme hakkındaki yönergeleri izleyin. Özellikle düşük kullanım dönemlerinde aşırı fazla sağlama olmadan taleple yakından uyumlu kalmak için bunu yapın.

  • Performans hedeflerinizi karşılamak için çevrimiçi uç nokta için uygun sanal makine SKU'sunu seçin. En iyi yapılandırmayı bulmak için hem daha düşük örnek sayısının hem de daha büyük SKU'ların performansını test edin ve daha büyük örnek sayısını ve daha küçük SKU'ları test edin.

Bu senaryoyu dağıtın

Başvuru uygulamasını dağıtmak ve çalıştırmak için OpenAI uçtan uca temel başvuru uygulamasındaki adımları izleyin.

Katkıda Bulunanlar

Bu makale Microsoft tarafından yönetilir. Başlangıçta aşağıdaki katkıda bulunanlar tarafından yazılmıştır.

Genel olmayan LinkedIn profillerini görmek için LinkedIn'de oturum açın.

Sonraki adım