Back

Un premier regard sur TanStack AI

Un premier regard sur TanStack AI

Développer des fonctionnalités alimentées par l’IA dans les applications frontend implique souvent de choisir entre la sécurité des types et la flexibilité. Soit vous vous enfermez dans le SDK d’un fournisseur spécifique et perdez la portabilité, soit vous écrivez des abstractions personnalisées qui sacrifient les garanties de compilation de TypeScript. TanStack AI propose une approche différente : un SDK IA indépendant des fournisseurs qui privilégie la sécurité des types sans vous contraindre à un framework ou un fournisseur particulier.

Cet article présente les concepts fondamentaux de TanStack AI et explique pourquoi les développeurs frontend devraient s’intéresser à cette boîte à outils en phase initiale.

Points clés à retenir

  • TanStack AI est une boîte à outils IA agnostique du framework et indépendante des fournisseurs, avec un support TypeScript robuste, actuellement en version alpha.
  • Son architecture basée sur des adaptateurs offre une inférence de types par modèle, une conception orientée streaming et des imports modulaires qui maintiennent la taille des bundles réduite.
  • Les outils isomorphes vous permettent de définir un outil une seule fois et de l’exécuter côté serveur ou client avec une sécurité des types complète dans les deux environnements.
  • Bien que non prête pour la production, TanStack AI répond à de véritables problématiques concernant le verrouillage fournisseur et la sécurité des types que les SDK IA existants laissent non résolues.

Qu’est-ce que TanStack AI ?

TanStack AI est une boîte à outils IA agnostique du framework développée par l’équipe derrière TanStack Query et TanStack Table. Elle fournit une interface unifiée pour travailler avec plusieurs fournisseurs d’IA—OpenAI, Anthropic, Gemini, Ollama, et d’autres—tout en maintenant un support TypeScript robuste de bout en bout.

La bibliothèque est actuellement en version alpha. Les API évoluent rapidement, et l’équipe a déjà livré plusieurs refactorisations architecturales majeures depuis la version initiale. Ce n’est pas une infrastructure prête pour la production. C’est un pattern émergent qui mérite d’être compris.

Idées fondamentales derrière ce SDK IA type-safe

Sécurité des types pilotée par les schémas

TanStack AI traite la sécurité des types comme une préoccupation de première classe. Lorsque vous spécifiez un modèle dans votre adaptateur, TypeScript sait immédiatement quelles options sont disponibles :

import { openaiText } from '@tanstack/ai-openai'

chat({
  adapter: openaiText('gpt-4'),
  temperature: 0.6,
})

Le modèle est intégré dans l’appel de l’adaptateur, ce qui signifie que l’autocomplétion fonctionne instantanément. Vous obtenez un typage par modèle pour les options spécifiques au fournisseur sans annotations de types manuelles.

Les définitions d’outils et de fonctions utilisent des schémas Zod (ou JSON Schema), garantissant que les entrées et sorties sont validées à la fois à la compilation et à l’exécution.

Architecture orientée streaming

Le streaming est au cœur de la conception de TanStack AI. Plutôt que de le traiter comme une réflexion après coup, le SDK se construit autour de lui. Cela compte pour les interfaces de chat, la transcription en temps réel et toute application où les utilisateurs attendent un retour immédiat.

Architecture modulaire d’adaptateurs

Les versions récentes ont divisé les adaptateurs de fournisseurs monolithiques en imports spécifiques par modalité :

import { openaiText, openaiImage, openaiVideo } from '@tanstack/ai-openai'

Cette approche maintient la taille des bundles réduite. Importez uniquement ce dont vous avez besoin. L’architecture facilite également l’ajout de nouvelles modalités par l’équipe—génération d’images, transcription, synthèse vocale—sans avoir à mettre à jour tous les fournisseurs simultanément.

TanStack AI React et support des frameworks

Bien que TanStack AI fonctionne avec du JavaScript vanilla et Solid, TanStack AI React fournit des hooks et des patterns familiers aux développeurs React. La bibliothèque suit la même philosophie agnostique du framework que TanStack Query : la logique centrale reste séparée des liaisons de framework.

Les bibliothèques clientes actuelles incluent :

  • JavaScript vanilla
  • Preact
  • React
  • Solid

Un support de frameworks supplémentaires est prévu.

Outils isomorphes : exécution serveur et client

Une fonctionnalité distinctive est le système d’outils isomorphes. Vous définissez un outil une seule fois en utilisant toolDefinition(), puis fournissez des implémentations spécifiques à l’environnement avec les méthodes .server() ou .client(). Cela offre une sécurité des types à travers toute votre application tout en permettant aux outils de s’exécuter dans le contexte approprié.

Ce pattern est particulièrement utile lorsque certaines opérations nécessitent des clés API côté serveur tandis que d’autres peuvent s’exécuter entièrement dans le navigateur.

Comparaison avec les patterns de SDK IA existants

TanStack AI se positionne comme une alternative indépendante des fournisseurs au Vercel AI SDK. Les différences clés incluent :

  • Agnostique du framework : Fonctionne avec n’importe quel framework JavaScript, pas seulement Next.js
  • Pas de couche de service : Connexion directe aux fournisseurs sans intermédiaires
  • Bundles modulaires : Importez uniquement les modalités dont vous avez besoin
  • Protocole ouvert : Pur open source sans dépendances de plateforme

Le compromis est la maturité. Le SDK de Vercel a plus d’expérience en production et de documentation. TanStack AI évolue rapidement, ce qui signifie plus de flexibilité mais moins de stabilité.

Ce qui est prévu dans la roadmap

L’équipe a défini plusieurs fonctionnalités à venir :

  • Support de Standard Schema (supprimant l’exigence de Zod)
  • Patterns de middleware
  • Composants UI headless pour les interfaces IA
  • Adaptateurs de fournisseurs supplémentaires (AWS Bedrock, OpenRouter)
  • Devtools et rapports d’utilisation

Conclusion

TanStack AI n’est pas prêt pour des applications de production nécessitant des API stables. Mais si vous explorez les patterns de SDK IA, construisez des prototypes ou évaluez des options pour des projets futurs, il vaut la peine d’expérimenter avec.

La combinaison d’un support TypeScript robuste, de flexibilité de framework et d’architecture modulaire répond à de véritables problématiques dans les outils IA actuels. À mesure que la bibliothèque mûrit, ces fondations pourraient en faire un choix convaincant pour les équipes qui veulent le contrôle de leur stack IA sans sacrifier l’expérience développeur.

Commencez avec la documentation officielle et attendez-vous à ce que les choses changent.

FAQ

TanStack AI est actuellement en version alpha, et ses API changent fréquemment. L'équipe a livré plusieurs changements architecturaux majeurs depuis le lancement. Il est mieux adapté au prototypage, à l'expérimentation et à l'évaluation d'options d'outillage futures plutôt qu'à des charges de travail de production nécessitant des interfaces stables et bien documentées.

TanStack AI est agnostique du framework et se connecte directement aux fournisseurs d'IA sans couche de service. Il offre des imports modulaires par modalité et n'a aucune dépendance de plateforme. Le Vercel AI SDK est plus mature avec une documentation plus large mais est plus étroitement couplé à l'écosystème Next.js.

TanStack AI supporte actuellement OpenAI, Anthropic, Gemini, Ollama, et d'autres via son système d'adaptateurs. La roadmap inclut des fournisseurs supplémentaires tels qu'AWS Bedrock et OpenRouter. Chaque adaptateur de fournisseur est modulaire, vous n'importez donc que les modalités que vous utilisez réellement dans votre application.

Actuellement, TanStack AI utilise des schémas Zod pour définir les entrées et sorties d'outils, fournissant une validation à la fois à la compilation et à l'exécution. Cependant, l'équipe a le support de Standard Schema dans sa roadmap, ce qui permettra des bibliothèques de schémas alternatives et supprimera la dépendance stricte à Zod dans les versions futures.

Gain Debugging Superpowers

Unleash the power of session replay to reproduce bugs, track slowdowns and uncover frustrations in your app. Get complete visibility into your frontend with OpenReplay — the most advanced open-source session replay tool for developers. Check our GitHub repo and join the thousands of developers in our community.

OpenReplay