コンテンツモデレーションAPIが紹介されました

毎日大量のユーザー生成コンテンツを含むアプリケーションがあり、コンテンツを自動的にモデレートする必要がある場合があります。工数がかかるため、コンテンツを手動でモデレートするのは面倒です。そのために IDEソフトウェア から人工知能を使用することが考えられます。不適切なコンテンツを即座に検出し、フォームが公開されるのを防ぎます。

DeepAIによるコンテンツモデレーションAPIとは

DeepAIは、人工知能コンテンツを求める人々の間で非常に人気のある情報源です。人工知能の研究、ガイド、ニュース、APIを提供します。アカウントを作成してすべての人工知能APIにアクセスすることで、APIキーを簡単に取得できます。このリンクにアクセスし、アカウントを作成してからダッシュボードに移動すると、APIキーが取得されます。

https://deepai.org/

Deep.aiの自動コンテンツモデレーションを無料で使用する

登録すると、10,000リクエストに相当する$5USDの無料クレジットが付与されます。登録にクレジットカードは必要ありません。登録後、1000リクエストごとに$0.50 USDを支払うだけで済みます。そうでない場合は、エンタープライズパッケージについて話し合うことができます。

Delphiアプリケーションで使用できるDeep.ai人工知能API

それらは多数のAPIを提供します。このリストからAPIを確認できます。それらのほとんどは、製品ページにもライブデモがあります。

https://deepai.org/apis

彼らの強力なAPIの1つは、「コンテンツモデレーションAPI」です。このAPIは、コンテンツをモデレートするためのすべての詳細を提供します。 APIに提供して画像を提供すると、「仕事に安全ではありません」スコア、不適切なコンテンツに関する説明、不適切なコンテンツの長方形の領域、および100%の信頼度の場合の信頼度スコアが提供されます。このAPIは、アダルトコンテンツ、憎悪のシンボル、銃、不快な言葉を検出できます。

コンテンツモデレーションAPIを使用するには

このコンテンツモデレーションAPIを含むRESTクライアントを使用して、すべてのDeepAIAPIにアクセスできます。このAPIの単純なcurlリクエストは次のようになります。

curl \
    --data 'image=YOUR_IMAGE_URL' \
    -H 'api-key:API_KEY' \
    https://api.deepai.org/api/content-moderation 

それは自明であり、画像のURLまたはローカル画像ファイルを「画像」として提供し、APIキーをヘッダー値として提供しています。リクエストを送信すると、サーバーはJSONレスポンスを送信し、それを解析して画像に関するすべてのモデレート情報を取得できます。サンプルのモデレートは次のようになります。

{
    "id": "UNIQUE_ID",
    "output": {
        "detections": [{
                "confidence": "0.83",
                "bounding_box": [
                    118,
                    89,
                    21,
                    29
                ],
                "name": "Female Breast - Exposed"
            },
            {
                "confidence": "0.92",
                "bounding_box": [
                    142,
                    92,
                    27,
                    27
                ],
                "name": "Female Breast - Exposed"
            },
            {
                "confidence": "0.54",
                "bounding_box": [
                    168,
                    153,
                    19,
                    30
                ],
                "name": "Male Genitalia - Exposed"
            }
        ],
        "nsfw_score": 0.9997197985649109
    }
}

結果を取得するには、JSON内のJSON配列を解析する必要があります。

DelphiからDeep.aiコンテンツモデレーションAPIにアクセスするには

RESTクライアントコンポーネントを使用してこのAPIにアクセスし、デモアプリケーションを簡単に構築できます。制限されたコンテンツの1つが見つかった場合に長方形を描画するデモアプリケーションを作成しましょう。まず、TRESTClient、TRESTRequest、およびTRESTResponseコンポーネントをフォームに追加します。クライアントのベースURLを次のように設定します。

https://api.deepai.org/api/content-moderation

データを安全に投稿するため、RESTRequestのメソッドをrmPOSTに設定します。次に、コーディング時間です。画像、APIキーを設定し、コードで応答とJSON解析を取得する必要があります。この例では、ローカルファイルを参照してリクエストを送信します。応答を解析したら、TImageのキャンバスに長方形を描画します。

RESTAPIでDeep.aiを使用するためのDelphiコード例

procedure TfrmMain.btnModerateClick(Sender: TObject);
var
  lparam : Trestrequestparameter;
  jsonObj: TJSONObject;
  JSonValue  : TJSonValue;
  JSONArray, JSONArrayBound: TJSONArray;
  strJson: string;
  canv: TCanvas;
  i, posTop, posLeft, posWidth, posHeight: Integer;
begin
  lblWait.Visible := true;
  Application.ProcessMessages;
  RESTRequest.Params.Clear;
  RESTResponse.RootElement := '';
  lparam := RESTRequest.Params.AddItem;
  lparam.name := 'api-key';
  lparam.Value := edtAPIKey.Text;
  lparam.ContentType := ctNone;
  lparam.Kind := pkHTTPHEADER;
  lparam.Options := [poDoNotEncode];

  lparam := RESTRequest.Params.AddItem;
  lparam.name := 'image';
  lparam.Value := strImgPath;
  lparam.ContentType := ctNone;
  lparam.Kind := pkFile;
  lparam.Options := [poDoNotEncode];

  RESTRequest.Execute;
  if not RESTResponse.Status.Success then
    showmessage(RESTResponse.StatusText + ' ' +
      inttostr(RESTResponse.StatusCode))
  else
  begin
    canv := imgModerated.Canvas;
    canv.Pen.Color := clRed;
    canv.Pen.Width := 5;

    jsonObj := RESTResponse.JSONValue as TJSONObject;
    JSonValue := jsonObj.Get('output').JsonValue;
    JSONArray := JSonValue.GetValue('detections');

    for I := 0 to JSONArray.Count -1 do
    begin
      JSONArrayBound := JSONArray.Items[I].GetValue('bounding_box');
      posTop :=  strtoint(JSONArrayBound.Items[1].Value);
      posLeft :=  strtoint(JSONArrayBound.Items[0].Value);
      posWidth :=  strtoint(JSONArrayBound.Items[3].Value);
      posHeight :=  strtoint(JSONArrayBound.Items[2].Value);

      canv.MoveTo(posLeft,posTop);
      canv.LineTo(posLeft + posWidth, posTop);

      canv.MoveTo(posLeft + posWidth, posTop);
      canv.LineTo(posLeft + posWidth, posTop + posHeight);

      canv.MoveTo(posLeft + posWidth, posTop + posHeight);
      canv.LineTo(posLeft, posTop + posHeight);

      canv.MoveTo(posLeft, posTop + posHeight);
      canv.LineTo(posLeft,posTop);

      canv.TextOut(posLeft,posTop, JSONArray.Items[I].GetValue('name'));
    end;
  end;
  lblWait.Visible := false;
end;

Deep.aiからのJSON結果の解析

このコードでは、「api-key」と「image」の2つのパラメーターを追加してリクエストを実行し、成功した場合はJSON値を解析します。次に、不適切なコンテンツが見つかった場合、TImageのキャンバスに赤い長方形が描画されます。最終結果は次のようになります。

コンテンツモデレーションAPI

このリンクからデモアプリケーションをダウンロードして、APIキーで使用することもできます。

閉じる

RAD Studio、Delphi、C++Builderを用いれば、開発時間を短縮し、より早く市場に投入可能!
Design. Code. Compile. Deploy.
トライアル版をダウンロード   いますぐアップグレード!

   Delphi Community Edition(無料)   C++Builder Community Edition(無料)