チャット不適切な言葉フィルター
Last updated on July 15, 2026
注釈:本資料はAI技術を用いて翻訳されています。
概要
チャット不適切用語フィルターは、チャットアプリケーション内でユーザーが入力したテキストから、不適切な表現やコンテンツを自動的に検出してフィルタリングするためのシステムです。不適切用語フィルターの導入は、快適で相互に配慮のあるユーザー体験を保ち、不快なコンテンツを防止し、コミュニティガイドラインを遵守するうえで重要です。不適切な表現には、露骨な言葉、ヘイトスピーチ、その他さまざまな不快なコンテンツが含まれます。フィルターは、これらさまざまな種類の不適切な表現を認識して処理できます。以下の図は、チャット不適切用語フィルターの動作を示しています。

この記事では、不適切用語フィルターを管理する方法について説明します。
前提条件
| 権限 | アクション | 使用方法 |
|---|---|---|
ADMIN:NAMESPACE:*:CHAT:PROFANITY | CREATE, READ, UPDATE, DELETE | 不適切な用語を登録、照会、更新、削除するため。 |
チャット不適切用語フィルターを管理する
-
AccelByte Gaming Services (AGS) 管理ポータルにログインします。
-
チャット不適切用語フィルターを追加するゲームネームスペースに移動します。
-
サイドバーで ソーシャル > チャット > チャット不適切用語フィルター に移動します。まだ用語が追加されていない場合、ページには何も表示されず、チャット不適切用語フィルターのステータスは非アクティブになっています。

-
+ 不適切な用語を登録 をクリックし、以下の詳細を入力します。
- 不適切な用語: フィルタリングしたい用語を入力します。
- 偽陰性: 登録した不適切な用語を含んでおり、使用された場合に検閲される用語のリストを追加します(例: 不適切な用語
ass、偽陰性asshole)。 - 偽陽性: 登録した不適切な用語を含むものの、使用されても検閲しない用語のリストを追加します(例: 不適切な用語
ass、偽陽性mass)。
-
保存 をクリックします。
ユーザーごとの不適切用語設定
プレイヤーが自分のゲームアカウントで不適切用語フィルターを有効または無効に切り替えられるようにするには、以下のコードを使用します。
- Unreal Engine
- OSS
- Unity
FAccelByteModelsSetUserChatConfigurationRequest UserChatConfiguration;
UserChatConfiguration.Config.ProfanityDisabled = true; // 現在のユーザーの不適切な言葉を無効にする場合は true に設定します
FApiClientPtr ApiClient = AccelByteOnlineSubsystemPtr->GetApiClient();
ApiClient->Chat.SetUserChatConfiguration(UserChatConfiguration
, AccelByte::Api::Chat::FSetUserChatConfigurationResponse::CreateLambda(
[&](const FAccelByteSetUserChatConfigurationResponse& Response)
{
UE_LOG(LogTemp, Log, TEXT("ユーザーチャット構成の設定に成功しました。"))
}), FErrorHandler::CreateLambda(
[&](int32 ErrorCode, const FString& ErrorMessage)
{
UE_LOG(LogTemp, Log, TEXT("ユーザーチャット構成の設定に失敗しました。ErrorCode: %d, ErrorMessage: %s"), ErrorCode, *ErrorMessage)
}));
int32 UserNum = 0;
FOnlineChatAccelBytePtr ChatInterface;
FOnlineChatAccelByte::GetFromWorld(GetWorld(), ChatInterface);
FAccelByteModelsSetUserChatConfigurationRequest UserChatConfiguration;
UserChatConfiguration.Config.ProfanityDisabled = true; // 現在のユーザーの不適切な言葉を無効にする場合は true に設定します
// ユーザーチャット構成設定完了のデリゲートをリッスンします
ChatInterface->AddOnSetUserChatConfigurationCompleteDelegate_Handle(UserNum
, FOnSetUserChatConfigurationCompleteDelegate::CreateLambda(
[&](const int32 LocalUserNum, const FAccelByteSetUserChatConfigurationResponse& UserChatConfiguration, const FOnlineError& ErrorInfo)
{
if (LocalUserNum == UserNum)
{
if (ErrorInfo.bSucceeded)
{
UE_LOG(LogTemp, Log, TEXT("ユーザーチャット構成の設定に成功しました。"))
}
else
{
UE_LOG(LogTemp, Log, TEXT("ユーザーチャット構成の設定に失敗しました。ErrorCode: %s, ErrorMessage: %s"), *ErrorInfo.ErrorCode, *ErrorInfo.ErrorRaw)
}
}
}));
ChatInterface->SetUserConfiguration(UserNum, UserChatConfiguration);
// この例の前に、ユーザーの ApiClient が認証されていることを確認してください。
Api.Chat chatService = AccelByteSDK.GetClientRegistry().GetApi().GetChat();
Result<SetUserChatConfigurationResponse> setResult = null;
chatService.SetUserChatConfiguration(isProfanityDisabled: false, result =>
{
if (result.IsError)
{
Debug.LogWarning($"SetUserChatConfiguration に失敗しました [{result.Error.Code}]:{result.Error.Message}");
return;
}
setResult = result;
Debug.Log($"ユーザーチャット構成の設定に成功しました")
});