<!-- Canonical URL: https://ask.atlascloud.ai/fr/allocate-ai-coding-costs-by-repository-and-project -->

# Comment répartir les coûts de code IA par dépôt et par projet ?

> Émettez des identifiants à portée limitée via une passerelle centrale et attachez à chaque événement facturable des ID immuables de dépôt, projet, tâche, équipe et environnement. Rapprochez l'usage fournisseur dans un registre et séparez les frais partagés du travail directement attribuable.

<!-- Canonical URL: https://ask.atlascloud.ai/allocate-ai-coding-costs-by-repository-and-project -->

# Comment répartir les coûts de code IA par dépôt et par projet ?

Une répartition fiable commence à la requête. Chaque appel doit porter des ID immuables de dépôt, projet, tâche, équipe et environnement avant d'atteindre le fournisseur. Deviner ensuite le propriétaire à partir de l'utilisateur ou du prompt crée des rapports contestables.

La comptabilité a besoin d'une vue estimée quasi temps réel pour les garde-fous et d'une vue rapprochée pour la finance.

## Définir une hiérarchie stable

Choisissez des identifiants qui résistent aux renommages :

| Dimension | Exemple | Usage |
|---|---|---|
| ID du dépôt | `repo_01J...` | Propriété directe du code |
| ID du projet | `proj_checkout` | Initiative ou centre de coûts |
| ID de tâche | `task_8421` | Exécution individuelle |
| ID d'équipe | `team_payments` | Rapport organisationnel |
| Environnement | `local`, `ci`, `prod` | Séparer expérimentation et exploitation |

Les noms affichés sont des attributs, pas des clés. Enregistrez les dates de changement de propriétaire.

## Étiqueter automatiquement les requêtes

Dérivez l'ID d'un registre fiable lié au remote Git normalisé, pas du dossier local. Obtenez projet et tâche depuis le ticket, la CI ou le plan de contrôle. Émettez des identifiants courts limités à ces balises.

Autorisez des exceptions documentées en enregistrant auteur et raison. Le texte libre ne doit pas être la base comptable.

## Capturer un schéma d'événement unique

Normalisez les réponses :

```json
{
  "event_id": "costevt_01J...",
  "task_id": "task_8421",
  "repository_id": "repo_01J...",
  "project_id": "proj_checkout",
  "team_id": "team_payments",
  "provider_request_id": "req_...",
  "model": "provider/model-version",
  "input_units": 18240,
  "output_units": 1330,
  "estimated_cost_usd": 0.084,
  "final_cost_usd": null,
  "rate_card_version": "2026-10-01"
}
```

Utilisez la même enveloppe pour recherche, embeddings, sandboxes et autres outils avec leur unité.

## Attribuer explicitement le travail multidépôt

Une tâche couvrant plusieurs dépôts doit avoir une tâche parente et des spans enfants. Débitez les appels directs au dépôt actif et la planification réellement partagée au projet parent.

Ne partagez pas tout également par défaut. Si l'attribution exacte est impossible, documentez la règle et restez cohérent.

## Séparer dépense directe et frais partagés

Les appels directs appartiennent à la tâche balisée. Passerelle, évaluations, observabilité, caches et ingénierie de plateforme vont dans un pool partagé.

Répartissez ce pool selon un critère visible, comme dépense directe, sièges ou tâches, et publiez les deux totaux.

| Classe de coût | Méthode | Le propriétaire peut-il agir ? |
|---|---|---|
| Inférence | Balises de requête | Oui |
| Recherche et sandbox | Balises de requête | Oui |
| Passerelle partagée | Pourcentage des coûts directs | Partiellement |
| Évaluation centrale | Dépôts actifs | Partiellement |
| Événements non attribués | File d'exceptions | Correction requise |

## Rapprocher les estimations du fournisseur

Utilisez des estimations immédiates pour tableaux et limites. Chaque jour, faites correspondre les ID, remplacez les estimations par les montants finaux et ajoutez les ajustements comme nouvelles écritures.

N'écrasez pas l'historique. Pour usage tardif ou remboursement, gardez l'événement et ajoutez un ajustement lié. Alertez sur les coûts non attribués, requêtes sans correspondance ou écarts élevés.

## Préserver confidentialité et auditabilité

Il n'est pas nécessaire de conserver prompts ou code. ID, modèles, unités, dates, prix et ID de requête suffisent.

Gérez la télémétrie de contenu séparément, avec rétention courte et accès strict. Hachez les ID sensibles si la finance ne doit que regrouper.

## Créer des rapports pour chaque décision

L'ingénierie veut le coût par tâche, pull request ou changement accepté. La finance veut le coût mensuel par centre. La plateforme veut l'économie par modèle, cache et type d'échec.

Mesures utiles :

* coût direct et réparti par dépôt ;
* coût par tâche réussie ;
* gaspillage des tentatives et échecs ;
* composition des modèles et économies de cache ;
* pourcentage non attribué ;
* écart budgétaire par projet.

Ne classez pas les développeurs par dépense brute sans résultats ni complexité.

## Garder le choix du fournisseur portable

Une passerelle centrale applique les mêmes balises à plusieurs modèles. Atlas Cloud peut fournir une couche compatible OpenAI pour texte, image et vidéo, tandis que le registre interne reste la source de vérité sur dépôt et projet.

Vous changez ainsi de fournisseur sans reconstruire la répartition.

## Conclusion

Attribuez les coûts lors de la requête avec des ID stables et des identifiants limités. Rapprochez les factures dans un registre append-only, affichez les frais partagés et traitez le coût non attribué comme une erreur opérationnelle.

## FAQ

### Quelles métadonnées minimales faut-il pour répartir les coûts ?

Enregistrez des ID stables de dépôt, projet ou centre de coûts, tâche, équipe, environnement, modèle et requête fournisseur, ainsi que date, usage et coût. Ne dépendez pas seulement des noms modifiables.

### Les développeurs doivent-ils saisir les balises manuellement ?

Préférez des balises automatiques issues du remote Git, de la CI, du système de tâches ou d'une clé à portée limitée. La saisie manuelle convient aux exceptions, pas à la comptabilité principale.

### Comment répartir les coûts partagés de la plateforme ?

Placez l'infrastructure partagée dans un pool distinct et répartissez-la avec une règle documentée, comme les dépenses directes, les sièges actifs ou le nombre de tâches. Ne cachez pas ces frais dans le prix du modèle.

### Comment traiter une tâche qui touche plusieurs dépôts ?

Utilisez une tâche parente et des spans enfants par dépôt. Attribuez les appels directs au dépôt actif et la planification réellement partagée au projet parent.

### Les rapports exigent-ils le contenu des prompts et du code ?

Non. ID, tokens, modèles, dates et prix suffisent. Gérez la conservation du contenu séparément afin de réduire les risques de confidentialité et de sécurité.

### À quelle fréquence rapprocher les coûts du fournisseur ?

Utilisez des estimations quasi temps réel pour les garde-fous et un rapprochement quotidien pour la finance. Faites correspondre les ID et ajoutez les ajustements tardifs sans écraser l'historique.
