[+] NFKC Normalization before processing

This commit is contained in:
Azalea 2024-04-18 11:37:40 +09:00
parent 08c27b6c58
commit bf7de99524

View File

@ -13,6 +13,7 @@ import org.springframework.boot.context.properties.ConfigurationProperties
import org.springframework.context.annotation.Configuration
import org.springframework.data.jpa.repository.JpaRepository
import org.springframework.stereotype.Service
import java.text.Normalizer
@Configuration
@ConfigurationProperties(prefix = "aqua-net.openai")
@ -49,7 +50,9 @@ class AquaNetSafetyService(
val safety: AquaNetSafetyRepo,
val openAIConfig: OpenAIConfig
) {
suspend fun isSafe(content: String): Boolean {
suspend fun isSafe(rawContent: String): Boolean {
// NFKC normalize
val content = Normalizer.normalize(rawContent, Normalizer.Form.NFKC)
if (content.isBlank()) return true
async { safety.findByContent(content) }?.let { return it.safe }