Unité 10 / 11

Génie chimique avec Python : analyse des données et automatisation de la modélisation

Gains :

  • Capacité à imprimer du code Python et à comprendre et accepter le code ligne par ligne pour le nettoyage des données, l'automatisation des comptes et la modélisation avec l'intelligence artificielle
  • Capacité à comprendre qu'un code non testé est une hypothèse, à vérifier chaque code avec un résultat connu et à tester les cas unitaires et extrêmes.
  • Capacité à comprendre que les codes de compte critiques pour la sécurité nécessitent à la fois des tests et une vérification par un ingénieur autorisé.

Le moteur silencieux du génie chimique moderne est désormais Python (un langage de programmation largement utilisé et facile à apprendre). Nettoyer les données des capteurs, automatiser un bilan de masse, ajuster un modèle cinétique aux données, comparer des centaines de résultats de simulation, produire un graphique : tout cela prend des heures à la main, mais quelques secondes avec quelques lignes de Python. Dans cette unité, vous apprendrez à utiliser l'IA comme aide à l'écriture, à l'explication et au débogage du code Python ; Mais nous apprendrons pourquoi chaque code produit ne doit pas être utilisé sans test et vérification.

Un ingénieur chimiste n’est généralement pas un développeur de logiciels professionnel ; C’est là que l’IA ajoute une grande puissance. Un ingénieur dit "Je veux un script qui fasse ça" et rédige un brouillon d'IA. Mais ce principe reste constant : le code écrit par l’IA n’est pas correct parce qu’il semble correct ; C'est une hypothèse jusqu'à ce qu'elle soit testée avec un résultat connu. Une erreur silencieuse – une mauvaise unité, un mauvais indice, une formule décalée – peut produire des résultats dangereux dans un calcul technique.

Python avec l'IA en génie chimique : étape par étape

1. Définissez clairement le travail. Quelle est l'entrée (CSV, tableau, équation), quelle doit être la sortie, dans quelles unités ? Une invite ambiguë signifie un mauvais code.

2. Demandez un projet de code. L'IA produit un sketch avec les bibliothèques appropriées (pandas pour les données, numpy pour le traitement numérique, matplotlib pour les graphiques, scipy pour l'optimisation/solution).

3. Comprendre la bibliothèque et les hypothèses. Demandez à l'IA d'expliquer chaque ligne et hypothèse (unité, format de données, acceptation). N'exécutez pas de code que vous ne comprenez pas.

4. Testez avec un résultat connu. Exécutez le code sur un exemple simple dont vous connaissez déjà la réponse. Un code solde doit donner le résultat correct dans un exemple décryptable à la main.

5. Contrôle de l'état de l'unité et du bord. Que fait le code dans les cas extrêmes tels que zéro, valeurs négatives, très grandes, données manquantes ? En génie chimique, la défaillance d’une unité est un désastre classique.

6. Testez le résultat avec la physique. Le code a produit un nombre : la masse est-elle conservée, la valeur est-elle réaliste ? Ce n’est pas parce que le code fonctionne que le résultat est correct.

Astuce : lorsque vous demandez du code à l'IA, dites "écrivez l'unité de chaque variable dans la ligne de commentaire et spécifiez explicitement les unités d'entrée". Une part importante des erreurs de génie chimique résulte d’une confusion des unités (bar/Pa, kg/g, °C/K) ; L'intégration d'unités dans le code rend ces erreurs visibles.

Le code non testé est une hypothèse

L'IA produit un code fluide et fonctionnel ; Mais « fonctionne » et « correct » sont deux choses différentes. Le code peut fonctionner sans erreur et produire un nombre incorrect : une erreur de signe dans une formule, un décalage (un par un) dans un tableau, une conversion d'unité incorrecte. D'où la règle d'or : chaque code est testé dans un cas de test où la bonne réponse est connue indépendamment. Un simple exemple analytique, un calcul manuel ou une donnée de référence prouve la fiabilité du code. Aucune décision d'ingénierie ne doit être basée sur du code sans réussir les tests.

Attention : Un code qui effectue un calcul de sûreté, de dimensionnement ou de sécurité ne peut pas être considéré comme fiable du seul fait qu'il « fonctionne ». Les codes de compte critiques pour la sécurité doivent être testés avec un résultat connu et les résultats doivent être vérifiés de manière indépendante par l'ingénieur agréé.

trois mini-cases

Cas 1 — Automatisation du nettoyage des données. Un ingénieur nettoyait manuellement 3 mois de données (environ 1,1 million de lignes) provenant de 8 capteurs chaque mois. Un script pandas écrit avec l'IA a réduit ce délai à quelques minutes. L'ingénieur a d'abord testé le code sur un petit fichier exemple connu ; J'ai remarqué qu'une colonne avait été mal analysée, je l'ai corrigée, puis je l'ai appliquée à l'ensemble des données.

Cas 2 — Erreur de volume silencieux. YZ a écrit un code pour un calcul de chute de pression, mais a confondu l'entrée en supposant bar et la formule Pa. Le code a fonctionné sans erreur, mais le résultat était faux d'un facteur 100 000. L'ingénieur a détecté la différence de commande grâce à un calcul de contrôle manuel. Après avoir ajouté des commentaires d'unité, l'erreur a été clarifiée et corrigée.

Cas 3 — Test enregistré. Une équipe a obtenu du code de l’IA pour un solveur de bilan massique. Ils l’ont d’abord testé sur un échantillon à deux composants soluble à la main ; le code fermait un bouclage de manière incorrecte et ne s'additionnait pas. L’erreur a été détectée avant d’être appliquée au modèle réel et complexe. Sans test, l’erreur se propagerait à tous les résultats.

Quatre modèles copiables

1) Projet de code d’analyse des données :

Votre rôle : Assistant Python pour le génie chimique. Tâche : [description].Entrée : [CSV/tableau, colonnes, UNITS]. Résultat : [quoi, dans quelle unité]. utilisez pandas/numpy. Dans le code : (1) interpréter l'unité de chaque variable, (2) énoncer les hypothèses d'entrée au début, (3) gérer les cas extrêmes (données manquantes, zéro). Je vais tester le code avec un exemple connu ; n'utilisez pas de nombres magiques, définissez explicitement les constantes.

2) Explication et vérification du code :

Expliquez le code Python suivant ligne par ligne : ce qu'il fait, quelles hypothèses il fait, quelles unités il attend. Mettre en évidence les points d'erreur possibles (confusion d'unités, décalage d'index, division par zéro, débordement). Suggérez quel cas de test simple et connu je peux utiliser pour vérifier ce code. Code : [coller]

3) Mise en place d'un test avec un résultat connu :

Écrivez un ensemble de tests pour vérifier cette fonction : au moins 3 cas simples pour lesquels la réponse est connue analytiquement ou manuellement. Pour chaque test, décrivez le résultat attendu et pourquoi nous attendons ce résultat. Je n'appliquerai pas le code à des données réelles sans tester. Fonction : [coller]

4) Débogage :

Ce code donne l'erreur/résultat erroné suivant : [message d'erreur ou sortie réelle attendue]. Énumérez les causes possibles par ordre de probabilité et dites-moi comment tester chacune d’entre elles. Ne dites pas directement « Je l'ai réparé » ; Vérifions d’abord ensemble la cause première. Suggérez également la vérification des unités et des commandes. Code et données : [coller]

Invite faible/Invite forte

Invite faible :

Écrivez-moi un code de calcul de perte de charge.

Le format d'entrée, l'unité, l'équation et la condition ne sont pas clairs. L'IA cache ses hypothèses et peut confondre les unités.

Invite puissante :

Votre rôle : assistant Python en génie chimique. Tâche : chute de pression induite par frottement dans un tuyau circulaire. Entrée : débit [m3/s], diamètre [m], longueur [m], densité [kg/m3], viscosité [Pa·s]. Sortie : chute de pression [Pa].Utilisez Darcy-Weisbach ; Vérifiez le régime d'écoulement (Re) pour le facteur de frottement. Commentez chaque unité, indiquez les hypothèses (pleine charge, débit stable). Je vais tester le code par rapport au calcul manuel sur un exemple laminaire.

La différence est claire : les unités d'entrée, la méthode, l'unité de sortie et l'intention du test rendent le code fiable.

Répartition des rôles dans l'utilisation de Python

entreprise

Rôle de l'IA

la décision de l'homme

écrire du code

Créer un brouillon

Description de poste, unités

Sélection de bibliothèque

Suggestions

Confirmation de conformité

Descriptif

ligne par ligne

Accepter avec compréhension

tester

Recommandation d'ensemble de test

Validation avec résultat connu

Débogage

hypothèse, direction

Confirmation de la cause première

Conclusion

Génération de numéros

Tester avec la physique

Erreurs courantes

  • Utiliser du code sans le tester. Le code de travail n’est pas un code correct ; On ne peut lui faire confiance que s'il est testé avec un résultat connu.
  • Laisser les unités indéterminées. La confusion des unités est l’erreur la plus courante et la plus dangereuse en génie chimique.
  • Opérer sans comprendre. Ne vous fiez pas aux résultats sans comprendre le code écrit par l’IA ligne par ligne.
  • Contourner les états limites. Des données nulles, négatives ou manquantes peuvent conduire silencieusement le code à de fausses conclusions.
  • Baser le calcul de sécurité uniquement sur le code. Les codes critiques pour la sécurité nécessitent des tests + une vérification indépendante faisant autorité.

En résumé

IA en génie chimique avec Python ; Il s'agit d'un assistant puissant qui rédige, explique et fournit des conseils de débogage pour le nettoyage des données, l'automatisation de la comptabilité, la modélisation et les graphiques. Mais le code de l’IA est fiable non pas parce qu’il semble correct, mais parce qu’il a été testé avec un résultat connu. Il est essentiel de spécifier explicitement les unités, de comprendre le code, de tester les cas extrêmes et de vérifier le résultat avec la physique ; Les calculs critiques pour la sécurité nécessitent également une vérification par un ingénieur agréé.

Tâche de candidature

Sélectionnez un calcul (par exemple, une chute de pression dans un tuyau ou un bilan massique à deux composants). Obtenez le code de l'IA avec le modèle « analyse des données/projet de code de compte », indiquez clairement les unités. Vérifiez ensuite le code dans un exemple décodable manuellement avec le modèle « test de configuration avec résultat connu » ; Si le résultat ne correspond pas, recherchez la cause première avec le modèle « debug ».

liste de contrôle

  • [ ] J'ai clairement indiqué les unités et la méthode d'entrée/sortie.
  • [ ] J'ai compris le code ligne par ligne et vu ses hypothèses.
  • [ ] J'ai testé le code sur un exemple connu/déchiffrable manuellement.
  • [ ] J'ai testé les cas extrêmes (zéro, négatif, données manquantes).
  • [ ] J'ai vérifié le résultat avec la physique (conservation de la masse, de l'ordre) ; J'ai également fait confirmer le compte de sécurité par le fonctionnaire.