Connectez-vous

Accueil

Actualités Informations des IA-IPR Enseigner au collège Enseigner au lycée Ressources didactiques et pédagogiques Ressources scientifiques Se former Promouvoir la culture scientifique Participez au site (avec le mail académique) !

Thème La Terre, la vie et l’organisation du vivant

Publié le 21 mai 2024 Modifié le : 26 mai 2024

Écrire à l'auteur

Le  mardi 21 mai 2024

Découvrir le code génétique avec un programme de traduction construit par l’IA

Le no-code en SVT

  • Image créée avec Microsoft Copilot

    Niveau

     

    1ère Spécialité

     

    Compétences (BO)

     

    Communiquer et utiliser le numérique

     

    Compétences du CRCN (cadre de référence des compétences numériques)

     

    Domaine 3 : Création de contenus; compétence 3.4: Programmer

     

    Connaissances et capacités associées

    La Terre, la vie et l’organisation du vivant
    Transmission, variation et expression du patrimoine génétique
    L’expression du patrimoine génétique

    le code génétique est un système de correspondance, universel à l’ensemble du monde vivant, qui permet la traduction de l’ARN messager en protéines. L'information portée par une molécule d'ARN messager (le message génétique) est ainsi convertie en une information fonctionnelle (la séquence des acides aminés de la protéine).

     

    Objectifs de l’activité et sa place dans la démarche

     

    • Le no-code utilise la programmation déclarative : vous dites au système ce que vous voulez qu'il fasse, et vous le construisez. En no-code, le créateur de l'application définit ce que l'application fait plutôt que la manière dont elle le fait. Le chatbot Copilot (ou chatGPT) permet de créer des programmes informatiques pouvant être utiles en SVT. L’IA permet de réaliser facilement un algorithme pour coder une séquence d'acides aminés à partir d'une séquence d'ARNm afin de comprendre le principe de la traduction.
    • Cette activité présente l’intérêt de faire découvrir le code génétique au travers de la lecture et/ou de l’exécution d’un programme informatique. Il précise comment sont obtenues « automatiquement », sans justification, les séquences peptidiques proposées par les outils numériques classiquement utilisés en classe comme Genigen2 ou Anagène.

     

    Description de l’activité

     

    Les élèves cherchent à comprendre comment la séquence en acides aminés est déterminée à partir d’une séquence d’ARNm.

     

    Cette activité peut être proposée aux élèves dont les préacquis suivants sont nécessaires :

     

    • L’ADN est le support de l’information génétique
    • L’ARNm est un vecteur d’information dans la cellule
    • La protéine est formée d’acides aminés (20 au total) à partir de la traduction d’un ARN messager

     

    Pour comprendre le code génétique, le professeur propose aux élèves :

     

    • de construire un programme informatique permettant de coder une séquence d'acides aminés à partir d'une séquence d'ARN.
    • de tester ce programme afin de vérifier sa validité (le professeur donne alors une séquence en ARN et la séquence en acides aminés correspondante)
    • d’expliquer le principe de la traduction de l'ARNm à partir de l’algorithme généré et de tests du programme.

     

    Voici un exemple de prompt utilisé avec le chatbot Copilot (accessible via Bing ou téléchargeable sur Smartphone) et le résultat obtenu :

    Prompt : « je veux construire un programme python permettant de coder une séquence d'acides aminés, nomenclature en français, à partir d'une séquence d'ARN proposée par l'utilisateur »

     

    Résultat généré par Copilot :

    # Dictionnaire de codons ARN vers acides aminés

    codon_to_aa = {

        'UUU': 'Phénylalanine', 'UUC': 'Phénylalanine', 'UUA': 'Leucine', 'UUG': 'Leucine',

        'UCU': 'Sérine', 'UCC': 'Sérine', 'UCA': 'Sérine', 'UCG': 'Sérine',

        'UAU': 'Tyrosine', 'UAC': 'Tyrosine', 'UAA': 'Stop', 'UAG': 'Stop',

        'UGU': 'Cystéine', 'UGC': 'Cystéine', 'UGA': 'Stop', 'UGG': 'Tryptophane',

        'CUU': 'Leucine', 'CUC': 'Leucine', 'CUA': 'Leucine', 'CUG': 'Leucine',

        'CCU': 'Proline', 'CCC': 'Proline', 'CCA': 'Proline', 'CCG': 'Proline',

        'CAU': 'Histidine', 'CAC': 'Histidine', 'CAA': 'Glutamine', 'CAG': 'Glutamine',

        'CGU': 'Arginine', 'CGC': 'Arginine', 'CGA': 'Arginine', 'CGG': 'Arginine',

        'AUU': 'Isoleucine', 'AUC': 'Isoleucine', 'AUA': 'Isoleucine', 'AUG': 'Méthionine',

        'ACU': 'Thréonine', 'ACC': 'Thréonine', 'ACA': 'Thréonine', 'ACG': 'Thréonine',

        'AAU': 'Asparagine', 'AAC': 'Asparagine', 'AAA': 'Lysine', 'AAG': 'Lysine',

        'AGU': 'Sérine', 'AGC': 'Sérine', 'AGA': 'Arginine', 'AGG': 'Arginine',

        'GUU': 'Valine', 'GUC': 'Valine', 'GUA': 'Valine', 'GUG': 'Valine',

        'GCU': 'Alanine', 'GCC': 'Alanine', 'GCA': 'Alanine', 'GCG': 'Alanine',

        'GAU': 'Acide aspartique', 'GAC': 'Acide aspartique', 'GAA': 'Acide glutamique', 'GAG': 'Acide glutamique',

        'GGU': 'Glycine', 'GGC': 'Glycine', 'GGA': 'Glycine', 'GGG': 'Glycine'

    }

     

    def traduire_arn(arn):

        # Vérifie que la séquence d'ARN est divisible par 3

        if len(arn) % 3 != 0:

            return "La séquence d'ARN n'est pas divisible par 3."

       

        # Traduit la séquence d'ARN en acides aminés

        acides_amines = []

        for i in range(0, len(arn), 3):

            codon = arn[i:i+3]

            if codon in codon_to_aa:

                acides_amines.append(codon_to_aa[codon])

            else:

                return "Codon non reconnu: " + codon

        return acides_amines

     

    # Demande à l'utilisateur d'entrer une séquence d'ARN

    arn = input("Veuillez entrer une séquence d'ARN : ")

    print(traduire_arn(arn))

     

    Le programme peut alors être testé sur le site CAPYTALE https://capytale2.ac-paris.fr/web/c-auth/list disponible via les ENT dont Atrium.

    D'autres sites permettent ce même test comme, https://notebook.basthon.fr/

    (coller le code généré, puis cliquer sur « Exécuter »).

    Ci-dessous un exemple de capture d’écran :

     

    programme traduction

     

    Analyse de la séance / du scénario avec un retour d’expérience

     

    Les élèves sont parvenus à écrire des lignes de code sans pour autant maîtriser au préalable le langage de programmation Python. L'IA apporte  ainsi un intérêt certain dans la conception de programmes informatiques. Outre cet aspect technique dépassé, les élèves ont pu tester des hypothèses à partir de l'analyse du code généré par l'IA et grâce à l'exécution du programme. En cela, l'utilisation de l'IA pour coder un programme de traduction et l'exécuter pour en voir des résultats d'encodage de séquences peptidiques apporte une valeur ajoutée par rapport à une simple utilisation de Geniegen2 par exemple dont le programme d'exécution est invisible pour les élèves. 

     

    Points de vigilance

     

    La procédure de mise en forme du programme avant son exécution nécessite de faire quelques tests préalables. De plus, il convient de préciser dans le prompt que la nomenclature des acides aminés soit celle utilisée en français. A défaut, les acides aminés sont nommés par un code avec des lettres majuscules. Il est également conseillé de demander à l'IA de ne pas justifier le code généré, ce qui est fait par défaut dans Copilot.

    Enfin, il peut être utile d'apporter des compléments au programme pour introduire des boucles permettant de réitérer des requêtes afin de tester le programme de façon approfondi.

     

    Exemple : reproduire la requête deux autres fois en ajoutant à la fin du code :

    loop  

     

    Ressources

     

    D'autres sites permettent ce même test comme, https://notebook.basthon.fr/

     

    En complément de cette activité, la lecture de l’article suivant peut s’avérer utile :

    https://www.pedagogie.ac-aix-marseille.fr/jcms/c_10708001/fr/proposition-dun-contexte-pour-la-programmation-en-python-dun-traducteur-arn-ou-adn-/-proteine-en-premiere-specialite-svt?preview=true

     

    D'autres activités produites dans le cadre du TraAM : "Éthique et formations à l’esprit critique dans les usages des outils d’IA en SVT"

     

    Nom de l'auteur et mail :

    Mathieu Goirand : prenom.nom@ac-aix-marseille.fr