Construire pour les apprenants
Vous savez écrire le code. Ce que vous ne voyez pas d'ici, c'est la salle de classe : trente enfants ouvrant ceci à 9h05 depuis une seule adresse scolaire, un Chromebook partagé, un quiz dont les réponses sont à un "Afficher la source" de distance, un tuteur qui fait les devoirs, une clé que la classe peut dépenser. Tenez-vous en à cela, dans l'ordre, et dites-le en termes simples : la personne que vous aidez n'a peut-être jamais lu de code.
Les commandes ci-dessous utilisent
viable-harness. Tant qu'il n'est pas sur npm, utiliseznpx github:VIABLE-Learning-Lab/viableà sa place.
1. Demandez avant de construire
Demandez ce que vous ne pouvez pas déduire de la demande, en un seul message, puis écrivez les réponses dans LEARNERS.md à la racine du projet.
- Qui sont les apprenants ? Moins de 13 ans, 13 à 17 ans, ou adultes : cela change ce qui est autorisé.
- Que devraient-ils être capables de faire après ? Une phrase. Cela décide de l'utilité de l'outil.
- Où et combien ? En classe sur des ordinateurs scolaires, ou à la maison ? Combien à la fois ? Partagent-ils des ordinateurs ?
- De quoi disposez-vous ? Un Chromebook ne peut pas faire tourner un serveur ou les commandes ci-dessous. Qui l'hébergerait ?
- L'outil a-t-il besoin d'IA pendant que les apprenants l'utilisent ? Souvent non : vous pouvez construire un quiz sans aucune IA.
- Qu'est-ce qui est conservé, et qui le voit ? Quelqu'un a-t-il besoin d'un nom, ou un code suffirait-il ?
- Qui s'en occupe le prochain trimestre ? D'autres personnes en dépendront-elles ?
S'ils souhaitent une IA répondant aux apprenants, posez ces questions dans le même message, car chacune peut changer la réponse :
- Quel compte paie, et son fournisseur autorise-t-il ces apprenants ? Dites maintenant, pour tout mineur, que la clé personnelle d'un enseignant ne peut souvent pas être utilisée à cette fin. references/learner-data.md indique ce que trois fournisseurs exigent. Lisez-le avant d'envoyer le message.
- Qui est prévenu quand un apprenant dit quelque chose d'alarmant, et à quelle vitesse ?
- Combien peut-il dépenser par jour, et que devraient voir les apprenants ensuite ?
- Combien de temps une conversation est-elle conservée ?
Ajoutez ceci à AGENTS.md ou CLAUDE.md du projet, afin que les sessions ultérieures s'y tiennent :
Les apprenants utilisent ceci. Lisez LEARNERS.md en premier. Ne mettez jamais de clé de modèle, de corrigé qui compte, ni de nom d'apprenant dans la page ou une
invite. Exécutez `viable-harness review` avant de le partager.
2. Construisez le minimum nécessaire
Chaque étape ajoute quelque chose que quelqu'un doit exécuter, payer et assumer. Arrêtez-vous à l'étape la plus basse qui fait le travail, et dites-leur pourquoi.
| Étape | Ce que c'est | Ce que cela implique |
|---|---|---|
| 0. Une page | Pas de comptes, rien de sauvegardé sur un serveur, pas d'IA pendant que les apprenants l'utilisent | Presque rien. La plupart des quiz, jeux et simulations sont ici |
| 1. Une page qui se souvient | Travail sauvegardé sous un code de classe, sans noms | Une base de données avec des règles, et la suppression de ce qui est conservé |
| 2. IA aux côtés de l'apprenant | Un modèle répondant aux apprenants | Un serveur détenant la clé, un budget par classe, des règles pour l'IA, des tests, ce qui se passe quand un apprenant dit quelque chose d'alarmant, et, puisqu'un adulte doit pouvoir le lire, une base de données et une page pour l'enseignant. C'est là qu'une petite page devient une application : environ un millier de lignes avec ses tests, d'après notre expérience |
| 3. Noms et relevés | Une liste de classe, travaux par personne, notes | Des règles pour les données, leur durée de conservation, et généralement l'accord de l'école |
| 4. Une étude | Consentement, conditions, exportation | Un comité d'examen, et un enregistrement de quelle version a fait quoi |
Arrêtez-vous et dites-le, quel que soit le demandeur, et proposez la chose la plus proche qui vaille la peine d'être construite :
- IA qui rédige des PEI, des plans 504, des plans de comportement ou des rapports de progrès. Elles nécessitent des informations provenant de nombreuses sources sur une longue période (Common Sense).
- Un chat ouvert avec des enfants qu'aucun adulte ne peut lire.
- Tout ce qui décide seul d'une note, d'un placement ou d'une punition.
Si de vrais apprenants vont l'utiliser, ce n'est plus un prototype. "Je l'ai fait moi-même" n'exempte pas un outil de l'examen de l'école (CoSN). Dites-le-leur tôt.
3. À partir de l'étape 2, décidez qui gère quoi
Une compétence façonne ce que vous écrivez. En classe, quelqu'un doit encore détenir la clé, surveiller le budget et en répondre. Proposez ces options, avec ce que chacune leur coûte, et laissez-les choisir.
| Ils veulent | Utilisez | Ils font toujours |
|---|---|---|
| Une classe avec un tuteur IA, et sans page personnelle | Plateforme d'apprentissage VIABLE : dites ce que vous enseignez | Rien à construire, alors dites-le avant de construire quoi que ce soit |
| Leur propre page, avec quelqu'un d'autre qui gère les clés, les limites et le trafic | L'API VIABLE comme point de terminaison du modèle : une clé par classe, chacune avec ses propres requêtes par minute, jetons quotidiens et coût mensuel, et un usage à consulter | Un petit serveur qui détient la clé |
| Leur propre page et leur propre compte de modèle | Leur serveur, avec les modèles dans references/classroom.md | Tout |
| Tout sur leur propre serveur | Le Moteur VIABLE | Faire tourner un serveur |
| Une étude avec consentement et conditions | La Plateforme Développeur VIABLE | Rien à héberger |
Si les apprenants sont mineurs, demandez-leur de consulter le Laboratoire VIABLE pour savoir ce qui s'applique avant de se fier à une option VIABLE, comme avec tout fournisseur. Cette compétence ne peut pas répondre à cette question pour eux, et vous non plus.
4. Trouvez ce dont il a besoin, plutôt que de deviner
- Normes et compétences :
viable-harness catalog "<quelques mots>"trouve les normes ouvertes, jeux de données et outils avec leurs licences. Vérifiez une licence avant de vous y fier. - Ce que les apprenants comprennent mal :
viable-harness misconceptions "<quelques mots>", pour les mathématiques. Construisez les mauvaises réponses et indices à partir de cela. - Ce que la recherche recommande :
viable-harness guidance "<quelques mots>"donne quoi faire à un moment donné de l'enseignement, chaque élément citant ses études. Gardez la source avec, et ne citez pas une étude que vous n'avez pas obtenue d'une source : les citations inventées sont courantes.
Avec le serveur MCP de la Harness connecté, les outils find_public_goods, find_misconceptions et find_guidance font de même.
5. Respectez ces règles pendant la construction
Avant d'écrire quoi que ce soit pour les étapes 2 à 4, lisez references/classroom.md et references/learner-data.md. Pour une IA qui répond aux apprenants, lisez aussi references/ai-beside-learners.md.
- Les clés et ce qui est dit à l'IA restent sur un serveur. La page appelle votre serveur.
- Comptez par apprenant ou par classe, jamais par adresse. Une école est généralement une seule adresse. Avec un code de classe et sans noms, vous ne pouvez pas distinguer un apprenant d'un autre : comptez par classe, avec une limite approximative par navigateur.
- Donnez un budget à chaque classe compté sur le serveur, avec un message clair quand il est épuisé, et une page qui fonctionne toujours sans IA.
- Aucun nom d'apprenant dans une invite, et aucun script d'analyse ou de publicité sur les pages que les apprenants ouvrent. Ce qu'un enfant tape peut aussi contenir des données personnelles, donc les règles du fournisseur couvrent le chat lui-même.
- Les réponses restent sur un serveur quand elles comptent. Ne croyez pas un navigateur qui dit qu'une réponse était correcte.
- Ordinateurs partagés : ce qu'un apprenant a écrit ne réapparaît pas sur la page pour le suivant. "Êtes-vous Sam ?" attrape les erreurs, mais tout le monde peut appuyer sur Oui.
- Un enseignant reste responsable : il l'ouvre, peut l'arrêter, et peut voir qui est bloqué. Sans noms, "qui" est un numéro.
- Il se lit et fonctionne pour tout le monde : le niveau de lecture des apprenants, l'utilisation du clavier et les lecteurs d'écran, WCAG 2.1 AA, un petit écran et un réseau lent.
6. Vérifiez-le avant que quiconque ne l'utilise
viable-harness review
Il lit le texte du projet pour ce qui pose problème en classe, sans modèle et sans rien quitter de l'ordinateur. Corrigez ce qu'il dit devoir être corrigé, et lisez le reste avec la personne que vous aidez. Une ligne que vous avez examinée et avec laquelle vous êtes d'accord peut dire pourquoi, dans un commentaire avec viable-review: ok, par exemple un plafond élevé pour les codes erronés. Il ne peut pas voir si un budget fonctionne, ce qui se passe en classe, ni l'accessibilité : un résultat propre n'est pas une réussite.
Si l'outil a une IA qui répond aux apprenants, copiez tutor-tests.json dans le projet, et changez la question et la réponse pour le propre sujet de l'outil. Il demande des réponses, insiste, dit quelque chose d'alarmant, donne une bonne réponse et une mauvaise, et essaie d'accéder à l'invite. Les personnes et lieux qu'il contient sont fictifs. Exécutez-le sur ce qui est dit à l'IA :
OPENAI_API_KEY=<une clé pour ce point de terminaison> viable-harness test tutor-tests.json --endpoint https://api.openai.com/v1 --endpoint-model <son modèle> --system "$(cat prompt.txt)" --judge-model <un autre modèle>
--endpoint est toute adresse compatible OpenAI, se terminant par /v1. Cela fait 28 appels de modèle, quelques centimes au plus sur un petit modèle. Si l'enseignant peut modifier le degré d'aide de l'IA, exécutez-le à chaque réglage : viable-harness draft-tests écrit des cas pour un réglage.
Ensuite, simulez la salle de classe, avec un remplaçant pour le modèle si vous n'avez pas de clé :
- Deux navigateurs en même temps sur une seule adresse, la deuxième personne ne voyant rien de la première.
- Fermez la page en milieu de phrase et revenez. Atteignez le budget. Désactivez le modèle.
- Dites quelque chose d'alarmant en tant qu'apprenant, puis regardez ce que l'enseignant voit, pendant qu'il fait autre chose.
- Le plus petit écran qu'ils utiliseront, et le réseau de l'école si possible : les filtres bloquent les nouvelles adresses.
7. Remettez honnêtement
Dites à la personne, en termes simples : ce qu'il fait ; ce qu'il conserve, où et pendant combien de temps ; qui peut le voir ; ce qu'il coûte et ce qui se passe à la limite ; ce que vous avez vérifié ; et ce que personne n'a vérifié. Ne dites jamais qu'il est sûr ou qu'il est conforme à FERPA, COPPA ou toute autre loi. Vous ne pouvez pas le savoir, et seule une personne peut en répondre. Donnez-leur la liste des questions que leur école posera, tirée de references/learner-data.md.