Aracılığıyla paylaş


Azure OpenAI API isteklerinin önbelleğe alınmış yanıtlarını alma

UYGULANANLAR: Tüm API Management katmanları

İlkeyi azure-openai-semantic-cache-lookup kullanarak, istemden önceki isteklere vektör yakınlığına ve belirtilen benzerlik puanı eşiğine göre yapılandırılmış bir dış önbellekten Azure OpenAI Sohbet Tamamlama API'sinin isteklerine yönelik yanıtların önbellek aramasını gerçekleştirin. Yanıt önbelleğe alma, arka uç Azure OpenAI API'sine uygulanan bant genişliğini ve işleme gereksinimlerini azaltır ve API tüketicileri tarafından algılanan gecikme süresini azaltır.

Not

Not

İlkenin öğelerini ve alt öğelerini ilke bildiriminde sağlanan sırayla ayarlayın. API Management ilkelerini ayarlama veya düzenleme hakkında daha fazla bilgi edinin.

Azure AI Foundry modellerinde desteklenen Azure OpenAI

İlke, aşağıdaki türlerdeki AI Foundry modellerinde Azure OpenAI'den API Management'a eklenen API'lerle kullanılır:

API türü Desteklenen modeller
Sohbet tamamlama gpt-3.5

gpt-4

gpt-4o

gpt-4o-mini

o1

o3
Eklemeler text-embedding-3-large

text-embedding-3-small

text-embedding-ada-002
Yanıtlar (önizleme) gpt-4o (Sürümler: 2024-11-20, 2024-08-06, 2024-05-13)

gpt-4o-mini (Sürüm: 2024-07-18)

gpt-4.1 (Sürüm: 2025-04-14)

gpt-4.1-nano (Sürüm: 2025-04-14)

gpt-4.1-mini (Sürüm: 2025-04-14)

gpt-image-1 (Sürüm: 2025-04-15)

o3 (Sürüm: 2025-04-16)

o4-mini (Sürüm: '2025-04-16)

Not

Geleneksel tamamlama API'leri yalnızca eski model sürümleriyle kullanılabilir ve destek sınırlıdır.

Modeller ve özellikleri hakkında güncel bilgiler için bkz. Foundry Modellerinde Azure OpenAI.

İlke bildirimi

<azure-openai-semantic-cache-lookup
    score-threshold="score threshold to return cached response"
    embeddings-backend-id ="backend entity ID for embeddings API"
    embeddings-backend-auth ="system-assigned"             
    ignore-system-messages="true | false"      
    max-message-count="count" >
    <vary-by>"expression to partition caching"</vary-by>
</azure-openai-semantic-cache-lookup>

Özellikler

Öznitelik Açıklama Zorunlu Varsayılan
puan eşiği Puan eşiği, depolanan yanıtını döndürmek için gelen istemlerin önbelleğe alınmış bir istemle ne kadar yakından eşleşmesi gerektiğini tanımlar. Değer 0,0 ile 1,0 arasında değişir. Düşük değerler, eşleşme için daha yüksek semantik benzerlik gerektirir. Daha fazla bilgi edinin. Evet Yok
embeddings-backend-id Arka uç Ekleme api çağrısı kimliği. Evet Yok
embeddings-backend-auth Ekleme API'si arka ucu için kullanılan kimlik doğrulaması. Evet. olarak ayarlanmalıdır system-assigned. Yok
sistem iletilerini yoksay Boole. olarak ayarlandığında true (önerilir), önbellek benzerliğini değerlendirmeden önce sohbet tamamlama isteminden sistem iletilerini kaldırır. Hayır yanlış
max-message-count Belirtilirse, önbelleğe alma atlanan kalan iletişim kutusu iletilerinin sayısı. Hayır Yok

Öğeler

Veri Akışı Adı Açıklama Zorunlu
vary-by Çalışma zamanında belirlenen ve değerini önbelleğe alan özel bir ifade. Birden çok vary-by öğe eklenirse, benzersiz bir birleşim oluşturmak için değerler birleştirilir. Hayır

Kullanım

Kullanım notları

  • Bu ilke, ilke bölümünde yalnızca bir kez kullanılabilir.
  • Sorgular için önbelleğe alınmış yanıtların score-threshold ne zaman döndürüleceğini belirlemek üzere doğru duyarlılığın kullanıldığından emin olmak için değerini uygulamanıza göre ayarlayın. 0,05 gibi düşük bir değerle başlayın ve önbellek isabetlerinin kaçırılma oranını iyileştirmek için ayarlayın.
  • 0,2'nin üzerindeki puan eşiği önbellek uyumsuzluğuna neden olabilir. Hassas kullanım örnekleri için daha düşük değer kullanmayı göz önünde bulundurun.
  • Belirli kullanıcı veya kullanıcı grubu tanımlayıcılarıyla belirterek vary-by önbellek girdilerine kullanıcılar arası erişimi denetleme.
  • Eklemeler modeli, istem birimine ve istemlere uyum sağlamak için yeterli kapasiteye ve yeterli bağlam boyutuna sahip olmalıdır.
  • İstem saldırılarından korunmak için istem kalkanı ile llm-content-safety ilkesi eklemeyi göz önünde bulundurun.
  • Herhangi bir önbellek aramadan hemen sonra hız sınırı ilkesi (veya anahtara göre hız sınırı ilkesi) yapılandırmanızı öneririz. Bu, önbellek kullanılamıyorsa arka uç hizmetinizin aşırı yüklenmesini engeller.

Örnekler

İlgili azure-openai-semantic-cache-store ilkesiyle ilgili örnek

Aşağıdaki örnekte, benzerlik puanı eşiği 0,05 olan benzer önbelleğe alınmış yanıtları almak için ilkeyle birlikte azure-openai-semantic-cache-lookup ilkenin nasıl kullanılacağı azure-openai-semantic-cache-store gösterilmektedir. Önbelleğe alınan değerler çağıranın abonelik kimliğine göre bölümlenir.

Not

Önbellek aramasının ardından, çağrı sayısını sınırlamaya ve önbelleğin kullanılabilir olmaması durumunda arka uç hizmetinde aşırı yüklemeyi önlemeye yardımcı olmak için bir hız sınırı ilkesi (veya anahtara göre hız sınırı ilkesi) ekleyin.

<policies>
    <inbound>
        <base />
        <azure-openai-semantic-cache-lookup
            score-threshold="0.05"
            embeddings-backend-id ="azure-openai-backend"
            embeddings-backend-auth ="system-assigned" >
            <vary-by>@(context.Subscription.Id)</vary-by>
        </azure-openai-semantic-cache-lookup>
        <rate-limit calls="10" renewal-period="60" />
    </inbound>
    <outbound>
        <azure-openai-semantic-cache-store duration="60" />
        <base />
    </outbound>
</policies>

İlkelerle çalışma hakkında daha fazla bilgi için bkz: