Passer au contenu principal

Aperçu

Des annotations ont été ajoutées à l’Objet Post pour tous les endpoints v2 qui renvoient un Objet Post. Les annotations de Post offrent un moyen de comprendre des informations contextuelles sur le Post lui‑même. Bien que 100 % des Posts soient examinés, en raison du contenu du texte du Post, seule une partie d’entre eux est annotée.
  1. Annotations d’entités (NER) : Les entités incluent des personnes, des lieux, des produits et des organisations et sont fournies dans la section de payload entity. Elles sont attribuées automatiquement en fonction de ce qui est explicitement mentionné (reconnaissance d’entités nommées) dans le texte du Post.
  2. Annotations de contexte : Issues de l’analyse du texte d’un Post, les annotations de contexte incluent un appariement domaine‑entité pour aider à découvrir des Posts sur des sujets qui étaient auparavant difficiles à mettre en évidence. Nous utilisons actuellement plus de 80 domaines pour catégoriser les Posts. Un fichier CSV des entités d’annotation de contexte disponibles est proposé dans notre GitHub repository.

Types d’annotation de Post

Entités

Les annotations d’entités sont des entités définies par programme dans le champ entities et sont restituées comme des annotations dans la charge utile. Chaque annotation comporte un score de confiance et indique où, dans le texte du Post, les entités ont été identifiées (à l’aide des champs start et end). Les types d’annotations d’entités comprennent :
  • Personne - Exemples : Barack Obama, Daniel, George W. Bush
  • Lieu - Exemples : Detroit, Cali, San Francisco
  • Produit - Exemples : Mountain Dew, Mozilla Firefox
  • Organisation - Exemples : Chicago White Sox, IBM
  • Autre - Exemples : diabète, Super Bowl 50

Context

Dernière mise à jour : juin 2022 Les annotations de context sont fournies dans le champ context_annotations de la charge utile. Elles sont inférées à partir d’une analyse sémantique des mots-clés, hashtags, handles, etc., dans le texte du Post et produisent des libellés de domaine et/ou d’entité. Actuellement, nous utilisons plus de 80 domaines, comme indiqué dans le tableau ci-dessous.
Catégories de domaineCodes de domaine
3: Émissions TV46: Catégorie de marque
4: Épisodes TV47: Marque
6: Événements sportifs48: Produit
10: Personne54: Musicien
11: Sport55: Genre musical
12: Équipe sportive56: Acteur
13: Lieu58: Personnalité du divertissement
22: Genres TV60: Athlète
23: Chaînes TV65: Vertical Centres d’intérêt et loisirs
26: Ligue sportive66: Catégorie Centres d’intérêt et loisirs
27: Match de football américain67: Centres d’intérêt et loisirs
28: Match de NFL68: Match de hockey
29: Événements71: Jeu vidéo
31: Communauté78: Éditeur de jeux vidéo
35: Politiques79: Matériel de jeu vidéo
38: Course électorale83: Match de cricket
39: Match de basket84: Livre
40: Série sportive85: Genre littéraire
43: Match de football86: Film
44: Match de baseball87: Genre cinématographique
45: Vertical de marque88: Organe politique
46: Catégorie de marque89: Album musical
47: Marque90: Station de radio
48: Produit91: Podcast
54: Musicien92: Personnalité sportive
55: Genre musical93: Entraîneur
56: Acteur94: Journaliste
58: Personnalité du divertissement95: Chaîne TV [Entity Service]
60: Athlète109: Tendances récurrentes
65: Vertical Centres d’intérêt et loisirs110: Comptes viraux
66: Catégorie Centres d’intérêt et loisirs114: Concert
67: Centres d’intérêt et loisirs115: Conférence de jeux vidéo
68: Match de hockey116: Tournoi de jeux vidéo
71: Jeu vidéo117: Festival de cinéma
78: Éditeur de jeux vidéo118: Cérémonie de remise de prix
79: Matériel de jeu vidéo119: Jour férié
83: Match de cricket120: Créateur numérique
84: Livre122: Personnage fictif
85: Genre littéraire130: Franchise multimédia
86: Film131: Taxonomie Twitter unifiée
87: Genre cinématographique136: Personnalité du jeu vidéo
88: Organe politique137: Équipe d’eSports
89: Album musical138: Joueur d’eSports
90: Station de radio139: Communauté de fans
91: Podcast149: Ligue d’eSports
92: Personnalité sportive152: Alimentation
93: Entraîneur155: Météo
94: Journaliste156: Villes
95: Chaîne TV [Entity Service]157: Écoles et universités
109: Tendances récurrentes158: Points d’intérêt
110: Comptes viraux159: États
114: Concert160: Pays
115: Conférence de jeux vidéo162: Exercice et fitness
116: Tournoi de jeux vidéo163: Voyage
117: Festival de cinéma164: Domaines d’étude
118: Cérémonie de remise de prix165: Technologie
119: Jour férié166: Actions
120: Créateur numérique167: Animaux
122: Personnage fictif171: Actualités locales
130: Franchise multimédia172: Émission TV mondiale
131: Taxonomie Twitter unifiée173: Taxonomie des produits Google
136: Personnalité du jeu vidéo174: Actifs numériques et cryptomonnaies
137: Équipe d’eSports175: Événements d’urgence
138: Joueur d’eSports
Remarque : Le domaine 131 (Unified Twitter Taxonomy) renvoie à la taxonomie des centres d’intérêt destinée aux utilisateurs d’X. Cette taxonomie alimente des fonctionnalités de la plateforme telles que les Topics.

Demande d’annotations

Exemple de requête

curl --location --request GET 'https://api.x.com/2/tweets/1212092628029698048?tweet.fields=context_annotations,entities' --header 'Authorization: Bearer $BEARER_TOKEN'

Exemple de réponse

{
    "data": {
        "context_annotations": [
            {
                "domain": {
                    "id": "119",
                    "name": "Holiday",
                    "description": "Jours fériés comme Noël ou Halloween"
                },
                "entity": {
                    "id": "1186637514896920576",
                    "name": "Réveillon du Nouvel An"
                }
            },
            {
                "domain": {
                    "id": "119",
                    "name": "Holiday",
                    "description": "Jours fériés comme Noël ou Halloween"
                },
                "entity": {
                    "id": "1206982436287963136",
                    "name": "Bonne Année : C'est enfin 2020 partout !",
                    "description": "Découvrez les feux d'artifice et autres célébrations alors que les gens du monde entier entrent dans la nouvelle année.\nPhoto via @GettyImages"
                }
            },
            {
                "domain": {
                    "id": "45",
                    "name": "Secteur de Marque",
                    "description": "Entités de niveau supérieur qui décrivent le secteur d'activité d'une Marque"
                }
            },
            {
                "domain": {
                    "id": "46",
                    "name": "Catégorie de Marque",
                    "description": "Catégories au sein des Secteurs de Marque qui affinent la portée des Marques"
                },
                "entity": {
                    "id": "781974596752842752",
                    "name": "Services"
                }
            },
            {
                "domain": {
                    "id": "47",
                    "name": "Brand",
                    "description": "Marques et Entreprises"
                },
                "entity": {
                    "id": "10045225402",
                    "name": "Twitter"
                }
            }
        ],
        "entities": {
            "annotations": [
                {
                    "start": 144,
                    "end": 150,
                    "probability": 0.626,
                    "type": "Product",
                    "normalized_text": "Twitter"
                }
            ],
            "urls": [
                {
                    "start": 222,
                    "end": 245,
                    "url": "https://t.co/yvxdK6aOo2",
                    "expanded_url": "https://x.com/LovesNandos/status/1211797914437259264/photo/1",
                    "display_url": "pic.x.com/yvxdK6aOo2"
                }
            ]
        },
        "id": "1212092628029698048",
        "text": "Nous pensons que la meilleure version future de notre API naîtra de sa construction avec VOUS. Voici à une autre excellente année avec tous ceux qui développent sur la plateforme Twitter. Nous avons hâte de continuer à travailler avec vous dans la nouvelle année. https://t.co/yvxdK6aOo2"
    }
}

App d’exemple

Découvrez le Post Entity Extractor sur Glitch pour identifier facilement les annotations de context dans les Posts et voir comment cette fonctionnalité fonctionne.

Foire aux questions

Annotations de contexte

Les questions ci-dessous portent spécifiquement sur l’élément « annotations de contexte » des annotations de Tweet. Pour plus d’informations, veuillez consulter la page Présentation.
X classe les Tweets de façon sémantique, c’est-à-dire que nous constituons des listes de mots-clés, de hashtags et de @handles pertinents pour un sujet donné. Si un Tweet contient le texte que nous avons défini, il sera étiqueté en conséquence. Cela diffère d’une approche d’apprentissage automatique, où un modèle est entraîné spécifiquement à classer du texte (dans ce cas, des Tweets) et à produire un score de probabilité avec la sortie/la classification.
Les annotations de X sont élaborées par des experts du domaine à l’aide de processus de recherche et d’assurance qualité perfectionnés au fil de plusieurs années. Ce processus est appuyé par des outils personnalisés afin de faire évoluer le suivi des data à grande échelle tout en maintenant d’excellentes performances en précision et rappel. Par ailleurs, nos data font l’objet d’audits réguliers par une équipe interne et ont obtenu un score de précision d’environ 80 % au cours des derniers trimestres.
Les membres de l’équipe effectuent quotidiennement un contrôle qualité de nos entités afin d’assurer une grande précision et un excellent rappel. Par ailleurs, notre travail est audité chaque trimestre par une équipe interne, qui examine manuellement 10 000 Tweets sur l’ensemble de nos domaines pour calculer un score de précision.
Pour certains domaines, comme le sport et la télévision, nous nous appuyons sur l’ingestion automatisée pour étoffer notre graphe. Dans le domaine de l’actualité, nous suivons les données relatives aux histoires publiées par l’équipe Twitter Moments. Par ailleurs, l’équipe utilise diverses méthodes de recherche pour identifier des sujets à suivre qui suscitent un fort volume de conversations sur la plateforme.
Le suivi des données commence dès qu’une entité est publiée ; en conséquence, nous n’annotons pas les Tweets publiés avant le début du suivi d’une entité donnée. Par exemple, si une marque ou entreprise émergente est ajoutée à la taxonomie, nous n’annoterons pas rétroactivement les Tweets concernant cette marque antérieurs à l’ajout de l’annotation.
Oui. La couverture linguistique peut varier selon le domaine et le marché. L’anglais et le japonais sont inclus dans la majorité des plus grandes entités. Ci-dessous, une liste des langues et des principaux marchés actuellement couverts :
  1. Anglais (États-Unis, Royaume-Uni)
  2. Japonais (Japon)
  3. Portugais (Brésil)
  4. Espagnol (Argentine, Mexique, Espagne)
  5. Hindi (Inde)
  6. Arabe (Arabie saoudite)
  7. Turc (Turquie)
  8. Indonésien (Indonésie)
  9. Russe (Russie)
  10. Français (France)
À venir (~S2 2021) :
  1. Allemand (Allemagne)
  2. Tamoul (Inde)
Ci-dessous, un tableau des 15 principaux pays classés selon la plus grande couverture de Tweets annotés :
RangCode paysPays% de Tweets annotés
1INInde41%
2VNViêt Nam36%
3GBGrande-Bretagne36%
4ECÉquateur35%
5PEPérou33%
6USÉtats-Unis32%
7CACanada32%
8AUAustralie31%
9JPJapon31%
10PHPhilippines30%
11SGSingapour30%
12MYMalaisie30%
13MXMexique30%
14GBGrande-Bretagne29%
15NGNigeria29%
Les annotations de Tweet reposent sur les sémantiques suivantes pour annoter un Tweet :
  • Comptes — nous pouvons annoter des tweets provenant d’un handle donné ou mentionnant ce handle
  • Hashtags
  • Mots-clés/expressions
Pour les clients qui connaissent les API de streaming filtré telles que PowerTrack, les sémantiques utilisées par les annotations sont, en principe, similaires aux règles booléennes définies pour filtrer un stream de Tweets. Si un Tweet correspond aux conditions sémantiques sous-jacentes, il sera tagué en conséquence.
L’objectif est d’annoter autant de Tweets que possible ; toutefois, plusieurs raisons expliquent pourquoi certains Tweets ne sont pas annotés :
  • Certains Tweets ne sont pas suffisamment riches sur le plan sémantique pour être libellés et ne peuvent pas être tagués selon nos règles d’annotation actuelles
  • Certains Tweets ne sont pas thématiques
  • Le Tweet porte sur un sujet très éphémère qui n’est pas présent dans notre graphe
  • Nous ne couvrons pas la langue/le marché
  • Nous couvrons la langue/le marché, mais il nous manque un sujet ou un terme/compte/hashtag spécifique lié à un sujet que nous suivons déjà
Une entité peut appartenir à plusieurs domaines. Les id de domaine peuvent changer, mais l’id de l’entité reste le même. Donald Glover est une personne (domaine 10), un acteur (domaine 56) et un musicien (domaine 54), mais son id d’entité est toujours 875072662527029248.
Le suivi commence un mois avant la sortie. Pour les blockbusters très attendus, comme un film Marvel, nous pouvons commencer à les suivre dès les premiers teasers annonçant la sortie.
Non.
I