Ürün içeriği kalite kontrolleri

Updated 2026-09-05

Yapısal geçerliliği ürün anlamından ayırın. Yerel 40 satırlık Japonca ve Almanca vakada alan kontrolleri geçerken yapay zekâ incelemesi yine düzeltilmesi gereken Japonca ifadeler buldu.

Üretimden önce kalite sözleşmesini tanımlayın

Her alan için kabul kuralları yazın. Kimlik ve revizyon alanları kaynakla eşleşmelidir. Düzenlenebilir metin istenen locale'i kullanmalı, gerekli bilgiyi içermeli ve hedef biçime uymalıdır. İddiaların destekleyici kanıtı gerekir. Tek bir geçti/kaldı etiketi hangi koşulun ürünü engellediğini açıklamak için fazla kabadır.

Makinece kontrol edilebilir kusurları editoryal yargılardan ayrı tutun. Eksik metin ve tanımlayıcı kayması deterministik olarak yerelleştirilebilir. Bir çevirinin faydayı abartıp abartmadığı bağlam ve nitelikli inceleme gerektirir. Her sorunu çözebilecek kişi veya sisteme yönlendirin ve sonucu aday revizyonuna bağlı tutun.

KontrolYararlı kanıtTakip incelemesi
Kimlik ve kaynak revizyonuKesin alan karşılaştırmasıDoğal çeviri
Korunan değerlerTipli skaler eşitliğiDoğru kaynak özelliği
İşaretleme ve yer tutucularAyrıştırıcı ve token sayılarıDoğru ürün iddiaları
İddia incelemesiİddia-kaynak eşlemesiMağaza içe aktarma başarısı
Hedef geri okumasıOnaylı ve saklanan karşılaştırmasıTicari performans

Birleştirmeden sonra korunan değerleri karşılaştırın

Yalnızca izin verilen metin alanlarını üretin, sonra aday kaydını kaynaktan kopyalanan korunan değerlerle birleştirin. Birleştirilen kayıt üzerinde ikinci bir karşılaştırma çalıştırın. Bu, inceleme sırasında yapılan kazara düzenlemelerin yanı sıra eşleyici hatalarını da yakalar.

Aşağıdaki örnek JavaScript, korunan skaler değerleri olan şema doğrulanmış nesneler bekler. Eksik, fazla veya değişmiş korunan anahtarları ve eski kaynak revizyonunu algılar; kararlı sorun kodları döndürür. Şema ve değer doğrulamasını bu yardımcıdan önce yapın, sonra yapısal olarak geçerli adayı editoryal incelemeye yönlendirin.

function checkProtected(source, candidate) {
  const issues = [];
  if (candidate.sourceRevision !== source.sourceRevision) {
    issues.push({ code: "STALE_SOURCE", field: "sourceRevision" });
  }
  const keys = new Set([
    ...Object.keys(source.protected),
    ...Object.keys(candidate.protected),
  ]);
  for (const field of keys) {
    const hasSource = Object.prototype.hasOwnProperty.call(source.protected, field);
    const hasCandidate = Object.prototype.hasOwnProperty.call(candidate.protected, field);
    if (!hasSource || !hasCandidate ||
        !Object.is(source.protected[field], candidate.protected[field])) {
      issues.push({ code: "PROTECTED_FIELD_CHANGED", field });
    }
  }
  return issues;
}

Sayı biçimlendirmesini değerlerden ayrı tutun

Yerelleştirilmiş bir sayı farklı görünebilir fakat aynı saklanan miktarı temsil edebilir. MDN, locale farkında sunum için Intl.NumberFormat'ı belgeler. Biçimlendirmeyi yetkili değer seçildikten sonra uygulayın; bir dil modelinden oluşturulmuş para birimi dizesinden fiyatı yeniden üretmesini istemeyin.

Birimleri, her ölçüye ait birim dahil, sayısal değerlerle birlikte tanımlayın. Dönüşüm yetkiliyse deterministik bir dönüşüm kuralı kullanın ve özgün gösterimi koruyun. Bir cümlede yalnızca rakamları karşılaştırmayın: farklı birimli iki aynı sayı farklı ürünleri tanımlayabilir. Kaynak çözülene kadar eksik birimler onayı engellemelidir.

Yer tutucu çokluğunu ve işaretlemeyi doğrulayın

Kaynak ve adaydaki yer tutucu tokenlarını toplamak için uygulamanın şablon ayrıştırıcısını kullanın. Yalnızca ad kümesini değil, sayıları da karşılaştırın; özgün token hâlâ görünse bile yinelenen bir token cümleyi veya uygulamayı bozabilir. Biçime özgü kaçış kurallarını hedef sınırında tutun.

Aşağıdaki küçük kontrol zaten çıkarılmış tokenları kabul eder. Evrensel bir yer tutucu düzenli ifadesi uygulamaya çalışmaz. HTML'de belge parçasını ayrıştırın ve izin verilen yapıyı ve bağlantıları ayrı karşılaştırın. WordPress kaçış kılavuzu özel oluşturma için önemlidir, ancak kaçışlama tek başına içeriğin amaçlanan anlamını koruduğunu kanıtlayamaz.

function samePlaceholderCounts(sourceTokens, candidateTokens) {
  const counts = new Map();
  for (const token of sourceTokens) {
    counts.set(token, (counts.get(token) ?? 0) + 1);
  }
  for (const token of candidateTokens) {
    if (!counts.has(token)) return false;
    counts.set(token, counts.get(token) - 1);
  }
  return [...counts.values()].every((count) => count === 0);
}

Vaka: alanlar geçerli, ifade yine düzeltme gerektiriyor

xhigh akıl yürütmeyle açıkça gpt-5.6-luna için yapılandırılmış bir çeviri ajanı, 20 sentetik üründen 20 Japonca ve 20 Almanca yama üretti. Deterministik şema, kimlik ve korunan alan kontrolleri 40 birleştirilmiş satırın tamamında geçti. Fiyat, para birimi, malzeme ve ölçüler kaynaktan kopyalandı; üretilen yamalar yalnızca tanımlanan SKU ve locale için title ile description'ı değiştirebiliyordu.

Dokunulmamış Japonca yamalar da yapısal doğrulayıcıyı geçer. Buna rağmen yapay zekâ incelemesi aşağıdaki iki ifade sorununu belirledi ve açıklamalarını revize etti. Bu, korunan bir malzeme alanını kontrol etmenin düzyazının malzemeyi doğru anlattığını kanıtlayamayacağını gösterir. Her şema kontrolü yeşil olsa bile sonuç doğuran her iddiayı kaynağıyla karşılaştırın.

Sıfır şema veya kimlik ihlali ve bekleyen ana dili konuşan ile satıcı incelemesi olan yerel sentetik ürün inceleme raporunun ekran görüntüsü; düzeltilmiş DEMO-003 taslağı görünür.
Luna xhigh vakasının yerel sentetik katalog inceleme raporu. 40 satırın tümü kaydedilmiş şema ve kimlik kontrollerini geçti; Japonca yapay zekâ inceleme düzeltmelerinden sonra anlamsal onay hâlâ beklemede.
Gerçek Japonca taslaklardaki değişikliklerin İngilizce açıklamaları; raw-ja.json özgün çıktıyı korur.
Sentetik ürünKaynak anlamıJaponca yapay zekâ inceleme düzeltmesi
DEMO-003: eskiz defteriKarton arkalıkOluklu kartonun desteklenmeyen iması kaldırıldı
DEMO-010: saklama sepetiToplam iki yan sapBelirsizliği kaldırmak için toplam sap sayısı netleştirildi

İçe aktarmanın yanında inceleme dışa aktarmasını da test edin

OWASP elektronik tablo formül enjeksiyonunu açıklar ve güvenlik dönüşümlerinin tüketiciler arasında farklı olduğunu belirtir. Tedarikçi ve üretilen hücreleri güvenilmeyen sayın. Gerçek elektronik tablo aracı için incelenmiş bir serileştirme politikası kullanın ve yalnızca bellekteki tabloyu değil kaydedilmiş varlığı inceleyin.

Makine içe aktarmalarını inceleme dosyalarından ayrı tutun. Güvenli insan görüntülemesi için eklenen ön ek, içe aktarma sırasında tanımlayıcıyı veya genel açıklamayı sessizce değiştirmemelidir. Kodlama, tırnak işleme ve beklenen satır kimliklerini ayrıştırıcıyla doğrulayın. Elektronik tablo editörünün getirdiği değişikliklerin belirlenip düzeltilmesi için dokunulmamış kaynağı saklayın.

Onayı kesin adaya bağlayın

Olgusal ve dil onayıyla birlikte bir aday revizyonu veya hash saklayın. Sonraki herhangi bir düzenleme, incelenene kadar ilgili onayı geçersiz kılmalıdır. Değişmemiş bir çeviri ürün özelliği değiştikten sonra eski kalabileceğinden son yayımcı güncel kaynak revizyonunu da karşılaştırmalıdır.

Vaka varlıklarında düzeltilmiş Japonca ve Almanca yamalar review_status: unreviewed olarak işaretlenen satırlara birleştirilir. Her iki rapor translation_semantic_review: pending tutar. Yapay zekâ destekli düzeltme revizyon adımıdır; ana dili konuşan veya satıcı imzası değildir. Ham ve revize adayları koruyun, ardından içe aktarma paketine girecek kesin metni uygun inceleyene onaylatın.

Kontrolleri yeniden üretin ve kapsamını açık tutun

Yerel vaka testi kaynak alanı korumasını, yinelenen SKU'yu, eksik SKU'yu ve yasak bir fiyat geçersiz kılmasını çalıştırır. Kaydedilmiş Japonca ve Almanca yamaların salt okunur yeniden birleştirmesi iki doğrulanmış çıktıyı da yeniden üretir. Daha geniş bir katalog için kendi yer tutucu grameriniz, işaretlemeniz ve revizyon politikanız adına kontroller ekleyin; yukarıdaki yardımcılar ayrı örneklerdir, bu 40 satırda kullanılan doğrulayıcı değildir.

Bu, Luna yapılandırmalı yerel bir çeviri vakasıydı; Astra veya ağ geçidi çağrısı ve gerçek mağaza içe aktarması yoktu. Araç API kullanımını, istek kimliklerini veya faturalandırmayı göstermedi; iki çıktı da null kullanım ve maliyet tutar. Yapısal sonucu anlamsal incelemeye ilerlemek için kullanın, ardından yetkili mağaza bağdaştırıcısını ayrı test edin.

node --test examples/commerce-localization-case/case.test.mjs

Sık sorulan sorular

JSON olarak geçerli bir yanıt yine de içe aktarmak için güvensiz olabilir mi?

Evet. Geçerli sözdizimi doğru tanımlayıcıları, kaynak tazeliğini, desteklenen alanları, doğru iddiaları veya onayı kanıtlamaz. Bu sözleşmeleri bağımsız doğrulayın.

Model düzenleyemiyorsa korunan alanları neden karşılaştırayım?

Birleştirme, eşleme ve inceleme aşamaları yine de hata ekleyebilir. Birleştirme sonrası karşılaştırma teslim için hazırlanan gerçek kaydı kontrol eder.

İddiaları izin verilen kelime listesiyle doğrulayabilir miyim?

Bir kelime listesi bazı sorunları işaretleyebilir, ancak bir iddianın anlamını veya gücünü belirleyemez. Cümleyi ürün kanıtıyla karşılaştırarak inceleyin.

Yer tutucu adlarının eşleşmesi yeterli mi?

Gerçek şablon ayrıştırıcısını kullanarak çokluğu da karşılaştırın. Ad kümesi tanıdık görünse bile yinelenen veya eksik token kusur olabilir.

40 satırlık vaka neyi kanıtladı?

Kaydedilen yamalar yapısal hata olmadan birleştirildi ve kaynak kontrollü ürün alanları korundu. Japonca ifadeler yine iki yapay zekâ inceleme düzeltmesi gerektirdi; anlamsal onay her iki dilde beklemede.