Orivel Orivel
Ouvrir le menu

Dernieres taches et discussions

Parcourez les derniers contenus benchmark (taches et discussions). Filtrez par genre pour cibler ce que vous voulez comparer.

Genres de comparaison

Liste des modeles

Programmation

Anthropic Claude Haiku 4.5 VS OpenAI GPT-5.4

Outil de synchronisation de fichiers en ligne de commande

Écrivez un script Python pour un outil de synchronisation de fichiers en ligne de commande. Le script doit accepter trois arguments en ligne de commande : 1. `source_path` : Le chemin vers le répertoire source. 2. `replica_path` : Le chemin vers le répertoire réplique qui sera synchronisé. 3. `log_file_path` : Le chemin vers un fichier où toutes les opérations seront consignées. Fonctionnalité principale : 1. **Synchronisation unidirectionnelle :** L’outil doit effectuer une synchronisation unidirectionnelle, faisant du répertoire `replica_path` une copie exacte du répertoire `source_path`. - Les fichiers et répertoires présents dans la source mais pas dans la réplique doivent être copiés dans la réplique. - Les fichiers et répertoires présents dans la réplique mais pas dans la source doivent être supprimés de la réplique. - Les fichiers présents aux deux emplacements mais dont le contenu diffère doivent être mis à jour dans la réplique (la version source écrase la version réplique). 2. **Détection des modifications :** Utilisez le hachage MD5 du contenu des fichiers pour déterminer si un fichier doit être mis à jour. Ne vous fiez pas aux horodatages de modification. 3. **Journalisation :** Consignez toutes les opérations sur les fichiers (par exemple, "COPIER file.txt", "SUPPRIMER old_dir", "METTRE À JOUR changed.log") à la fois sur la console et dans le fichier de journal spécifié. Chaque entrée du journal doit être horodatée. 4. **Exécution :** Le script doit effectuer l’opération de synchronisation exactement une fois puis se terminer. Il ne doit pas fonctionner en boucle. Exigences : - Utiliser Python 3. - Utiliser la bibliothèque `argparse` pour l’analyse des arguments en ligne de commande. - La solution doit gérer correctement les répertoires imbriqués, les répertoires vides et les fichiers de tailles variées. - Le script doit être un fichier unique et autonome.

28
09 Apr 2026 09:38

Programmation

Anthropic Claude Haiku 4.5 VS OpenAI GPT-5.2

Analyseur avancé de fichiers journaux pour un format personnalisé

Écrivez une fonction Python `parse_log(log_content: str) -> list` qui analyse un fichier journal avec un format personnalisé. La fonction doit prendre le contenu du journal sous forme d'une seule chaîne multilignes et retourner une liste de dictionnaires, où chaque dictionnaire représente une transaction correctement terminée. **Règles du format de journal :** 1. **`START <transaction_id> <timestamp>`** : Marque le début d'une transaction. `transaction_id` est une chaîne sans espaces. `timestamp` est une chaîne au format ISO 8601. 2. **`END <transaction_id> <status> <timestamp>`** : Marque la fin d'une transaction. Le `transaction_id` doit correspondre à une transaction ouverte. `status` est un mot unique (par ex., `SUCCESS`, `FAIL`). 3. **`EVENT <key1>=<value1> <key2>="<value with spaces>" ...`** : Représente un événement au sein de la transaction active en cours. Il se compose d'une ou plusieurs paires clé-valeur. Les valeurs contenant des espaces doivent être entourées de guillemets doubles. 4. **`COMMENT # <any text>`** : Une ligne de commentaire qui doit être ignorée. **Logique de traitement :** * La fonction doit traiter les lignes de manière séquentielle. * Une ligne `EVENT` est associée à la transaction démarrée la plus récente qui n'a pas encore été terminée. * Une transaction n'est considérée complète et valide que si elle a une ligne `START` et une ligne `END` correspondantes avec le même `transaction_id`. * La sortie doit être une liste de dictionnaires. Chaque dictionnaire représente une transaction terminée et doit avoir les clés suivantes : * `transaction_id` (chaîne) * `start_time` (chaîne) * `end_time` (chaîne) * `status` (chaîne) * `events` (une liste de dictionnaires, où chaque dictionnaire intérieur représente les paires clé-valeur d'une ligne `EVENT`). **Gestion des erreurs et cas limites :** * Ignorer toutes les lignes `COMMENT`, les lignes vides ou les lignes malformées qui ne correspondent pas aux formats spécifiés. * Ignorer tout `EVENT` qui survient en dehors d'une transaction active (c.-à-d. avant le premier `START` ou après la fermeture d'une transaction). * Si une nouvelle ligne `START` apparaît avant que la transaction précédente n'ait été fermée par un `END`, la transaction précédente est considérée comme « abandonnée » et doit être rejetée. La nouvelle ligne `START` commence une nouvelle transaction. * Toute transaction encore ouverte à la fin du fichier journal est également considérée comme « abandonnée » et ne doit pas être incluse dans la sortie finale.

143
23 Mar 2026 08:42

Programmation

OpenAI GPT-5.4 VS Anthropic Claude Haiku 4.5

Analyseur de fichiers journaux pour l'activité des utilisateurs

Écrivez une fonction Python `analyze_logs(log_data)` qui prend en entrée une seule chaîne multilignes `log_data`. Chaque ligne de la chaîne représente une entrée de journal au format `[TIMESTAMP] LEVEL: MESSAGE`. La fonction doit analyser ces journaux et renvoyer un dictionnaire résumant les données. Le dictionnaire résumé doit comporter trois clés: 1. `counts_by_level`: Un dictionnaire où les clés sont les niveaux de log (par ex., 'INFO', 'WARN', 'ERROR') et les valeurs sont le nombre de journaux pour ce niveau. 2. `successful_logins`: Une liste de noms d'utilisateur uniques (chaînes) qui se sont connectés avec succès. Une connexion réussie est indiquée par un message du type "Utilisateur 'username' connecté...". 3. `failed_login_ips`: Un dictionnaire où les clés sont des adresses IP (chaînes) et les valeurs sont le nombre de tentatives de connexion échouées depuis cette IP. Une connexion échouée est indiquée par un message du type "Échec de la tentative de connexion pour l'utilisateur 'username' depuis l'IP 'ip_address'". Votre fonction doit être robuste et gérer gracieusement les lignes de journal malformées ou non pertinentes en les ignorant. L'analyse des niveaux de log doit être insensible à la casse (par ex., 'info' et 'INFO' doivent tous deux compter pour le total, qui doit être stocké sous la clé en majuscules 'INFO').

173
15 Mar 2026 08:13

Programmation

OpenAI GPT-5 mini VS Anthropic Claude Haiku 4.5

Implémenter un résolveur de dépendances avec gestion des versions sémantiques

Votre tâche est d'écrire une fonction qui simule le résolveur de dépendances d'un gestionnaire de paquets. La fonction doit prendre une liste de tous les paquets disponibles, un paquet cible à installer et son exigence de version. Elle doit renvoyer une liste plate de paquets (nom et version spécifique) devant être installés, dans un ordre topologique valide (dépendances avant dépendants). Le résolveur doit gérer les contraintes de version sémantique (SemVer). Pour cette tâche, vous n'avez besoin de prendre en charge que les versions exactes, les spécificateurs caret (`^`) et tilde (`~`). - `1.2.3`: Doit être exactement la version 1.2.3. - `^1.2.3`: Autorise les versions de 1.2.3 jusqu'à, mais sans inclure, 2.0.0 (c.-à-d. `>=1.2.3 <2.0.0`). - `~1.2.3`: Autorise les versions de 1.2.3 jusqu'à, mais sans inclure, 1.3.0 (c.-à-d. `>=1.2.3 <1.3.0`). Votre implémentation doit : 1. Sélectionner la version la plus élevée possible de chaque paquet qui satisfait toutes les contraintes qui lui sont imposées par d'autres paquets dans l'arbre des dépendances. 2. Produire une liste triée topologiquement pour l'installation. 3. Gérer gracieusement et signaler des erreurs pour : - Conflits de versions non résolubles (p. ex., une dépendance requiert `^1.0.0` et une autre requiert `^2.0.0` du même paquet). - Dépendances circulaires (p. ex., le paquet A dépend de B et B dépend de A). - Un paquet requis ou une version manquante. Vous pouvez choisir n'importe quel langage de programmation pour votre implémentation. Définissez la signature de la fonction et les structures de données comme vous le jugez approprié, mais rendez-les claires.

174
15 Mar 2026 06:11

Liens associes

X f L