Todos os produtos
Search
Central de documentação

AI Guardrails:Detecção síncrona

Última atualização: Jun 27, 2026

Extrai texto de imagens por reconhecimento óptico de caracteres (OCR) usando a API /green/image/scan. Essa API retorna o texto detectado, sua posição na imagem e uma sugestão de revisão em uma única chamada síncrona.

Pré-requisitos

Antes de começar, verifique se você tem:

  • Uma conta Alibaba Cloud com o Content Moderation ativado

  • Um AccessKey ID e um AccessKey Secret

  • Imagens acessíveis por URLs públicas HTTP ou HTTPS

Como funciona

  1. Envie uma solicitação para /green/image/scan com scenes definido como ["ocr"] e uma lista de URLs de imagens.

  2. O Content Moderation baixa cada imagem, executa o OCR e retorna o texto detectado com as coordenadas da caixa delimitadora.

  3. Verifique o campo suggestion na resposta para determinar se o texto detectado exige revisão manual.

Os resultados geralmente retornam em até 1 segundo. O tempo máximo de resposta é de 6 segundos. Solicitações que excedem esse limite retornam um erro de tempo limite.

Observações de uso

Faturamento: A chamada desta operação gera cobranças. Para detalhes de preços, consulte a documentação de faturamento.

Tempo limite de download de imagem: Se não for possível baixar uma imagem dentro de 3 segundos, a solicitação retornará um erro de tempo limite. Armazene as imagens em um serviço estável e de baixa latência, como Object Storage Service (OSS) ou Content Delivery Network (CDN), para minimizar falhas de download.

Imagens com muito texto: O tempo de processamento do OCR aumenta conforme a quantidade de palavras na imagem. Para imagens com grande volume de texto, como documentos digitalizados, use a moderação assíncrona.

Image requirements:

  • Protocolo: apenas URLs HTTP ou HTTPS

  • Formatos: PNG, JPG, JPEG, BMP, GIF, WEBP

  • Tamanho máximo: 20 MB (aplica-se tanto à moderação síncrona quanto à assíncrona)

  • Resolução mínima recomendada: 256 × 256 pixels

Limites de QPS

Esta operação suporta até 10 solicitações por segundo (QPS) por conta. Exceder esse limite aciona o controle de fluxo.

Enviar uma solicitação

Endpoint

POST http(s)://[Endpoint]/green/image/scan

Parâmetros da solicitação

Nome

Tipo

Obrigatório

Descrição

scenes

StringArray

Sim

O cenário de detecção. Defina como ["ocr"].

tasks

JSONArray

Sim

As imagens a serem verificadas. Até 100 itens por solicitação. Para enviar 100 itens em uma única solicitação, aumente o número de tarefas simultâneas para mais de 100. Consulte Parâmetros de tarefa.

bizType

String

Não

O identificador do cenário de negócios. Padrão: default. Use este parâmetro para aplicar uma política de moderação personalizada configurada no console do Content Moderation. Se não for definido, a política padrão será aplicada. Para instruções de configuração, consulte Personalizar políticas para moderação assistida por máquina.

Parâmetros de tarefa

Cada elemento no array tasks descreve uma imagem a ser verificada.

Nome

Tipo

Obrigatório

Descrição

url

String

Sim

A URL pública HTTP ou HTTPS da imagem. Comprimento máximo: 2.048 caracteres.

dataId

String

Não

O identificador personalizado para esta imagem. Deve ser único dentro da solicitação. Retornado na resposta para correlação.

interval

Integer

Não

O intervalo de captura de quadros para imagens GIF ou longas. Consulte Moderação de GIF e imagens longas.

maxFrames

Integer

Não

O número máximo de quadros a serem capturados. Padrão: 1. Consulte Moderação de GIF e imagens longas.

Os parâmetros interval e maxFrames devem ser usados juntos.

Interpretar a resposta

Uma chamada bem-sucedida (HTTP 200) retorna um array data em que cada elemento corresponde a uma imagem enviada.

Campos da resposta

Nome

Tipo

Descrição

code

Integer

O código de resultado para esta imagem. 200 indica sucesso.

msg

String

A mensagem de resultado.

taskId

String

O ID gerado pelo sistema para esta tarefa de detecção.

dataId

String

O valor dataId da sua solicitação, se fornecido.

url

String

A URL da imagem da sua solicitação.

results

Array

Os resultados da detecção. Presente quando code é 200. Consulte Campos de resultado.

Campos de resultado

Cada elemento em results contém a saída do OCR para a imagem.

Nome

Tipo

Descrição

scene

String

O cenário de detecção. Sempre ocr.

label

String

A classificação do resultado da detecção. Valores válidos: ocr (texto detectado), normal (nenhum texto encontrado).

suggestion

String

A ação recomendada. Valores válidos: pass (nenhuma ação necessária), review (o texto requer revisão humana).

ocrData

Array

O texto completo detectado, combinado em uma única string geralmente armazenada no primeiro elemento do array. Não retornado se nenhum texto for detectado.

ocrLocations

Array

A posição e o conteúdo de cada região de texto detectada. Não retornado se nenhum texto for detectado. Consulte Campos ocrLocation.

frames

Array

Resultados de OCR por quadro para imagens GIF. Retornado apenas quando vários quadros são capturados.

rate

Float

Uma pontuação de confiança. Não significativa no cenário de OCR.

Campos ocrLocation

Cada entrada em ocrLocations descreve uma região de texto detectada. A origem das coordenadas é o canto superior esquerdo da imagem, com x aumentando para a direita e y aumentando para baixo.

Nome

Tipo

Descrição

text

String

O texto detectado nesta região.

x

Float

A distância horizontal da borda esquerda da imagem até a borda esquerda da região de texto, em pixels.

y

Float

A distância vertical da borda superior da imagem até a borda superior da região de texto, em pixels.

w

Float

A largura da região de texto, em pixels.

h

Float

A altura da região de texto, em pixels.

ocrData contém o texto combinado de todas as regiões detectadas como uma única string. ocrLocations fornece a posição de cada região de texto individual. Use ocrLocations quando precisar localizar ou destacar um texto específico na imagem.

Moderação de GIF e imagens longas

Por padrão, apenas o primeiro quadro de um GIF ou imagem longa é verificado. Use interval e maxFrames juntos para verificar vários quadros.

  • interval: Verifica um quadro a cada n quadros, onde n é o valor de interval.

  • maxFrames: Limita o número total de quadros verificados.

Se interval × maxFrames for menor que o número total de quadros na imagem, o sistema ajusta automaticamente o intervalo para ceil(total_frames / maxFrames) a fim de distribuir a cobertura uniformemente.

O que conta como imagem longa:

Orientação

Condição

Retrato (alta)

Altura > 400 px E proporção altura:largura > 2,5:1. Contagem de quadros = round(altura ÷ largura).

Paisagem (larga)

Largura > 400 px E proporção largura:altura > 2,5:1. Contagem de quadros = round(largura ÷ altura).

Exemplo: Com interval: 2 e maxFrames: 100, o sistema verifica um quadro a cada dois quadros, até o máximo de 100 quadros. As cobranças são aplicadas por quadro verificado.

Exemplo

Solicitação

POST http(s)://[Endpoint]/green/image/scan
<Common request parameters>

{
    "scenes": ["ocr"],
    "tasks": [
        {
            "dataId": "test_data_xxxx",
            "url": "https://aliyundoc.com/test_image_xxxx.png"
        }
    ]
}

Resposta

{
    "code": 200,
    "msg": "OK",
    "requestId": "C4AB08A9-AD75-4410-859B-0B9EF6DFC3C4",
    "data": [
        {
            "code": 200,
            "msg": "OK",
            "dataId": "test_data_xxxx",
            "taskId": "img5A@k7a@B4q@6K@d9nfKgOs-1s****",
            "url": "https://aliyundoc.com/test_image_xxxx.png",
            "extras": {},
            "results": [
                {
                    "scene": "ocr",
                    "label": "ocr",
                    "suggestion": "review",
                    "rate": 99.91,
                    "ocrData": [
                        "hello, this is a test text."
                    ],
                    "ocrLocations": [
                        {
                            "text": "hello",
                            "x": 41,
                            "y": 84,
                            "w": 83,
                            "h": 26
                        },
                        {
                            "text": " this is a test text.",
                            "x": 78,
                            "y": 114,
                            "w": 95,
                            "h": 25
                        }
                    ]
                }
            ]
        }
    ]
}

Neste exemplo, suggestion: review significa que o texto detectado requer revisão humana antes de qualquer ação adicional. ocrData contém a string completa combinada "hello, this is a test text.", enquanto ocrLocations fornece a posição exata em pixels de cada fragmento de texto na imagem.

Próximos passos