fastapi/docs/fr/docs/_llm-test.md

13 KiB
Raw Blame History

Fichier de test LLM

Ce document teste si le LLM, qui traduit la documentation, comprend le general_prompt dans scripts/translate.py et linvite spécifique à la langue dans docs/{language code}/llm-prompt.md. Linvite spécifique à la langue est ajoutée à la fin de general_prompt.

Les tests ajoutés ici seront visibles par tous les concepteurs dinvites spécifiques à chaque langue.

Utiliser comme suit :

  • Avoir une invite spécifique à la langue - docs/{language code}/llm-prompt.md.
  • Effectuer une nouvelle traduction de ce document dans votre langue cible souhaitée (voir par exemple la commande translate-page de translate.py). Cela créera la traduction sous docs/{language code}/docs/_llm-test.md.
  • Vérifier si tout est correct dans la traduction.
  • Si nécessaire, améliorer votre invite spécifique à la langue, linvite générale, ou le document anglais.
  • Corriger ensuite manuellement les problèmes restants dans la traduction, afin que ce soit une bonne traduction.
  • Retraduire, en ayant la bonne traduction en place. Le résultat idéal serait que le LLM ne fasse plus aucun changement à la traduction. Cela signifie que linvite générale et votre invite spécifique à la langue sont aussi bonnes que possible (il fera parfois quelques changements apparemment aléatoires, la raison étant que les LLM ne sont pas des algorithmes déterministes).

Les tests :

Extraits de code

//// tab | Test

Ceci est un extrait de code : foo. Et ceci est un autre extrait de code : bar. Et encore un autre : baz quux.

////

//// tab | Info

Le contenu des extraits de code doit être laissé tel quel.

Voir la section ### Content of code snippets dans linvite générale dans scripts/translate.py.

////

Guillemets

//// tab | Test

Hier, mon ami a écrit : « Si vous écrivez « incorrectly » correctement, vous lavez écrit de façon incorrecte ». À quoi jai répondu : « Correct, mais incorrectly est incorrectement non pas ‘« incorrectly »’ ».

/// note | Remarque

Le LLM traduira probablement ceci de manière erronée. Il est seulement intéressant de voir sil conserve la traduction corrigée lors dune retraduction.

///

////

//// tab | Info

Le concepteur de linvite peut choisir sil souhaite convertir les guillemets neutres en guillemets typographiques. Il est acceptable de les laisser tels quels.

Voir par exemple la section ### Quotes dans docs/de/llm-prompt.md.

////

Guillemets dans les extraits de code

//// tab | Test

pip install "foo[bar]"

Exemples de littéraux de chaîne dans des extraits de code : "this", 'that'.

Un exemple difficile de littéraux de chaîne dans des extraits de code : f"I like {'oranges' if orange else "apples"}"

Hardcore: Yesterday, my friend wrote: "If you spell incorrectly correctly, you have spelled it incorrectly". To which I answered: "Correct, but 'incorrectly' is incorrectly not '"incorrectly"'"

////

//// tab | Info

... Cependant, les guillemets à lintérieur des extraits de code doivent rester tels quels.

////

Blocs de code

//// tab | Test

Un exemple de code Bash ...

# Afficher un message de bienvenue à l'univers
echo "Hello universe"

... et un exemple de code console ...

$ <font color="#4E9A06">fastapi</font> run <u style="text-decoration-style:solid">main.py</u>
<span style="background-color:#009485"><font color="#D3D7CF"> FastAPI </font></span>  Starting server
        Searching for package file structure

... et un autre exemple de code console ...

// Créer un répertoire "Code"
$ mkdir code
// Aller dans ce répertoire
$ cd code

... et un exemple de code Python ...

wont_work()  # Cela ne fonctionnera pas 😱
works(foo="bar")  # Cela fonctionne 🎉

... et cest tout.

////

//// tab | Info

Le code dans les blocs de code ne doit pas être modifié, à lexception des commentaires.

Voir la section ### Content of code blocks dans linvite générale dans scripts/translate.py.

////

Onglets et encadrés colorés

//// tab | Test

/// info | Info Du texte ///

/// note | Remarque Du texte ///

/// note | Détails techniques Du texte ///

/// check | Vérifications Du texte ///

/// tip | Astuce Du texte ///

/// warning | Alertes Du texte ///

/// danger | Danger Du texte ///

////

//// tab | Info

Les onglets et les blocs « Info »/« Note »/« Warning »/etc. doivent avoir la traduction de leur titre ajoutée après une barre verticale (« | »).

Voir les sections ### Special blocks et ### Tab blocks dans linvite générale dans scripts/translate.py.

////

//// tab | Test

Le texte du lien doit être traduit, ladresse du lien doit rester inchangée :

Le texte du lien doit être traduit, ladresse du lien doit pointer vers la traduction :

////

//// tab | Info

Les liens doivent être traduits, mais leur adresse doit rester inchangée. Exception faite des liens absolus vers des pages de la documentation FastAPI. Dans ce cas, il faut pointer vers la traduction.

Voir la section ### Links dans linvite générale dans scripts/translate.py.

////

Éléments HTML « abbr »

//// tab | Test

Voici quelques éléments entourés dun élément HTML « abbr » (certains sont inventés) :

Labbr fournit une expression complète

  • GTD
  • lt
  • XWT
  • PSGI

Labbr donne une expression complète et une explication

  • MDN
  • I/O.

////

//// tab | Info

Les attributs « title » des éléments « abbr » sont traduits en suivant des consignes spécifiques.

Les traductions peuvent ajouter leurs propres éléments « abbr » que le LLM ne doit pas supprimer. Par exemple pour expliquer des mots anglais.

Voir la section ### HTML abbr elements dans linvite générale dans scripts/translate.py.

////

Éléments HTML « dfn »

  • grappe
  • Apprentissage profond

Titres

//// tab | Test

Créer une application Web - un tutoriel

Bonjour.

Annotations de type et indications de type

Rebonjour.

Superclasses et sous-classes

Rebonjour.

////

//// tab | Info

La seule règle stricte pour les titres est que le LLM laisse la partie hachage entre accolades inchangée, ce qui garantit que les liens ne se rompent pas.

Voir la section ### Headings dans linvite générale dans scripts/translate.py.

Pour certaines consignes spécifiques à la langue, voir par exemple la section ### Headings dans docs/de/llm-prompt.md.

////

Termes utilisés dans les documents

//// tab | Test

  • vous

  • votre

  • p. ex.

  • etc.

  • foo en tant que int

  • bar en tant que str

  • baz en tant que list

  • le Tutoriel - Guide utilisateur

  • le Guide utilisateur avancé

  • la documentation SQLModel

  • la documentation de lAPI

  • la documentation automatique

  • Data Science

  • Apprentissage profond

  • Apprentissage automatique

  • Injection de dépendances

  • authentification HTTP Basic

  • HTTP Digest

  • format ISO

  • la norme JSON Schema

  • le schéma JSON

  • la définition de schéma

  • Flux Password

  • Mobile

  • déprécié

  • conçu

  • invalide

  • à la volée

  • standard

  • par défaut

  • sensible à la casse

  • insensible à la casse

  • servir lapplication

  • servir la page

  • lapp

  • lapplication

  • la requête

  • la réponse

  • la réponse derreur

  • le chemin daccès

  • le décorateur de chemin daccès

  • la fonction de chemin daccès

  • le corps

  • le corps de la requête

  • le corps de la réponse

  • le corps JSON

  • le corps de formulaire

  • le corps de fichier

  • le corps de la fonction

  • le paramètre

  • le paramètre de corps

  • le paramètre de chemin

  • le paramètre de requête

  • le paramètre de cookie

  • le paramètre den-tête

  • le paramètre de formulaire

  • le paramètre de fonction

  • lévénement

  • lévénement de démarrage

  • le démarrage du serveur

  • lévénement darrêt

  • lévénement de cycle de vie

  • le gestionnaire

  • le gestionnaire dévénements

  • le gestionnaire dexceptions

  • gérer

  • le modèle

  • le modèle Pydantic

  • le modèle de données

  • le modèle de base de données

  • le modèle de formulaire

  • lobjet modèle

  • la classe

  • la classe de base

  • la classe parente

  • la sous-classe

  • la classe enfant

  • la classe sœur

  • la méthode de classe

  • len-tête

  • les en-têtes

  • len-tête dautorisation

  • len-tête Authorization

  • len-tête transféré

  • le système dinjection de dépendances

  • la dépendance

  • lélément dépendable

  • le dépendant

  • lié aux E/S

  • lié au processeur

  • concurrence

  • parallélisme

  • multi-traitement

  • la variable denv

  • la variable denvironnement

  • le PATH

  • la variable PATH

  • lauthentification

  • le fournisseur dauthentification

  • lautorisation

  • le formulaire dautorisation

  • le fournisseur dautorisation

  • lutilisateur sauthentifie

  • le système authentifie lutilisateur

  • la CLI

  • linterface en ligne de commande

  • le serveur

  • le client

  • le fournisseur cloud

  • le service cloud

  • le développement

  • les étapes de développement

  • le dict

  • le dictionnaire

  • lénumération

  • lenum

  • le membre denum

  • lencodeur

  • le décodeur

  • encoder

  • décoder

  • lexception

  • lever

  • lexpression

  • linstruction

  • le frontend

  • le backend

  • la discussion GitHub

  • le ticket GitHub

  • la performance

  • loptimisation des performances

  • le type de retour

  • la valeur de retour

  • la sécurité

  • le schéma de sécurité

  • la tâche

  • la tâche darrière-plan

  • la fonction de tâche

  • le template

  • le moteur de templates

  • lannotation de type

  • lannotation de type

  • le worker du serveur

  • le worker Uvicorn

  • le Worker Gunicorn

  • le processus worker

  • la classe de worker

  • la charge de travail

  • le déploiement

  • déployer

  • le SDK

  • le kit de développement logiciel

  • le APIRouter

  • le requirements.txt

  • le jeton Bearer

  • le changement majeur incompatible

  • le bogue

  • le bouton

  • lappelable

  • le code

  • le commit

  • le gestionnaire de contexte

  • la coroutine

  • la session de base de données

  • le disque

  • le domaine

  • le moteur

  • le faux X

  • la méthode HTTP GET

  • lélément

  • la bibliothèque

  • le cycle de vie

  • le verrou

  • le middleware

  • lapplication mobile

  • le module

  • le montage

  • le réseau

  • lorigine

  • la surcharge

  • le payload

  • le processeur

  • la propriété

  • le proxy

  • la pull request

  • la requête

  • la RAM

  • la machine distante

  • le code détat

  • la chaîne

  • létiquette

  • le framework Web

  • le joker

  • retourner

  • valider

////

//// tab | Info

Il sagit dune liste non exhaustive et non normative de termes (principalement) techniques présents dans les documents. Elle peut aider le concepteur de linvite à déterminer pour quels termes le LLM a besoin dun coup de main. Par exemple, lorsquil continue de remplacer une bonne traduction par une traduction sous-optimale. Ou lorsquil a des difficultés à conjuguer/décliner un terme dans votre langue.

Voir par exemple la section ### List of English terms and their preferred German translations dans docs/de/llm-prompt.md.

////