> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Ajouter ou remplacer des entrées de dataset

> Écrit jusqu'à 5,000 lignes de chat OpenAI en une seule transaction. Envoyez un tableau JSON ou les mêmes lignes au format NDJSON (une ligne de données par ligne de texte) avec `Content-Type: application/x-ndjson`. Toute ligne invalide entraîne le rejet de la requête et est signalée par son index ; la ligne N du fichier NDJSON correspond à l'index N - 1. `mode=append` rejette un `row_id` qui existe déjà (409 `entry_exists`) ; `mode=upsert` remplace la ligne en conservant les valeurs stockées de `group_id`, `split`, `metadata` et `provenance` pour les champs qu'elle omet. Les nouvelles entrées sont affectées par défaut à `train` et à leur propre groupe. Une écriture qui placerait un groupe dans plusieurs partitions renvoie 409 `group_split_conflict`. L'écriture crée une nouvelle révision du dataset et marque les réétiquetages et évaluations terminés comme obsolètes.



## OpenAPI

````yaml fr/openapi/model-distillation/management.openapi.yaml POST /projects/{alias}/datasets/{datasetId}/entries
openapi: 3.1.0
info:
  title: CoreWeave Model Distillation Management API
  version: 1.0.0
  description: >
    Gérez les fournisseurs, les projets, les versions d’acheminement, les
    datasets, le réétiquetage,

    les modèles sur lesquels le fine-tuning a été effectué, les évaluations et
    les analyses. Il s’agit de la même API que celle utilisée par

    Model Distillation.
servers:
  - url: https://forge.coreweave.com/api/distillation/v1
    description: Production
security:
  - WandbCredential: []
tags:
  - name: Providers
    description: >-
      Points de terminaison compatibles avec OpenAI, identifiants
      d’authentification, catalogues de modèles et tarification.
  - name: Projects
    description: Identité stable des projets et informations propres à chaque projet.
  - name: Routing
    description: Modèles cibles, pondérations et paramètres de requête versionnés.
  - name: Datasets
    description: >-
      Instantanés de données reproductibles, entrées, réétiquetage et sorties de
      modèles réutilisables.
  - name: Fine-tunes
    description: Tâches de fine-tuning supervisé et artifacts de modèles hébergés.
  - name: Evaluations
    description: >-
      Évaluations par comparaison directe, correspondance exacte et
      catégorisation.
  - name: Analytics
    description: >-
      Modèles de lecture des données de trafic, de consommation de jetons,
      d’erreurs et de coûts estimés des projets.
  - name: UI preferences
    description: Préférences d’affichage par projet utilisées par l’interface utilisateur.
paths:
  /projects/{alias}/datasets/{datasetId}/entries:
    parameters:
      - $ref: '#/components/parameters/WandbEntity'
      - $ref: '#/components/parameters/ProjectAlias'
      - $ref: '#/components/parameters/DatasetId'
    post:
      tags:
        - Datasets
      summary: Ajouter ou remplacer des entrées de dataset
      description: "Écrit jusqu'à 5,000 lignes de chat OpenAI en une seule transaction. Envoyez un tableau JSON ou les mêmes lignes au format NDJSON (une ligne de données par ligne de texte) avec `Content-Type: application/x-ndjson`. Toute ligne invalide entraîne le rejet de la requête et est signalée par son index\_; la ligne N du fichier NDJSON correspond à l'index N - 1. `mode=append` rejette un `row_id` qui existe déjà (409 `entry_exists`)\_; `mode=upsert` remplace la ligne en conservant les valeurs stockées de `group_id`, `split`, `metadata` et `provenance` pour les champs qu'elle omet. Les nouvelles entrées sont affectées par défaut à `train` et à leur propre groupe. Une écriture qui placerait un groupe dans plusieurs partitions renvoie 409 `group_split_conflict`. L'écriture crée une nouvelle révision du dataset et marque les réétiquetages et évaluations terminés comme obsolètes."
      operationId: writeDatasetEntries
      parameters:
        - name: mode
          in: query
          description: "append rejette les lignes dont le row_id existe déjà\_; upsert les remplace."
          required: false
          schema:
            default: append
            type: string
            enum:
              - append
              - upsert
        - name: dry_run
          in: query
          description: Validez la modification et indiquez son résultat, puis annulez-la.
          required: false
          schema:
            type: boolean
            default: false
      requestBody:
        required: true
        content:
          application/json:
            schema:
              minItems: 1
              maxItems: 5000
              type: array
              items:
                type: object
                properties:
                  row_id:
                    description: >-
                      Identité stable au sein du dataset, utilisée par les
                      opérations upsert pour retrouver les entrées
                      correspondantes. Par défaut, une empreinte des messages et
                      des champs de la requête.
                    type: string
                    minLength: 1
                    maxLength: 512
                  group_id:
                    description: >-
                      Lignes qui doivent appartenir à la même partition, comme
                      les tours d'une même conversation. Par défaut, row_id.
                    type: string
                    minLength: 1
                    maxLength: 512
                  split:
                    description: >-
                      train, ou val pour exclure la ligne de l'entraînement et
                      la réserver à l'évaluation. Les nouvelles lignes sont
                      affectées par défaut à train.
                    type: string
                    enum:
                      - train
                      - val
                  messages:
                    minItems: 2
                    maxItems: 1000
                    type: array
                    items:
                      type: object
                      propertyNames:
                        type: string
                      additionalProperties: {}
                  tools:
                    maxItems: 128
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                          const: function
                        function:
                          type: object
                          properties:
                            name:
                              type: string
                              minLength: 1
                              maxLength: 256
                            description:
                              type: string
                              maxLength: 16384
                            parameters:
                              type: object
                              propertyNames:
                                type: string
                              additionalProperties: {}
                            strict:
                              type: boolean
                          required:
                            - name
                          additionalProperties: false
                      required:
                        - type
                        - function
                      additionalProperties: false
                  tool_choice: {}
                  response_format: {}
                  metadata:
                    description: >-
                      Attributs utilisables pour le filtrage, comme
                      l'utilisateur ou le segment de clientèle.
                    type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                  provenance:
                    description: >-
                      Origine de la ligne, comme le système source et
                      l'identifiant de trace.
                    type: object
                    propertyNames:
                      type: string
                    additionalProperties: {}
                required:
                  - messages
                additionalProperties: false
          application/x-ndjson:
            schema:
              type: string
              description: >-
                Une ligne de données JSON par ligne de texte, avec la même
                structure que les éléments du tableau JSON.
      responses:
        '200':
          description: >-
            Les entrées ont été écrites, ou le seraient dans le cadre d'une
            simulation à blanc.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DatasetEntryWriteResult'
        default:
          $ref: '#/components/responses/Error'
components:
  parameters:
    WandbEntity:
      name: Wandb-Entity
      in: header
      required: false
      description: >-
        entity personnel ou d’équipe accessible. Omettez ce champ pour utiliser
        l’entity par défaut de l’utilisateur authentifié.
      schema:
        type: string
    ProjectAlias:
      name: alias
      in: path
      required: true
      schema:
        type: string
        pattern: ^[a-z0-9-]{1,64}$
    DatasetId:
      name: datasetId
      in: path
      required: true
      schema:
        type: string
        format: uuid
  schemas:
    DatasetEntryWriteResult:
      type: object
      required:
        - dry_run
        - created
        - updated
        - revision
        - entry_counts
        - group_conflicts
      properties:
        dry_run:
          type: boolean
        created:
          type: integer
          description: Lignes devenues de nouvelles entrées.
        updated:
          type: integer
          description: Entrées existantes remplacées par les lignes.
        revision:
          type: integer
          description: "La révision du dataset après l’écriture\_; inchangée lors d’une simulation à blanc."
        entry_counts:
          $ref: '#/components/schemas/DatasetEntryCounts'
        group_conflicts:
          type: array
          items:
            type: string
          description: >-
            Groupes présents dans plusieurs partitions. Une écriture réelle
            comportant des conflits est rejetée.
    DatasetEntryCounts:
      type: object
      required:
        - total
        - train
        - val
      properties:
        total:
          type: integer
        train:
          type: integer
        val:
          type: integer
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - message
            - type
          properties:
            message:
              type: string
            type:
              type: string
      example:
        error:
          message: Project 'missing' not found in entity 'your-team'
          type: not_found
  responses:
    Error:
      description: La requête a échoué.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    WandbCredential:
      type: http
      scheme: bearer
      bearerFormat: wandb API key or JWT
      description: "Une clé API wandb ou un JWT wandb. Les sessions du navigateur sont échangées par le backend de l’application web Model Distillation\_; les capacités des tâches sont réservées à un usage interne."

````