Referência de design de engenharia

Projete um pipeline de troca de rosto de produção de ponta a ponta

Transforme uma requisição de geração de mídia em uma tarefa própria, observável e corretamente liquidada. Esta referência separa o contrato atual DeepSwapAI API da arquitetura e das decisões de custo total que sua integração deve tomar.

Pela Equipe de Produto DeepSwapAIAtualizado em 27 de julho de 2026Guia de design técnico

Uma referência de contrato público, não um diagrama de infraestrutura privada

Esta é uma referência de design de contrato público, não um diagrama da infraestrutura privada do DeepSwapAI. Ela distingue o comportamento verificado no API público dos controles de integração recomendados. Não divulga topologia do provedor, tecnologia de fila, posicionamento de modelo, número de workers, design de rede interna, throughput, latência, SLA, precisão ou benchmarks de qualidade visual.

Use-a para decidir onde propriedade, validação, estado da tarefa, repetição, liquidação, entrega, exclusão e evidência devem residir em sua própria integração. Para campos e respostas exatos de multipart, use o Documentação API e contrato OpenAPI 3.1. Para os conceitos de pesquisa dentro de localização facial, transferência de identidade, síntese, mesclagem e consistência de vídeo, leia como funciona a troca de rosto por IA.

Cinco workflows assíncronos compartilham uma forma de controle

Todo workflow de geração atual autentica com uma chave Bearer API, aceita mídia multipart, retorna um taskIde expõe status com escopo do proprietário através de GET na mesma rota. A conclusão usa polling; callbacks de webhook e SDKs oficiais de linguagem não estão publicados atualmente.

Fluxo de trabalhoPOST e GET de pollingUnidade de custoLimite primário
Foto/api/ai-tasks6 créditos por tarefa30 MB por imagem
Foto em lote/api/ai-tasks/batch-face-swap6 créditos por saída20 imagens, 95 MB combinados
Foto em grupo mapeada/api/ai-tasks/multi-face-swap6 créditos por rosto de substituição10 rostos mapeados, 95 MB combinados
Vídeo/api/ai-tasks/videoSomente rosto com preservação de cena: 3/s, mínimo 12 em 1080p600 segundos, 95 MB de upload combinado
GIF / clipe curto/api/ai-tasks/gif3 crédito por segundo, mínimo 1230 segundos, 95 MB de destino

O espaço de trabalho ao vivo e a documentação da API continuam sendo a referência para formatos exatos, cobranças mínimas e campos de solicitação. Tarefas de conta e de API exigem um e-mail verificado, apenas uma geração pode ficar ativa por conta e limites esgotados podem retornar HTTP 429 com informações para nova tentativa.

Dê a cada decisão irreversível um proprietário

01

Ingresso e identidade

Finalize TLS, autentique a chave mantida no servidor, atribua um ID de correlação de requisição e vincule cada tarefa a uma conta.

02

Política e validação

Verifique estado de permissão, campos do workflow, tipo de mídia detectado, tamanho em bytes, contagem, duração, mapeamento, prontidão da conta e disponibilidade de crédito.

03

Registro de tarefa

Persista o taskId, proprietário, workflow, cobrança esperada, transições de estado, timestamps e resultado da liquidação antes de retornar o controle.

04

Processamento limitado

Desacople a aceitação da requisição da geração, limite o trabalho ativo e distinga falhas de transporte repetíveis de entradas inválidas.

05

Liquidação

Use uma autoridade atômica para decisões de reserva, conclusão e reembolso de tarefas com falha, para que uma repetição não possa cobrar ou reembolsar duas vezes.

06

Entrega e exclusão

Autorize o acesso ao resultado pelo proprietário da tarefa, aplique a permissão de exportação de imagem e remova a mídia no cronograma documentado de 24 horas.

Da requisição de contrato à exclusão com respaldo de evidência

  1. Congele o contrato público de requisição. Escolha o workflow exato e registre campos, limites de mídia, unidade de custo e estados terminais.
  2. Controle autorização, consentimento e prontidão da conta. Mantenha a chave API no lado do servidor e exija uma decisão de permissão antes de aceitar mídia.
  3. Valide a mídia e calcule o custo antes de enfileirar. Inspecione tipo detectado, tamanho, contagem, duração, mapeamento e créditos disponíveis antes do trabalho caro.
  4. Crie um registro de tarefa durável. Persista propriedade, workflow, cobrança esperada, referências de entrada, estado e taskId.
  5. Processe de forma assíncrona atrás de uma fila limitada. Limite a concorrência e classifique falhas transitórias versus permanentes.
  6. Liquide créditos exatamente uma vez. Comprometa o trabalho concluído e aplique o caminho de reembolso de processamento com falha documentado sem liquidação dupla.
  7. Exponha status com escopo do proprietário e acesso ao resultado. Faça polling em um intervalo medido e pare em COMPLETED, FAILED ou CANCELLED.
  8. Force a exclusão e retenha evidências operacionais. Remova a mídia no cronograma, retendo apenas o mínimo permitido de registro de tarefa, cobrança, segurança e suporte.

Mantenha o estado de processamento separado do estado financeiro

PENDINGPROCESSINGCOMPLETEDou FALHOU / CANCELADO
EventoRegistro de tarefaAção de créditoAção do cliente
Requisição rejeitada antes da criação da tarefaNenhuma tarefa aceitaNão infira uma cobrançaCorrija a requisição ou o estado da conta
Tarefa aceitaPersista taskId e custo esperadoTrate a liquidação como de propriedade do servidorInicie polling medido
Tarefa concluídaResultado terminalTrabalho concluído permanece liquidadoAutorize recuperação do resultado
Falha no processamentoFalha terminalContrato atual reembolsa processamento com falha automaticamenteLeia a falha antes de decidir reenviar
Resultado da resposta incertoReconcilie antes de outro POSTNunca adivinhe a partir de um timeoutUse o taskId armazenado ou o histórico da conta

Nenhum campo idempotency-key está documentado no contrato público. O serviço de chamada deve desabilitar submissão duplicada, persistir o primeiro taskId e reconciliar uma resposta de rede incerta antes de emitir outro POST.

Repita apenas quando a classe de falha permitir

StatusClasse de falhaResposta da arquitetura
400Requisição ou mídia inválidaRejeite permanentemente até que campos ou mídia mudem.
401 / 403Prontidão da chave ou contaGire a chave ou complete a verificação; não faça loop.
402Créditos insuficientesAdicione créditos e envie uma nova tarefa somente após confirmação.
404Proprietário, rota ou taskId incorretosConcilie a identidade e os metadados da tarefa armazenados.
429Limite de taxa ou geração ativaRespeite o Retry-After quando fornecido, adicione jitter e limite as tentativas.
500Falha de aceitação ou leitura temporáriaUse backoff exponencial limitado e reconcilie antes do envio duplicado.

Rastreie decisões de controle sem copiar mídia confidencial para logs

A telemetria de tarefa recomendada inclui um ID de correlação, taskId, identificador da conta, fluxo de trabalho, fatos de mídia sanitizados, valor de crédito esperado, transições de estado, contagem de tentativas, classe de erro, evento de liquidação e timestamp de exclusão. Não registre chaves API, imagens faciais, nomes de arquivo completos enviados, URLs de resultados assinados ou corpos multipartes. A Recomendação de Contexto de Rastreamento W3C define contexto de solicitação interoperável; é uma opção de design, não uma afirmação sobre a implementação privada da DeepSwapAI.

Para defesas de upload, valide nomes de arquivo decodificados, conteúdo detectado, formatos permitidos, contagens e tamanhos; não confie apenas no Content-Type fornecido pelo navegador. O OWASP File Upload Cheat Sheet é a referência de segurança externa. Use o planejador de consentimento e divulgação para o portal de autorização humana e o Centro de Confiança para os limites atuais do serviço público.

Compare gerenciado, auto-hospedado e híbrido na mesma carga de trabalho medida

Não compare um encargo API com aluguel de GPU bruto isoladamente. Fixe primeiro uma janela de carga de trabalho: mix de fluxo de trabalho, duração e resolução da mídia, concorrência de pico, taxa de repetição, retenção, volume de revisão e disponibilidade necessária. Em seguida, atribua todo custo recorrente e relacionado a falhas à mesma janela.

Dimensão de custoAPI GerenciadoAuto-hospedadoHíbridoEvidência a coletar
Capacidade de processamentoTaxa por tarefa ou duração publicadaAluguel ou compra de GPU, capacidade ociosa, escalonamento e tempo de execução do modeloLinha de base interna mais estouro externo ou processamento especializadoUnidades concluídas, duração, resolução, concorrência e utilização
Engenharia e operaçõesIntegração, persistência de tarefas, polling, revisão e tratamento de mudanças de fornecedorServir modelo, fila, atualizações, planejamento de capacidade, implantação e resposta em plantãoOrquestração, abstração de provedor e propriedade da plataforma internaHoras de engenharia medidas, cadência de lançamento e carga de plantão
Segurança e governançaPortal de consentimento da aplicação, política da conta, revisão e evidênciaTodos os controles de moderação, armazenamento, exclusão, controle de acesso e auditoriaControles compartilhados com um proprietário explícito para cada decisãoMinutos de revisão, taxa de escalonamento, escopo de retenção e proprietários de controle
Armazenamento e entregaManipulação de entrada, resultado e rede no lado da aplicaçãoOperações de entrada, intermediário, resultado, backup, saída e exclusãoRegistros internos mais transferências limitadas do provedorBytes retidos, volume de transferência, tempo de retenção e trabalho de exclusão
Falha e confiabilidadeRepetição, reconciliação, tratamento de falha do provedor e custo de trocaRedundância, resposta a incidentes, tarefas com falha, recuperação e capacidade não utilizadaFalha de dependência e falha de orquestração internaTaxa de falha, tempo de recuperação, trabalho duplicado e carga de suporte
Fórmula de TCO comparável: processamento variável + capacidade reservada + engenharia e operações + segurança e governança + armazenamento e entrega + falha e confiabilidade. Use a calculadora de custo de fluxo de trabalho atual para o lado de processamento DeepSwapAI publicado, e use mão de obra medida, cotações de infraestrutura e dados de incidentes para as partes que sua equipe possui.

Este framework não publica nenhum benchmark de preço auto-hospedado e não afirma que gerenciado, auto-hospedado ou híbrido é universalmente mais barato. A decisão depende da carga de trabalho e dos controles que podem ser evidenciados para o mesmo período.

Escolha gerenciado, auto-hospedado ou híbrido pelos controles que você deve possuir

ModeloVocê possuiDependência externaMelhor ajuste
API GerenciadoPortal de consentimento, UX da aplicação, persistência de tarefas, polling, revisão e política de negóciosAPI publicado, limites, preços e comportamento de processamentoEquipes que priorizam velocidade de integração sobre controle de infraestrutura
Auto-hospedadoModelo, capacidade de GPU, fila, moderação, armazenamento, segurança, liquidação, exclusão e resposta a incidentesCadeia de suprimentos de modelo e infraestruturaEquipes com um requisito de controle ou implantação justificado e capacidade operacional
HíbridoPolítica interna, orquestração, registro de auditoria, revisão e abstração de provedorUm ou mais serviços de geração limitadosEquipes que precisam de controle no nível da aplicação sem operar cada componente do modelo
Limite da decisão: esta matriz compara responsabilidade, não qualidade de saída. Ela não estabelece que um modelo de implantação é mais rápido, seguro, barato ou preciso.

Fatos atuais do produto mais padrões externos primários

A Equipe de Produto DeepSwapAI verificou as cinco rotas públicas, autenticação Bearer, solicitações multipartes, estados de tarefa, fluxo de polling, respostas de erro, limite de concorrência, liquidação de crédito, direito a imagem de teste e exclusão de mídia em 24 horas em 22 de julho de 2026. Os controles recomendados são informados pelo Especificação OpenAPI 3.1.2, guia de upload OWASP, NIST AI RMF 1.0, e W3C Trace Context. Consulte a metodologia de verificação de reivindicações para saber como as declarações atuais do produto são separadas da orientação geral de design.

Saiba o que o contrato público estabelece e não estabelece

Esta é a arquitetura de produção privada do DeepSwapAI?

Não. É uma referência de design de contrato público e não divulga topologia do provedor, tecnologia de fila, posicionamento do modelo, número de workers, rede interna ou metas de nível de serviço.

Como um cliente sabe que uma tarefa foi concluída?

Mantenha o taskId retornado pelo POST e faça polling GET na mesma rota de fluxo de trabalho até COMPLETED, FAILED ou CANCELLED. Callbacks de webhook não são publicados atualmente.

A chave API pode ser colocada no código do cliente?

Não. Trate-a como um segredo do lado do servidor e mantenha-a fora de bundles de navegador, binários móveis, repositórios, análises, logs e mensagens de suporte.

O API publica uma chave de idempotência?

Nenhum campo de chave de idempotência está documentado. Evite envio duplicado, persista o primeiro taskId e reconcilie respostas incertas antes de outro POST.

Este design garante taxa de transferência ou qualidade?

Não. Não é um benchmark, SLA, pontuação de precisão ou garantia de qualidade.

Implemente contra o contrato verificado

Use a referência de endpoint exata e o arquivo OpenAPI quando estiver pronto para transformar este modelo de controle em uma integração no lado do servidor.

Abrir documentação API