Fonctions d'IA : Génération de code à l'exécution avec vérification automatisée

AI Functions est un nouveau projet de Strands Labs construit sur le SDK Strands Agents qui permet la génération de code IA au moment de l'exécution avec une vérification automatisée continue. Au lieu de simplement générer du texte pour que les humains l'intègrent, il produit du code qui s'exécute dans votre application au moment de l'appel, renvoyant des objets Python natifs comme des DataFrames, des modèles Pydantic ou des connexions de base de données.
Comment fonctionnent les AI Functions
L'abstraction principale est le décorateur @ai_function. Vous écrivez une fonction Python avec une spécification en langage naturel dans la docstring au lieu du code d'implémentation. Lorsque la fonction est appelée, le décorateur intercepte l'appel, construit une instruction à partir de la docstring (en substituant les arguments), l'envoie à un LLM, exécute le code généré dans votre processus Python et renvoie le résultat sous forme d'objet natif.
Voici l'exemple de base de la source :
from ai_functions import ai_function
@ai_function
def translate_text(text: str, lang: str) -> str:
"""
Traduisez le texte ci-dessous dans la langue suivante : {lang}.
{text}
"""
result = translate_text("The quarterly results exceeded expectations.", lang="French")
Différenciateur clé : Vérification automatisée
La fonctionnalité critique est les post-conditions – des assertions Python simples qui définissent à quoi ressemble une sortie correcte. Celles-ci s'exécutent à chaque appel de fonction, pas seulement avant le déploiement. Si la vérification échoue, le système retente automatiquement avec l'erreur comme retour. L'humain n'inspecte jamais le code généré ; les post-conditions gèrent la vérification à chaque fois.
Concept du Logiciel 3.1
L'article positionne cela comme "Logiciel 3.1" – une évolution du cadre d'Andrej Karpathy où le Logiciel 3.0 est "l'humain donne des instructions, le LLM génère, l'humain vérifie." AI Functions représente "l'humain spécifie, le LLM génère et exécute, la machine vérifie – au moment de l'exécution." Le modèle d'exécution diffère fondamentalement : le LLM ne produit pas de texte pour l'intégration humaine mais du code qui s'exécute directement dans votre application.
Cela change trois aspects simultanément : où l'IA s'intègre dans votre logiciel (au moment de l'exécution au lieu du seul temps de développement), ce qu'elle produit (des objets actifs sur lesquels vous pouvez appeler des méthodes au lieu de texte sérialisé) et comment vous lui faites confiance (vérification automatisée continue au lieu d'une revue humaine unique).
📖 Lire la source complète : HN AI Agents
👀 See Also

Complexité Temporelle MCP : L'Outil d'Analyse Statique Transmet la Complexité en Notation Grand O aux Agents d'IA de Codage
Time Complexity MCP est un serveur MCP open source qui effectue une analyse statique de code pour détecter la complexité Big-O, transmettant directement les résultats à des agents d'IA de codage comme Claude Code ou Copilot sans consommation de tokens. Il prend en charge JavaScript, TypeScript, Python, Java, Kotlin et Dart.

Ktx : Une couche de contexte exécutable pour corriger la précision des agents de données
Ktx est une couche de contexte exécutable open source qui rend les agents fiables sur votre stack de données en combinant l'ingestion de wikis Markdown avec des définitions sémantiques en YAML.

Six dépôts GitHub pour le développement de code avec Claude
Un utilisateur de Reddit a testé et partagé six dépôts GitHub conçus pour améliorer les projets Claude Code, incluant des outils pour le développement structuré, la génération d'interface utilisateur, la gestion des tâches, la mémoire, l'exploration de l'écosystème et l'automatisation des flux de travail.

Générateur de prompts socratiques construit comme artefact React dans Claude
Un développeur a créé un générateur de prompts socratique qui fonctionne comme un artefact React directement dans Claude, avec détection automatique de la complexité des entrées et génération de prompts à trois niveaux avec analyse des modes de défaillance.