9 points par xguru 2025-02-21 | 1 commentaires | Partager sur WhatsApp
  • Un framework opinionated basé sur TypeScript pour créer rapidement des applications et fonctionnalités d’IA
  • Fournit les principales capacités nécessaires au développement IA, comme les workflows, les agents, le RAG, les intégrations et les évaluations (evals)
  • Peut s’exécuter en local ou dans un cloud serverless

Principales caractéristiques

  • LLM Models : prend en charge, via une interface unifiée utilisant le Vercel AI SDK, divers fournisseurs de LLM comme OpenAI, Anthropic et Google Gemini. Il est possible de choisir librement le modèle ainsi que l’activation du streaming
  • Agents : les Agents sont un système qui permet au modèle de langage de décider lui-même de l’ordre des actions. Ils peuvent disposer d’outils, de workflows et de données synchronisées afin d’appeler des fonctions si nécessaire ou d’exploiter une base de connaissances
  • Tools : les Tools sont des fonctions TypeScript que les agents ou les workflows peuvent exécuter. Chaque outil possède un schéma de paramètres, une fonction exécuteur implémentant la logique, ainsi que des droits d’accès aux services intégrés
  • Workflows : les Workflows sont des machines à états de longue durée basées sur des graphes. Ils peuvent gérer les boucles, les branches, l’attente d’une intervention humaine, l’inclusion d’autres workflows, la gestion des erreurs, les tentatives de relance, le parsing, etc. Un traçage OpenTelemetry est appliqué à chaque étape
  • RAG (Retrieval-Augmented Generation) : le RAG permet de construire une base de connaissances pour les agents. Il fournit du contexte via un pipeline ETL comprenant le découpage en chunks, les embeddings, la recherche vectorielle, etc.
  • Integrations : dans Mastra, une Integration est un client API type-safe généré automatiquement, permettant d’utiliser des services tiers comme outils ou comme étapes de workflow
  • Evals : évalue automatiquement les résultats des LLM selon des approches fondées sur le modèle, sur des règles ou sur des méthodes statistiques. Renvoie un score normalisé entre 0 et 1, exploitable pour comparer les performances et pour la journalisation

1 commentaires

 
GN⁺ 2025-02-21
Avis sur Hacker News
  • Le code d'exemple n'est pas très intéressant

    • Au premier coup d'œil, cela ressemble à une manière maladroite de représenter un graphe dans le diagramme
    • Ce n'est qu'un simple « workflow » et cela ne dépend pas du résultat d'exécution
  • J'ai de très grandes attentes pour Mastra

    • Nous allons travailler sur plusieurs sujets liés aux agents chez ElectricSQL, et Mastra donne l'impression d'une bouffée d'air frais
    • L'équipe est excellente — Sam a été cofondateur de Gatsby, j'ai aussi étroitement collaboré avec Shane et Abhi, et j'ai une grande confiance dans leurs capacités en produit et en ingénierie
  • Ça a l'air super ! Petite question : prévoyez-vous de prendre en charge les serveurs SSE MCP ?

    • J'ai vu que Stdio est pris en charge, et je pourrais faire tourner un proxy, mais le SSE serait génial
  • En tant qu'utilisateur de Mastra, j'en suis satisfait

    • Il atteint un bon équilibre en fournissant une abstraction de haut niveau tout en laissant un contrôle de bas niveau quand on en a besoin
    • J'ai regardé plusieurs frameworks avant de me lancer, et la clarté ainsi que la facilité d'utilisation de Mastra se sont démarquées
  • Je ne comprends pas très bien les agents

    • Je ne comprends pas pourquoi il faudrait faire semblant d'avoir plusieurs personnalités, surtout quand elles utilisent toutes le même modèle
    • Je me demande s'il existe des cas d'usage qu'un simple appel d'API à un LLM moderne avec un prompt approprié ne peut pas résoudre
    • Je me demande si le but est de construire le prompt et de le découper en plusieurs appels pour donner au LLM des instructions plus proches
    • Je ne parle pas du function calling
  • Félicitations ! Question annexe : est-ce que le site web est aussi open source ?

    • J'aimerais bien « emprunter » le code de la barre de navigation
    • J'ai trouvé plus de 300 branches sur GitHub, mais je n'ai pas pu le retrouver dans le dépôt
  • Le fait que cela ait été créé par les développeurs de Gatsby est un point négatif, pas positif

    • Je pense que ce sera le prochain logiciel à être abandonné
  • Il existe des centaines de frameworks similaires qui font plus ou moins la même chose

    • Parce qu'il est facile d'écrire un framework qui orchestre un modèle et plusieurs outils
    • En réalité, dans la plupart des cas, on n'a pas besoin d'un framework
    • Tous les frameworks se concentrent sur des choses triviales, et il suffit de regarder la section des exemples pour s'en rendre compte
    • Cela ne représente que 5 % du travail
    • Les développeurs doivent combler les 95 % restants, y compris de nombreuses tâches qui sortent du périmètre du framework
  • Félicitations pour le lancement

    • J'ai constaté qu'en passant d'un fournisseur de LLM à un autre sans modifier les prompts, les performances se dégradent
    • Je me demande comment les développeurs gèrent cette « traduction », et je pense qu'il pourrait y avoir dans le framework d'évaluation des données sur les meilleures pratiques
  • J'utilise le framework de Mastra et j'ai tout appris sur le fonctionnement des agents grâce à la documentation

    • Les fondateurs sont aussi très actifs et aiment aider