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 :
function calculateFinalPrice(price: number, discount: number): number {Copilot utilise le code autour pour proposer :
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 :
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 :
Copilot utilise des données pour répondre à ta demande.avec :
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 :
| Plan | Données d’interaction et entraînement des modèles |
|---|---|
| Copilot Business et Copilot Enterprise | GitHub 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 :
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 :
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) :
IDE → service GitHub Copilot → modèle IA → réponse → IDEQuand tu utilises Copilot Chat sur GitHub.com :
GitHub.com → Copilot service → contexte repo / PR / issue si autorisé → modèle → réponseExemple 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 :
external systems
third-party tools
Bing search
MCP server
repository context
organization policiesTu dois penser :
Data sharing + permissions + admin controlsBonne réponse type
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 :
- Développeur
- IDE / GitHub.com / CLI
- Collecte du contexte autorisé
- Prompt building
- Proxy filtering / services Copilot
- Modèle IA
- Réponse générée
- Post-processing
- Suggestion / réponse affichée
- Validation humaine
- 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.
- Données d’interaction et entraînement des modèles
Pratique : Ordonner le data flow
Les étapes sont mélangées. Utilise les boutons Monter et Descendre, puis vérifie l’ordre.
- Modèle IA
- Post-processing
- Tests / review / merge
- Développeur
- Réponse générée
- Proxy filtering / services Copilot
- IDE / GitHub.com / CLI
- Prompt building
- Collecte du contexte autorisé
- Suggestion / réponse affichée
- Validation humaine
Questions de la leçon
Chargement de la question…
Pour finir
À retenir
- 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.
Objectif GH-300
- Flux et partage des données (Explain data usage, flow, and sharing)
Achèvement
Il reste à faire : , .