07 Données et architecture

Usage, flux et partage des données

Cette leçon contient des faits datés. Dates et sources

7.4 Data usage 🧾

Définition

Le data usage décrit comment les données sont utilisées par Copilot pour fournir une réponse ou une suggestion.

Selon le contexte, les données peuvent être utilisées pour :

  • générer une suggestion inline ;
  • répondre dans Copilot Chat ;
  • expliquer du code ;
  • générer des tests ;
  • produire un résumé de PR ;
  • reviewer du code ;
  • aider un agent à travailler sur une issue ;
  • améliorer la pertinence du résultat.

Exemple inline suggestion

Tu écris :

TypeScript
function calculateFinalPrice(price: number, discount: number): number {

Copilot utilise le code autour pour proposer :

TypeScript
function calculateFinalPrice(price: number, discount: number): number {
  return price - discount;
}

Données utilisées :

  • langage
  • nom de fonction
  • types
  • contexte du fichier

Exemple Copilot Chat

Tu demandes :

Texte
Explain this service and identify security risks.

Données utilisées :

  • prompt
  • code sélectionné
  • fichiers ouverts
  • instructions projet
  • éventuellement contexte repo selon surface et permissions

Exemple Copilot cloud agent

GitHub indique que Copilot cloud agent utilise le prompt, les commentaires et le code du repository comme contexte, et peut utiliser la recherche sémantique de code pour trouver du code pertinent. (docs.github.com)

Donc un agent peut utiliser davantage de contexte repository qu’une simple suggestion inline locale.

Point important : usage ≠ entraînement

Un piège classique consiste à confondre :

Texte
Copilot utilise des données pour répondre à ta demande.

avec :

Texte
Copilot entraîne forcément le modèle sur ton code.

Ce n’est pas la même chose, et la réponse dépend du plan :

PlanDonnées d’interaction et entraînement des modèles
Copilot Business et Copilot EnterpriseGitHub n’utilise pas ces données pour entraîner ses modèles
Copilot Free, Pro et Pro+les données d’interaction (entrées, sorties acceptées ou modifiées, extraits de code et contexte associé) peuvent servir à entraîner et améliorer les modèles, sauf si l’utilisateur désactive ce réglage dans ses paramètres de confidentialité ; vérifie l’annonce et le réglage actuels

Le contenu d’un dépôt privé « au repos » n’est pas utilisé. En revanche, le code d’un dépôt privé que Copilot traite pendant que tu l’utilises peut faire partie des données d’interaction des plans individuels. Cette règle est récente et peut évoluer : vérifie l’annonce officielle de GitHub avant de répondre sur un cas précis.

Pour l’examen, retiens surtout :

Texte
Data usage = utilisation opérationnelle des données pour produire une réponse.
Entraîner un modèle est un autre sujet : il dépend du plan et d’un réglage.

Bonne pratique

Toujours penser :

Texte
Est-ce que la donnée que je fournis est nécessaire ?
Est-elle sensible ?
Est-elle autorisée par les policies ?
Puis-je utiliser un exemple anonymisé ?

7.5 Data sharing 🔄

Définition

Le data sharing concerne le partage ou la circulation des données entre :

  • ton IDE ou GitHub.com ;
  • les services GitHub Copilot ;
  • les modèles IA utilisés ;
  • les systèmes associés ;
  • éventuellement des services tiers selon les fonctionnalités activées.

Exemple simple

Quand tu utilises Copilot dans ton IDE (vue simplifiée) :

Texte
IDE → service GitHub Copilot → modèle IA → réponse → IDE

Quand tu utilises Copilot Chat sur GitHub.com :

Texte
GitHub.com → Copilot service → contexte repo / PR / issue si autorisé → modèle → réponse

Exemple avec Bing ou recherche externe

GitHub indique que lorsque le participant @github est utilisé dans Copilot Chat, Copilot peut rassembler du contexte depuis du code stocké sur GitHub et des résultats Bing si l’administrateur l’a activé. (docs.github.com)

Quand la recherche web est utilisée, le contenu du prompt et du contexte sert à générer une requête de recherche en ton nom ; cette requête relève de la déclaration de confidentialité de Microsoft. Un administrateur d’enterprise peut activer ou désactiver Bing pour l’organisation.

Donc selon la configuration, certaines sources externes peuvent enrichir la réponse.

Exemple avec MCP

MCP peut connecter Copilot à d’autres systèmes.

GitHub définit MCP comme un protocole permettant d’étendre les capacités de Copilot en l’intégrant avec d’autres systèmes. (docs.github.com)

Cela signifie qu’une organisation doit contrôler :

  • quels serveurs MCP sont autorisés ;
  • quelles données sont accessibles ;
  • quelles permissions sont accordées ;
  • quels outils peuvent être invoqués.

À retenir pour l’examen

Si une question parle de :

Texte
external systems
third-party tools
Bing search
MCP server
repository context
organization policies

Tu dois penser :

Texte
Data sharing + permissions + admin controls

Bonne réponse type

Texte
Only share the minimum necessary data, respect organization policies, avoid secrets, and ensure external integrations are approved and governed.

7.12 Schéma global du data flow 🧭

Voici une vue simplifiée :

Schéma conceptuel
  1. Développeur
  2. IDE / GitHub.com / CLI
  3. Collecte du contexte autorisé
  4. Prompt building
  5. Proxy filtering / services Copilot
  6. Modèle IA
  7. Réponse générée
  8. Post-processing
  9. Suggestion / réponse affichée
  10. Validation humaine
  11. Tests / review / merge

C’est la même chaîne que le cycle de vie de 7.8, vue autrement : 7.8 la raconte du point de vue du développeur (neuf moments), ce schéma du point de vue des composants (onze blocs). Les deux sont des modèles conceptuels simplifiés : le contexte est collecté avant le prompt building, le proxy filtering et les services Copilot précèdent le modèle, le post-processing le suit, et la validation humaine vient en dernier.

À retenir pour le GH-300

  • Data usage : les données servent à produire la réponse, et leur usage dépend de la fonctionnalité (inline, Chat, cloud agent).
  • Utiliser des données pour répondre n’est pas entraîner un modèle : Business et Enterprise ne servent pas à l’entraînement ; pour Free, Pro et Pro+, cela dépend d’un réglage (règle datée).
  • Data sharing : circulation des données vers les services Copilot, les modèles et les intégrations activées (recherche web, MCP), à encadrer par des policies et des permissions minimales.
  • Le flux va du développeur à la surface, au contexte, au prompt, au contrôle, au modèle, puis revient traité jusqu’à la validation humaine.

Faits datés de cette leçon

Ces points changent avec le produit. Chacun indique quand il a été vérifié et où le contrôler.

D3 · Données et architecture de GitHub Copilot · 10–15 %