Desen söz dizimi
Önemli
LUIS 1 Ekim 2025'te kullanımdan kaldırılacak ve 1 Nisan 2023'den itibaren yeni LUIS kaynakları oluşturamayacaksınız. Devam eden ürün desteği ve çok dilli özelliklerden yararlanmak için LUIS uygulamalarınızı konuşma dili anlayışına geçirmenizi öneririz.
Desen söz dizimi, konuşma için kullanılan bir şablondur. Şablonda, eşleştirmek istediğiniz sözcükler ve varlıkların yanı sıra yoksaymak istediğiniz sözcükler ve noktalama işaretleri bulunmalıdır. Normal bir ifade değildir.
Dikkat
Desenler yalnızca makine öğrenmesi varlık üst bilgilerini içerir, alt varlıkları içermez.
Desenlerdeki varlıklar, küme ayraçları {}
ile çevrelenir. Desenler varlıkları ve rollere sahip varlıkları içerebilir. Pattern.any yalnızca desenlerde kullanılan bir varlıktır.
Desen söz dizimi aşağıdaki söz dizimini destekler:
İşlev | Sözdizimi | İç içe yerleştirme düzeyi | Örnek |
---|---|---|---|
entity | {} - kıvrımlı köşeli ayraçlar | 2 | {entity-name} formu nerede? |
isteğe bağlı | [] - köşeli ayraçlar İsteğe bağlı ve gruplandırma birleşimlerinin iç içe yerleştirme düzeylerinde 3 sınırı vardır |
2 | Soru işareti isteğe bağlıdır [?] |
gruplandırma | () - parantezler | 2 | is (a | b) |
veya | | - dikey çubuk (boru) Bir gruptaki dikey çubuklarda (Veya) 2 sınırı vardır |
- | Form nerede ({form-name-short} | {form-name-long} | {form-number}) |
konuşmanın başlangıcı ve/veya sonu | ^-düzeltme imi | - | ^konuşmaya başla konuşma tamamlandı^ {number} varlığıyla tüm konuşmanın ^katı değişmez değer eşleşmesi^ |
Desenlerde iç içe söz dizimi
Köşeli ayraçlar içeren isteğe bağlı söz dizimi iki düzey iç içe yerleştirilebilir. Örneğin: [[this]is] a new form
. Bu örnek aşağıdaki konuşmalara izin verir:
İç içe isteğe bağlı konuşma örneği | Açıklama |
---|---|
bu yeni bir formdur | desendeki tüm sözcükleri eşleştirir |
yeni bir formdur | dış isteğe bağlı sözcükle ve isteğe bağlı olmayan sözcüklerle desende eşleşir |
yeni form | yalnızca gerekli sözcüklerle eşleşir |
Parantezler içeren gruplandırma söz dizimi iki düzey iç içe yerleştirilebilir. Örneğin: (({Entity1:RoleName1} | {Entity1:RoleName2} ) | {Entity2} )
. Bu özellik, üç varlığın herhangi birinin eşleştirilmesine olanak tanır.
Entity1, kaynak (Seattle) ve hedef (Kahire) gibi rollere sahip bir Konum ise ve Varlık 2 bir liste varlığından (RedWest-C) bilinen bir yapı adıysa, aşağıdaki konuşmalar bu desene eşlenir:
İç içe gruplandırma konuşma örneği | Açıklama |
---|---|
RedWest-C | dış gruplandırma varlığıyla eşleşir |
Seattle | iç gruplandırma varlıklarından biriyle eşleşir |
Kahire | iç gruplandırma varlıklarından biriyle eşleşir |
İsteğe bağlı söz dizimine sahip gruplar için iç içe yerleştirme sınırları
İsteğe bağlı söz dizimi ile gruplandırma birleşiminin 3 iç içe yerleştirme düzeyi sınırı vardır.
İzin Verilir | Örnek |
---|---|
Yes | ( [ ( test1 | test2 ) ] | test3 ) |
Hayır | ( [ ( [ test1 ] | test2 ) ] | test3 ) |
or-ing söz dizimine sahip gruplar için iç içe geçirme sınırları
Or-ing söz dizimi ile gruplandırma birleşiminde 2 dikey çubuk sınırı vardır.
İzin Verilir | Örnek |
---|---|
Yes | ( test1 | test2 | ( test3 | test4 ) ) |
Hayır | ( test1 | test2 | test3 | ( test4 | test5 ) ) |
Desen şablonuna varlık eklemek için söz dizimi
Desen şablonuna varlık eklemek için varlık adını gibi Who does {Employee} manage?
küme ayraçlarıyla çevreleyin.
Varlıkla desen |
---|
Who does {Employee} manage? |
Desen şablonuna varlık ve rol eklemek için söz dizimi
Varlık rolü, varlık adından sonra iki nokta üst üste ve ardından rol adıyla gösterilir {entity:role}
. Desen şablonuna rolü olan bir varlık eklemek için varlık adını ve rol adını gibi Book a ticket from {Location:Origin} to {Location:Destination}
küme ayraçlarıyla çevreleyin.
Varlık rolleriyle desen |
---|
Book a ticket from {Location:Origin} to {Location:Destination} |
Desen şablonuna pattern.any eklemek için söz dizimi
Pattern.any varlığı, desene farklı uzunlukta bir varlık eklemenize olanak tanır. Desen şablonu izlendiği sürece desen.herhangi bir uzunluk olabilir.
Desen şablonuna pattern.any varlığı eklemek için Pattern.any varlığını gibi How much does {Booktitle} cost and what format is it available in?
küme ayraçlarıyla çevrelenin.
Pattern.any varlığıyla desen |
---|
How much does {Booktitle} cost and what format is it available in? |
Desendeki kitap başlıkları |
---|
Bu kitabın maliyeti ne kadardır ve hangi biçimde kullanılabilir? |
Maliyeti ne kadardır ve hangi biçimde kullanılabilir? |
Köpeğin Meraklı Olayı'nın Gece Saati maliyeti ne kadardır ve hangi biçimde kullanılabilir? |
Luis, Pattern.any varlığını temel alarak kitap başlığının nerede sona erdiğini bildiği için, kitap başlığının sözcükleri LUIS için kafa karıştırıcı değildir.
Açık listeler
aşağıdaki durumlarda özel duruma izin vermek için yazma API'sini kullanarak Açık Liste oluşturun:
- Deseniniz bir Pattern.any içeriyor
- Ve bu desen söz dizimi, ifadeye göre yanlış varlık ayıklama olasılığı sağlar.
Örneğin, hem isteğe bağlı söz dizimi, []
hem de varlık söz dizimi {}
içeren bir desenin, verileri yanlış ayıklamak için birleştirilmiş olduğunu varsayalım.
[{person}]' adlı {subject} hakkındaki '[bul] e-postası' desenini göz önünde bulundurun.
Aşağıdaki konuşmalarda konu ve kişi varlığı doğru ve yanlış ayıklanır:
İfade | Entity | Doğru ayıklama |
---|---|---|
Chris'ten köpekler hakkında e-posta | subject=dogs person=Chris |
✔ |
La Mancha'dan adam hakkında e-posta | subject=the man person=La Mancha |
X |
Yukarıdaki tabloda konu (kitap başlığı) olmalıdır the man from La Mancha
, ancak konu isteğe bağlı sözcüğünü from
içerdiğinden başlık yanlış tahmin edilir.
Bu özel durumu desene düzeltmek için, açık liste için yazma API'sini kullanarak {subject} varlığı için açık liste eşleşmesi olarak ekleyinthe man from la mancha
.
Şablon konuşmasında isteğe bağlı metni işaretlemek için söz dizimi
Normal ifade köşeli ayraç söz dizimini kullanarak ifadedeki isteğe bağlı metni işaretleyin []
. İsteğe bağlı metin, yalnızca iki köşeli ayraç kadar köşeli ayraç iç içe yerleştirebilir.
İsteğe bağlı metin içeren desen | Anlamı |
---|---|
[find] email about {subject} [from {person}] |
find ve from {person} isteğe bağlıdır |
'Bana yardım edebilir misin[?] | Noktalama işareti isteğe bağlıdır |
Noktalama işaretleri (?
, !
, .
) yoksayılmalıdır ve desenlerde köşeli ayraç söz dizimini kullanarak bunları yoksaymalısınız.
Sonraki adımlar
Desenler hakkında daha fazla bilgi edinin:
.json yanıtında yaklaşımın nasıl döndürülür anlayın.