安全とコミュニティ · basic

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

定義済みの安全カテゴリでコンテンツを分類し、レビューが必要なものを見つけます。

choicenoul

使用する場面

  • Community routing
  • Comment triage
  • Human-review queues

State の例

{
  "reply": "This number is wrong — the release notes say 1.8%, not 18%. Here is the source.",
  "context": "Reply to a technical product post"
}

判断の質問

choicereply_type

Classify the primary role of this reply.

  • question — Genuine request for information
  • correction — Relevant factual correction
  • joke — Humor or playful sarcasm
  • promotion — Unsolicited promotion or spam
  • hostility — An attack meant to provoke
  • other — None of the above
noulhuman_review

Should a human moderator review this reply under the community's moderation workflow?

期待される出力

A semantic reply category plus an independent probability that human review is warranted.

TypeScript

import { choice, noul, TypeSafeClient } from "@typesafe-ai/sdk";

const client = new TypeSafeClient();

const result = await client.systemOne({
  state: {
    reply:
      "This number is wrong — the release notes say 1.8%, not 18%. Here is the source.",
    context: "Reply to a technical product post",
  },
  questions: {
    reply_type: choice("Classify the primary role of this reply.", {
      question: "Genuine request for information",
      correction: "Relevant factual correction",
      joke: "Humor or playful sarcasm",
      promotion: "Unsolicited promotion or spam",
      hostility: "An attack meant to provoke",
      other: "None of the above",
    }),
    human_review: noul(
      "Should a human moderator review this reply under the community's moderation workflow?"
    ),
  },
});

この設計の理由

  • Classification and review escalation are separate decisions.
  • The category set distinguishes factual correction from hostility.

注意点

  • Your actual moderation policy must define what gets removed, warned, or escalated.
  • This demo is not a universal safety policy or legal compliance system.

公式ソース

2026-09-21

次のステップ: Jev Playgroundテンプレート