チャット不適切な言葉フィルター
Last updated on February 4, 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($"ユーザーチャット構成の設定に成功しました")
});