Перейти к основному содержимому

Модерация

POST /v1/moderations

Классифицирует текст и изображения по политикам безопасности для модерации контента, возвращая флаги категорий и оценки уверенности.

RequestREQUEST
POSThttps://test.kailin.com.cn/v1/moderations
ResponseRESPONSE
Fill in the request and hit Send — the response shows up here

Запрос​

curl https://test.kailin.com.cn/v1/moderations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-token" \
-d '{
"model": "omni-moderation-latest",
"input": "text to review"
}'

Тело запроса​

ПараметрТипОбязательноОписание
modelstringНетПо умолчанию omni-moderation-latest, поддерживает мультимодальный ввод
inputstring / arrayДаТекст для проверки; для мультимодального ввода передайте массив контента

Мультимодальный ввод (текст + изображение):

{
"model": "omni-moderation-latest",
"input": [
{ "type": "moderation_text", "text": "some text" },
{ "type": "moderation_image", "image_url": "https://example.com/img.jpg" }
]
}

Ответ​

{
"id": "modr-abc123",
"model": "omni-moderation-latest",
"results": [
{
"flagged": false,
"categories": {
"harassment": false,
"hate": false,
"sexual": false,
"violence": false
},
"category_scores": {
"harassment": 0.0001,
"hate": 0.0001,
"sexual": 0.0002,
"violence": 0.0003
}
}
]
}
ПолеОписание
results[].flaggedСработала ли политика для контента
results[].categoriesЛогические результаты по категориям (есть и другие категории, например harassment_threatening, self-harm)
results[].category_scoresУверенность 0–1 по каждой категории

Типичное использование​

def check(text: str) -> bool:
resp = client.moderations.create(model="omni-moderation-latest", input=text)
return resp.results[0].flagged # True means the content should be blocked
Примечание

Модерация бесплатна или стоит недорого (зависит от канала). Вызывайте её и для пользовательского ввода, и для вывода модели — так обеспечивается двусторонняя безопасность.