すべてのプロダクト
Search
ドキュメントセンター

AI Guardrails:グループから人物を削除する

最終更新日:Jan 08, 2025

このトピックでは、.NET SDK を使用して、指定されたグループから人物を削除する方法について説明します。

使用上の注意

グループから人物を削除しても、人物の情報と画像は削除されません。グループから人物のバインドが解除されるだけです。パラメーターの詳細については、グループから人物を削除するための API 操作 をご参照ください。

前提条件

Content Moderation SDK for .NET の依存関係がインストールされています。依存関係のインストール方法の詳細については、インストール をご参照ください。

説明

インストール トピックに記載されている必要な .NET バージョンを使用して、依存関係をインストールする必要があります。そうしないと、後続の操作呼び出しが失敗します。

指定されたグループから人物を削除するタスクを送信する

using System;
using Newtonsoft.Json;
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Http;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.Green.Model.V20180509;
using System.Collections.Generic;

namespace csharp_sdk_sample
{
    class Program
    {
        static void Main(string[] args)
        {
            /**
             * 環境変数を取得する一般的な方法:
             *     RAM ユーザーの AccessKey ID を取得する: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID");
             *     RAM ユーザーの AccessKey シークレットを取得する: Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET");
             */
            DefaultProfile profile = DefaultProfile.GetProfile(
                    "cn-shanghai",
                    "RAM ユーザーの AccessKey ID を環境変数から取得することをお勧めします",
                    "RAM ユーザーの AccessKey シークレットを環境変数から取得することをお勧めします");
            // 注:インスタンス化されたクライアントはできるだけ再利用することをお勧めします。これにより、モデレーションのパフォーマンスが向上し、クライアントの接続が繰り返されるのを回避できます。
            DefaultAcsClient client = new DefaultAcsClient(profile);

            DeleteGroupsRequest request = new DeleteGroupsRequest();
            request.AcceptFormat = FormatType.JSON;
            request.ContentType = FormatType.JSON;
            request.Method = MethodType.POST;
            request.Encoding = "UTF-8";

            /**
            * personId: カスタム人物の ID。このパラメーターは必須です。
            * groupIds: カスタムグループの ID。このパラメーターは必須です。
            */
            Dictionary<string, object> httpBody = new Dictionary<string, object>();
            httpBody.Add("personId", "Person ID");
            httpBody.Add("groupIds", new List<string> { "Group ID_1", "Group ID_2" });

            request.SetContent(System.Text.Encoding.Default.GetBytes(JsonConvert.SerializeObject(httpBody)), "utf-8", FormatType.JSON);
            try
            {
                DeleteGroupsResponse response = client.GetAcsResponse(request);

                if (response.HttpResponse.Status != 200)
                {
                    Console.WriteLine("リクエストが失敗しました。status:{0}", response.HttpResponse.Status);
                }
                Console.WriteLine(System.Text.Encoding.Default.GetString(response.HttpResponse.Content));
            }
            catch (Exception ex)
            {
                Console.WriteLine("エラー情報で失敗しました: {0}", ex.Message);
            }
        }
    }
}