resemble-detect

Par github · awesome-copilot

Détection de deepfakes et sécurité des médias — détectez les contenus audio, images, vidéos et textes générés par IA, retracez les sources de synthèse, appliquez des filigranes, vérifiez l'identité des locuteurs et analysez le renseignement médiatique avec Resemble AI

npx skills add https://github.com/github/awesome-copilot --skill resemble-detect

Resemble Detect — Détection de deepfakes et sécurité médias

Analysez l'audio, les images, les vidéos et le texte pour détecter les manipulations synthétiques, le contenu généré par l'IA, les filigranes, l'identité du locuteur et l'intelligence médias en utilisant la plateforme Resemble AI.

Principe fondamental — LA LOI DE FER

« NE JAMAIS DÉCLARER UN MÉDIA COMME RÉEL OU FAUX SANS UN RÉSULTAT DE DÉTECTION COMPLÉTÉ. »

Ne devinez pas, n'inférez pas et ne spéculez pas sur l'authenticité du média. Chaque affirmation d'authenticité doit être soutenue par une tâche Resemble detect complétée avec un label, un score et un status: "completed" retourné. Si la détection est encore processing, attendez. Si elle a failed, dites-le — ne substituez pas votre propre jugement.

Quand utiliser

Utilisez cette skill chaque fois que la demande de l'utilisateur implique l'un de ces éléments :

  • Vérifier si l'audio, la vidéo, l'image ou le texte est généré par l'IA ou manipulé
  • Détecter les deepfakes dans n'importe quel format médias
  • Vérifier l'authenticité ou la provenance du média
  • Identifier quelle plateforme d'IA a synthétisé l'audio (traçage de source)
  • Appliquer ou détecter les filigranes sur les médias
  • Analyser les médias pour les informations sur le locuteur, l'émotion, la transcription ou la désinformation
  • Poser des questions en langage naturel sur les résultats de détection
  • Associer ou vérifier l'identité du locuteur par rapport aux profils vocaux connus
  • Détecter le texte généré par l'IA ou écrit par machine
  • Toute mention de : « deepfake », « détection de faux », « média synthétique », « vérification vocale », « filigrane », « médias-légistes », « vérification d'authenticité », « traçage de source », « est-ce réel », « texte généré par l'IA », « détection de texte »

NE PAS utiliser pour la synthèse vocale, le clonage vocal ou la transcription parole-texte — ce sont des capacités distinctes de Resemble.

Arbre décisionnel des capacités

L'utilisateur veut… Utiliser Point de terminaison API
Vérifier si le média est généré par l'IA / deepfake Deepfake Detection POST /detect
Savoir quelle plateforme d'IA a créé le faux audio Audio Source Tracing POST /detect avec flag
Obtenir les infos du locuteur, émotion, transcription Intelligence POST /intelligence
Poser des questions sur une détection complétée Detect Intelligence POST /detects/{uuid}/intelligence
Appliquer un filigrane invisible au média Watermark Apply POST /watermark/apply
Vérifier si le média contient un filigrane Watermark Detect POST /watermark/detect
Vérifier l'identité du locuteur par rapport aux profils Identity Search POST /identity/search
Vérifier si le texte est généré par l'IA Text Detection POST /text_detect
Créer un profil d'identité vocale pour correspondance future Identity Create POST /identity

Lorsque plusieurs capacités s'appliquent (par ex., l'utilisateur veut détection de deepfake ET intelligence), combinez-les en un seul appel POST /detect en utilisant le flag intelligence: true plutôt que de faire des demandes séparées.

Configuration requise

  • Clé API : Token Bearer du tableau de bord Resemble AI (défini comme RESEMBLE_API_KEY)
  • URL de base : https://app.resemble.ai/api/v2
  • En-tête d'autorisation : Authorization: Bearer <RESEMBLE_API_KEY>
  • Exigence média : Tous les médias doivent être à une URL HTTPS publiquement accessible

Si l'utilisateur fournit un chemin de fichier local au lieu d'une URL, informez-le que le fichier doit d'abord être hébergé à une URL HTTPS publique. Ne tentez pas de télécharger les fichiers locaux vers l'API. (Exception : POST /text_detect accepte le contenu texte en ligne.)

Outils MCP disponibles

Lorsque le serveur MCP Resemble est connecté, utilisez ces outils au lieu d'appels API bruts :

Outil Objectif
resemble_docs_lookup Obtenir la documentation complète pour tout sujet detect
resemble_search Rechercher dans toute la documentation
resemble_api_endpoint Obtenir le schéma OpenAPI exact pour tout point de terminaison
resemble_api_search Trouver des points de terminaison par mot-clé
resemble_get_page Lire des pages de documentation spécifiques
resemble_list_topics Lister tous les sujets disponibles

Modèle d'utilisation des outils : Utilisez resemble_docs_lookup avec le sujet "detect" pour obtenir l'image complète, puis resemble_api_endpoint pour les schémas exacts de requête/réponse avant de faire des appels API.

Référence API complète

Les schémas détaillés de requête/réponse pour chaque point de terminaison sont dans references/api-reference.md. Consultez-le avant de faire tout appel API pour vérifier les noms de paramètres exacts et les formes de réponse. Les sections ci-dessous couvrent la prise de décision ; la référence couvre les formats exacts des champs.


Phase 1 : Détection de deepfake

La capacité centrale. Soumettez l'audio, l'image ou la vidéo pour analyse de contenu généré par l'IA via POST /detect.

Flags clés à considérer :

  • visualize: true — générer des artefacts de heatmap/visualisation
  • intelligence: true — exécuter l'intelligence multimodale avec la détection (économise un aller-retour)
  • audio_source_tracing: true — identifier quelle plateforme d'IA a synthétisé le faux audio (ne s'active que sur l'audio "fake")
  • use_reverse_search: true — activer la recherche d'images inversée (image uniquement)
  • zero_retention_mode: true — auto-suppression du média après analyse (pour le contenu sensible)

La détection est asynchrone. Interrogez GET /detect/{uuid} à des intervalles de 2s → 5s → 10s jusqu'à ce que status soit "completed" ou "failed". La plupart se terminent en 10–60 secondes.

Formats supportés : Audio (WAV, MP3, OGG, M4A, FLAC) · Vidéo (MP4, MOV, AVI, WMV) · Image (JPG, PNG, GIF, WEBP)

Lecture des résultats

  • Audio — verdict dans metrics — utiliser label et aggregated_score
  • Image — verdict dans image_metrics — utiliser label et score ; ifl contient une heatmap de couche de fréquence invisible
  • Vidéo — verdict dans video_metrics — arbre hiérarchique des résultats de frames/segments ; la vidéo avec audio retourne à la fois metrics et video_metrics

Voir references/api-reference.md pour les schémas de réponse complets.

Interprétation des scores

Plage de scores Interprétation
0,0 – 0,3 Forte indication d'authenticité/réalité du média
0,3 – 0,5 Inconclusion — recommander une analyse supplémentaire
0,5 – 0,7 Probablement synthétique — signaler pour examen
0,7 – 1,0 Haute confiance synthétique/généré par l'IA

Présentez toujours les scores dans le contexte. Dites « La détection a retourné un score de 0,87, indiquant une haute confiance que cet audio est généré par l'IA » — jamais simplement « c'est faux ».


Phase 2 : Intelligence — Analyse médias

Aperçus structurés riches sur les médias : infos locuteur, émotion, transcription, traduction, désinformation, anomalies.

Deux façons d'exécuter Intelligence :

  1. Combiné avec détection — ajouter intelligence: true à POST /detect (préféré ; un appel)
  2. AutonomePOST /intelligence avec une URL (quand vous ne voulez que l'analyse, pas un verdict deepfake)

Les champs structurés audio/vidéo incluent : speaker_info, language, dialect, emotion, speaking_style, context, message, abnormalities, transcription, translation, misinformation.

Les champs structurés image incluent : scene_description, subjects, authenticity_analysis, context_and_setting, abnormalities, misinformation.

Detect Intelligence — Poser des questions sur les résultats

Après la fin d'une détection, posez des questions en langage naturel via POST /detects/{detect_uuid}/intelligence avec { "query": "..." }. Retourne un UUID de question — interrogez GET /detects/{detect_uuid}/intelligence/{question_uuid} jusqu'à completed.

Bonnes questions à suggérer :

  • « Résumez les résultats de détection en langage clair »
  • « Quels indicateurs spécifiques suggèrent que c'est généré par l'IA ? »
  • « Comment les résultats de détection audio et vidéo diffèrent-ils ? »
  • « Quel est le niveau de confiance et que signifie-t-il ? »
  • « Y a-t-il des incohérences dans l'analyse ? »

Prérequis : La détection doit avoir status: "completed". Soumettre une question contre une détection en cours de traitement ou échouée retourne 422.

Voir references/api-reference.md pour les paramètres complets.


Phase 3 : Traçage de source audio

Quand l'audio est étiqueté "fake", identifiez quelle plateforme d'IA l'a généré.

Activez-le en définissant audio_source_tracing: true dans la demande POST /detect. Le résultat apparaît dans la réponse de détection sous audio_source_tracing.label.

Étiquettes connues : resemble_ai, elevenlabs, real, et autres à mesure que le modèle s'étend.

Important : Le traçage de source ne s'exécute que sur l'audio étiqueté "fake". L'audio réel ne produit pas de résultat de traçage de source.

Requêtes autonomes : GET /audio_source_tracings et GET /audio_source_tracings/{uuid}.


Phase 4 : Filigranage

Appliquez des filigranes invisibles aux médias pour le suivi de provenance, ou détectez les filigranes existants.

  • Appliquer : POST /watermark/apply avec url, optionnel strength (0,0–1,0), optionnel custom_message. Ajouter Prefer: wait pour réponse synchrone, ou interroger GET /watermark/apply/{uuid}/result. La réponse inclut l'URL watermarked_media.
  • Détecter : POST /watermark/detect avec url. L'audio retourne { has_watermark, confidence } ; l'image/vidéo retourne { has_watermark }.

Voir references/api-reference.md pour les règles de paramètres exacts.


Phase 5 : Identité — Vérification du locuteur (Bêta)

Créez des profils d'identité vocale et associez l'audio entrant à ceux-ci.

Fonctionnalité bêta — nécessite de rejoindre le programme aperçu. Informez l'utilisateur s'il rencontre des erreurs d'accès.

  • Créer un profil : POST /identity avec { audio_url, name }
  • Rechercher : POST /identity/search avec { audio_url, top_k }

La réponse retourne les correspondances classées avec confidence (plus haut = plus fort) et distance (plus bas = correspondance plus proche).

Voir references/api-reference.md pour les schémas complets.


Phase 6 : Détection de texte

Détectez si le contenu texte est généré par l'IA ou écrit par un humain via POST /text_detect.

Fonctionnalité bêta — nécessite le rôle detect_beta_user ou un plan de facturation incluant le produit dfd_text.

Paramètres clés :

  • text (obligatoire, max 100 000 caractères)
  • threshold (par défaut 0,5)
  • privacy_mode: true — contenu texte non stocké après analyse
  • callback_url — webhook de notification asynchrone

Ajouter Prefer: wait pour réponse synchrone, ou interroger GET /text_detect/{uuid}. La réponse inclut prediction ("ai" ou "human") et confidence (0,0–1,0).

Voir references/api-reference.md pour le schéma complet et le format de callback.


Workflows recommandés

Analyse médias-légistes complète (La plus approfondie)

Pour une analyse complète, combinez toutes les capacités :

  1. Soumettez la détection avec tous les flags activés :
    {
      "url": "https://example.com/suspect.mp4",
      "visualize": true,
      "intelligence": true,
      "audio_source_tracing": true,
      "use_reverse_search": true
    }
  2. Interrogez jusqu'à status: "completed"
  3. Lisez metrics / image_metrics / video_metrics pour le verdict
  4. Lisez intelligence.description pour l'analyse structurée des médias
  5. Si l'audio est étiqueté "fake", vérifiez audio_source_tracing.label pour la plateforme source
  6. Posez des questions de suivi via Detect Intelligence si quelque chose a besoin de clarification
  7. Vérifiez les filigranes via POST /watermark/detect si la provenance est pertinente

Vérification d'authenticité rapide (La plus rapide)

  1. Soumettez détection minimale : { "url": "..." }
  2. Interrogez jusqu'à fin
  3. Vérifiez label et aggregated_score (audio) ou label et score (image/vidéo)
  4. Signalez le résultat avec contexte du score

Pipeline de provenance (Créateurs de contenu)

  1. Appliquez le filigrane au contenu original : POST /watermark/apply
  2. Distribuez le média avec filigrane
  3. Plus tard, vérifiez la provenance : POST /watermark/detect par rapport à toute copie

Signaux d'alerte — Arrêtez et réévaluez

  • Déclarer l'authenticité sans résultat de détection — Ne dites jamais qu'un média est réel ou faux basé sur l'inspection visuelle/auditive seule
  • Ignorer le score et signaler seulement l'étiquette — Un étiquette "fake" avec score 0,51 signifie quelque chose de très différent du score 0,95
  • Soumettre des chemins de fichiers locaux à l'API — L'API nécessite des URL HTTPS publiquement accessibles (ne s'applique pas à la détection de texte)
  • Envoyer du texte plus long que 100 000 caractères à la détection de texte — Diviser en chunks ou informer l'utilisateur de la limite
  • Interroger trop agressivement — Commencez à des intervalles de 2s, recul exponentiel ; ne boucleriez pas à <1s
  • Poser des questions Detect Intelligence avant la fin de la détection — Résulte en erreur 422
  • Attendre le traçage de source sur l'audio « réel » — Le traçage de source ne s'exécute que sur l'audio étiqueté "fake"
  • Traiter les fonctionnalités bêta (Identity, Text Detection) comme prêtes pour la production — Avertissez les utilisateurs du statut bêta
  • Ignorer zero_retention_mode pour les médias sensibles — Suggérez toujours ce flag quand l'utilisateur indique que le média est sensible ou privé
  • Faire plusieurs appels API séparés quand les flags peuvent se combiner — Utilisez intelligence: true et audio_source_tracing: true sur l'appel de détection au lieu de demandes séparées

Directives de présentation des résultats

Lors de la présentation des résultats aux utilisateurs :

  1. Commencez par le verdict — « La détection indique que cet audio est probablement généré par l'IA (score : 0,87) »
  2. Fournir le contexte du score — Utilisez la table d'interprétation des scores ci-dessus
  3. Mentionner les limitations — La détection est probabiliste, non une preuve absolue
  4. Inclure les prochaines étapes exploitables — Suggérez les requêtes d'intelligence, le traçage de source ou les vérifications de filigrane selon les besoins
  5. Pour les résultats inconclusifs (0,3–0,5) — Énoncez explicitement que le résultat est inconclusion et recommandez une analyse supplémentaire avec différents paramètres ou examen manuel
  6. Ne jamais présenter la détection comme preuve légale — Les résultats de détection sont des outils analytiques, non des certifications médico-légales

Gestion des erreurs

Erreur Cause Résolution
400 Corps de requête invalide ou url manquante Vérifier les paramètres obligatoires
401 Clé API invalide ou manquante Vérifier RESEMBLE_API_KEY
404 UUID de détection non trouvé Vérifier l'UUID de la réponse de création
422 Détection non complétée (pour Intelligence) Attendre que la détection atteigne le statut completed
429 Limité en débit Recul et nouvelle tentative avec délai exponentiel
500 Erreur serveur Réessayez une fois, puis signalez à l'utilisateur

Notes sur la confidentialité et la conformité

  • Mode zéro rétention : Définir zero_retention_mode: true pour auto-supprimer le média après analyse. L'URL est éditée et media_deleted est défini sur true après fin.
  • Mode confidentialité texte : Définir privacy_mode: true sur la détection de texte pour empêcher le contenu texte d'être stocké après analyse.
  • Traitement des données : Les URL de médias et le contenu texte sont stockés par défaut. Pour les workflows sensibles à la conformité GDPR, activez la rétention zéro (médias) ou le mode confidentialité (texte).
  • Sécurité callback : Si vous utilisez callback_url, assurez-vous que le point de terminaison est HTTPS et authentifié côté réception.

Skills similaires