---
title: "Bibliothèques d'agents"
description: "Les bibliothèques des éditeurs et les cadres libres pour construire un agent, et lequel choisir."
url: https://meridal.fr/apprendre/bibliotheques-d-agents/
language: fr
written: 2026-10-08
verified: 2026-10-08
license: CC BY 4.0
---

[Apprendre](https://meridal.fr/apprendre/) › [Construction et programmation](https://meridal.fr/apprendre/dossier/construire/)

Choisir · Niveau 3, Construire · 14 minutes

# Bibliothèques d'agents

OpenAI, Anthropic, Google et Microsoft publient chacun une bibliothèque pour construire un agent ; LangGraph, CrewAI, Pydantic AI, Mastra, smolagents et LlamaIndex sont indépendantes. Dix bibliothèques vivantes, quatre à ne plus commencer, le même agent écrit dans trois d'entre elles, et laquelle prendre selon votre projet.

Écrit le 8 octobre 2026 · Vérifié le 8 octobre 2026

## Vous saurez

- Savoir quand une bibliothèque d'agents sert, et quand l'appel d'outils suffit
- Comparer dix bibliothèques sur leur langage, leur licence et leur état
- Écarter celles qui s'arrêtent
- Choisir selon votre langage, votre nuage et votre modèle

## Dans le parcours

[Développement d'applications d'IA](https://meridal.fr/apprendre/parcours/dev-avance/)

Étape 3 sur 10

- [← Avant L'appel d'outils](https://meridal.fr/apprendre/appel-d-outils/)
- [↑ Plus général Les agents d'IA](https://meridal.fr/apprendre/qu-est-ce-qu-un-agent/)
- [↓ Plus concret Premier appel à un modèle](https://meridal.fr/apprendre/premier-appel/)
- [→ Ensuite Serveurs MCP existants](https://meridal.fr/apprendre/serveurs-mcp-existants/)

L'essentiel

1. Une bibliothèque d'agents gère la boucle : le modèle demande un outil, le programme l'exécute, le résultat revient au modèle. Pour un ou deux outils, l'appel d'outils de l'API suffit ([l'appel d'outils](https://meridal.fr/apprendre/appel-d-outils/)).
2. Les quatre éditeurs ont la leur : OpenAI Agents SDK, Claude Agent SDK, Agent Development Kit de Google, Agent Framework de Microsoft ; plusieurs acceptent les modèles des autres.
3. Quatre outils sont à ne plus commencer : AutoGen est en maintenance, Semantic Kernel est remplacé par Agent Framework, l'API Assistants d'OpenAI est fermée depuis le 26 août 2026, et Agent Builder ferme le 30 novembre 2026.
4. Le Claude Agent SDK est classé alpha, et son usage relève des conditions commerciales d'Anthropic, malgré la licence MIT de son dépôt Python.
5. Les tutoriels vieillissent vite : noms de modèles, fonctions renommées, API fermées. Partez de la documentation du jour.

## Panorama des bibliothèques

Dix bibliothèques vivantes, au 8 octobre 2026

Un avantage À savoir

| Outil et offre | Ce qu'elle fait | Langages | Version | Licence | État |
|---|---|---|---|---|---|
| OpenAI Agents SDK OpenAI | Un cadre léger, pour un ou plusieurs agents | Python, TypeScript | 0.23.1 en Python, 0.19.0 en TypeScript ; octobre 2026 | Un avantage : MIT | Un avantage : Actif ; ouvert aux modèles d'autres éditeurs, plus d'une centaine |
| Claude Agent SDK Anthropic | Les outils, la boucle et la gestion du contexte de Claude Code, en bibliothèque | Python, TypeScript | 0.2.164 en Python, classée alpha ; 0.3.293 en TypeScript | À savoir : Dépôt Python sous MIT ; l'usage relève des conditions commerciales d'Anthropic | À savoir : Alpha ; fait tourner le programme de Claude Code, avec une clé d'API |
| Agent Development Kit Google | Un cadre où l'agent s'écrit en code, déployable partout | Python, Java, Kotlin, Go, TypeScript | 2.11.0 en Python ; version 2 depuis mai 2026 | Un avantage : Apache 2.0 | Un avantage : Actif ; pensé pour Gemini, ouvert aux autres modèles |
| Agent Framework Microsoft | Des agents et des enchaînements de plusieurs agents, pour la production | .NET, Python ; Go à part | 1.21.0 ; version 1.0 depuis avril 2026 | Un avantage : MIT | Un avantage : Stable ; successeur de Semantic Kernel et d'AutoGen |
| LangGraph LangChain | Un moteur bas niveau pour des agents longs : état, reprise, validation humaine, mémoire | Python, TypeScript | 1.2.14 en Python ; version 1.0 depuis octobre 2025 | Un avantage : MIT | Un avantage : Stable |
| CrewAI CrewAI | Des équipes d'agents à rôles, et des flux pilotés par événements | Python, de 3.10 à 3.13 | 1.15.25 ; octobre 2026 | Un avantage : MIT | Un avantage : Actif |
| Pydantic AI Pydantic | Des agents à outils, avec des sorties typées et contrôlées | Python | 2.54.0 ; version 2 depuis juin 2026 | Un avantage : MIT | Un avantage : Stable |
| Mastra Mastra | Applications et agents d'IA en TypeScript | TypeScript | @mastra/core 1.75.0 ; octobre 2026 | À savoir : Apache 2.0, sauf les dossiers ee/, sous une licence d'entreprise | Un avantage : Actif |
| smolagents Hugging Face | Environ mille lignes ; un agent qui écrit ses actions en code | Python | 1.26.0 ; mai 2026 | Un avantage : Apache 2.0 | À savoir : Pas de version depuis mai 2026 ; le dépôt reste actif |
| LlamaIndex LlamaIndex | Des agents à outils, autour des documents | Python ; la version TypeScript est abandonnée | 0.14.25 ; septembre 2026 | Un avantage : MIT | À savoir : L'éditeur a reporté sa priorité sur LlamaParse ; le cadre reste disponible |

*D'après les dépôts, la documentation et les registres PyPI et npm, lus le 8 octobre 2026. Les versions changent chaque semaine ; seules les plus récentes sont données.*

## Options

Trois façons de construire un agent

Sans bibliothèque

l'appel d'outils de l'API, et une boucle de quelques lignes

- l'API de l'éditeur, seule

La bibliothèque d'un éditeur

au plus près de ses modèles et de son nuage

- OpenAI Agents SDK
- Claude Agent SDK
- Agent Development Kit, Google
- Agent Framework, Microsoft

Un cadre indépendant

un même code pour plusieurs éditeurs

- LangGraph
- CrewAI
- Pydantic AI
- Mastra
- smolagents
- LlamaIndex

*Le rangement est celui de Meridal.*

Une bibliothèque apporte la boucle de l'agent, la description des outils, la mémoire de la conversation, parfois la reprise après une coupure et la validation par une personne. Elle ajoute aussi une dépendance, qui change de version chaque semaine. Ce qu'est un agent : [qu'est-ce qu'un agent](https://meridal.fr/apprendre/qu-est-ce-qu-un-agent/).

## Sélection par besoin

| Votre projet | À regarder d'abord | Pourquoi |
|---|---|---|
| Un agent simple, un ou deux outils | Pas de bibliothèque ; ou OpenAI Agents SDK, ou Pydantic AI | La boucle tient en quelques lignes ; les deux bibliothèques citées sont légères |
| Une équipe .NET, sur Azure | Agent Framework de Microsoft | .NET et Python, stable depuis la version 1.0, successeur de Semantic Kernel |
| Gemini, ou Google Cloud | Agent Development Kit | Pensé pour Gemini, ouvert aux autres modèles ; cinq langages |
| Un agent qui lit des fichiers et lance des commandes, avec Claude | Claude Agent SDK | Les outils de Claude Code en bibliothèque ; encore en alpha, avec une clé d'API : un produit tiers ne peut pas proposer la connexion à claude.ai sans accord |
| Un agent long, qui reprend après une coupure et attend une validation | LangGraph | Exécution durable, état, validation humaine et mémoire |
| Une application web en TypeScript | Mastra, ou OpenAI Agents SDK en TypeScript | Mastra est fait pour TypeScript ; lisez sa licence, qui exclut les dossiers ee/ |

## Comparatif

Le même genre d'agent, tel que chaque documentation le montre le 8 octobre 2026. Le code est reproduit tel quel, noms de modèles compris, et n'a pas été exécuté ici ; il demande une clé d'API de l'éditeur ([le poste de développement](https://meridal.fr/apprendre/poste-de-developpement/)).

OpenAI Agents SDK Pydantic AI Google ADK LangGraph

Un agent, un outil décrit par sa docstring, et le Runner qui fait tourner la boucle.

`agent.py`

```
import asyncio
from agents import Agent, Runner
from agents.decorators import tool

@tool
def history_fun_fact() -> str:
    """Return a short history fact."""
    return "Sharks are older than trees."

agent = Agent(
    name="History Tutor",
    instructions="Answer history questions clearly. Use history_fun_fact when it helps.",
    tools=[history_fun_fact],
)

async def main():
    result = await Runner.run(
        agent,
        "Tell me something surprising about ancient life on Earth.",
    )
    print(result.final_output)

if __name__ == "__main__":
    asyncio.run(main())
```

Un agent, un outil, et une réponse typée, vérifiée par Pydantic.

`agent.py`

```
from typing import Literal

from pydantic import BaseModel, Field

from pydantic_ai import Agent, RunContext

class Sentiment(BaseModel):
    label: Literal['positive', 'negative', 'neutral']
    score: float = Field(ge=-1, le=1)

agent = Agent('openai:gpt-6-sol', output_type=Sentiment)

@agent.tool
def recent_reviews(ctx: RunContext, product: str) -> list[str]:
    """Fetch recent review snippets for a product."""
    return ['The new release fixed everything I complained about!']

result = agent.run_sync('How are people feeling about the Extract app?')
print(result.output)
#> label='positive' score=0.9
```

Deux outils décrits par leur docstring ; le modèle choisit lequel appeler.

`agent.py`

```
import datetime
from zoneinfo import ZoneInfo
from google.adk.agents import Agent

def get_weather(city: str) -> dict:
    """Retrieves the current weather report for a specified city.

    Args:
        city (str): The name of the city for which to retrieve the weather report.

    Returns:
        dict: status and result or error msg.
    """
    if city.lower() == "new york":
        return {
            "status": "success",
            "report": (
                "The weather in New York is sunny with a temperature of 25 degrees"
                " Celsius (77 degrees Fahrenheit)."
            ),
        }
    else:
        return {
            "status": "error",
            "error_message": f"Weather information for '{city}' is not available.",
        }

def get_current_time(city: str) -> dict:
    """Returns the current time in a specified city.

    Args:
        city (str): The name of the city for which to retrieve the current time.

    Returns:
        dict: status and result or error msg.
    """

    if city.lower() == "new york":
        tz_identifier = "America/New_York"
    else:
        return {
            "status": "error",
            "error_message": (
                f"Sorry, I don't have timezone information for {city}."
            ),
        }

    tz = ZoneInfo(tz_identifier)
    now = datetime.datetime.now(tz)
    report = (
        f'The current time in {city} is {now.strftime("%Y-%m-%d %H:%M:%S %Z%z")}'
    )
    return {"status": "success", "report": report}

root_agent = Agent(
    name="weather_time_agent",
    model="gemini-flash-latest",
    description=(
        "Agent to answer questions about the time and weather in a city."
    ),
    instruction=(
        "You are a helpful agent who can answer user questions about the time and weather in a city."
    ),
    tools=[get_weather, get_current_time],
)
```

Le niveau en dessous : un graphe d'étapes, ici avec un faux modèle, pour montrer la mécanique.

`graphe.py`

```
from langgraph.graph import StateGraph, MessagesState, START, END

def mock_llm(state: MessagesState):
    return {"messages": [{"role": "ai", "content": "hello world"}]}

graph = StateGraph(MessagesState)
graph.add_node(mock_llm)
graph.add_edge(START, "mock_llm")
graph.add_edge("mock_llm", END)
graph = graph.compile()

graph.invoke({"messages": [{"role": "user", "content": "hi!"}]})
```

Ce qui s'arrête

1. 30 septembre 2025 · AutoGen dernière version ; le projet passe en maintenance, sans nouvelle fonction
2. Avril 2026 · Microsoft Agent Framework passe en version 1.0 : successeur de Semantic Kernel et d'AutoGen ; Semantic Kernel ne reçoit plus que des correctifs
3. 3 juin 2026 · OpenAI Agent Builder est déprécié
4. 26 août 2026 · OpenAI l'API Assistants est fermée ; elle est remplacée par les API Responses et Conversations
5. 30 novembre 2026 · OpenAI Agent Builder ferme ; ChatKit reste

*La version TypeScript de LlamaIndex est aussi abandonnée, son dépôt archivé. AG2, une branche d'AutoGen, est un projet distinct, toujours publié.*

## Méthode

- **Versions et licences** : les registres PyPI et npm, et l'API de GitHub, lus le 8 octobre 2026.
- **Ce que fait chaque bibliothèque** : son dépôt et sa documentation ; les extraits de code y sont copiés tels quels.
- **Les arrêts** : les pages de dépréciation des éditeurs et les dépôts.
- **Ce que la page ne mesure pas** : la qualité des agents construits, qui dépend du modèle et des outils plus que de la bibliothèque ; aucun banc d'essai indépendant entre bibliothèques n'a été lu.

Jours écoulés depuis la dernière version publiée, au 8 octobre 2026

1. Agent Framework 08/10/2026 0 j
2. CrewAI 07/10/2026 1 j
3. Mastra 07/10/2026 1 j
4. Claude Agent SDK 06/10/2026 2 j
5. LangGraph 06/10/2026 2 j
6. Semantic Kernel 06/10/2026 2 j
7. Pydantic AI 03/10/2026 5 j
8. OpenAI Agents SDK 02/10/2026 6 j
9. Google ADK 02/10/2026 6 j
10. LlamaIndex 21/09/2026 17 j
11. smolagents 29/05/2026 132 j
12. AutoGen 30/09/2025 373 j

*D'après les registres PyPI et npm, lus le 8 octobre 2026. En gris, plus de trois mois sans version. Une version récente ne dit pas qu'un projet a un avenir : Semantic Kernel publie encore des correctifs, mais ses nouveautés vont à Agent Framework.*

## Pièges de lecture

| On lit | Ce qu'il faut savoir |
|---|---|
| « Sous licence MIT » | Pour le Claude Agent SDK, l'usage relève aussi des conditions commerciales d'Anthropic ; pour Mastra, les dossiers ee/ sont sous licence d'entreprise ; pour AutoGen, MIT vaut pour le code, la documentation est sous CC BY 4.0 |
| « Une bibliothèque de Microsoft, donc durable » | Semantic Kernel et AutoGen ont été remplacés en 2026 par Agent Framework |
| « FastMCP » | Deux choses : une classe du SDK officiel de MCP, renommée MCPServer en version 2, et un cadre distinct, publié sous le même nom ; les vieux tutoriels ne marchent plus avec le SDK du jour |
| Un exemple en ligne avec gpt-4o | Des documentations officielles gardent d'anciens noms de modèles ; vérifiez le modèle avant de lancer quoi que ce soit ( [le marché des modèles](https://meridal.fr/apprendre/modeles/) ) |
| « L'API Assistants » | Fermée le 26 août 2026 ; le code qui s'en sert ne tourne plus |

## Vérification

**1 Comprendre Quand se passer d'une bibliothèque d'agents ?**

Pour un agent simple, un ou deux outils : l'appel d'outils de l'API et une boucle de quelques lignes suffisent, sans dépendance de plus.

**2 Comprendre Pourquoi ne pas commencer un projet sur AutoGen ou Semantic Kernel ?**

AutoGen est en maintenance, sans nouvelle fonction ; Semantic Kernel est remplacé par Agent Framework de Microsoft, qui reçoit les nouveautés.

**3 Appliquer Une équipe .NET sur Azure veut un agent qui appelle trois outils internes. Que regarder d'abord ?**

Agent Framework de Microsoft : .NET et Python, stable depuis la version 1.0, successeur de Semantic Kernel.

## Lectures suivantes

↑ Plus général [Les agents d'IA Comprendre · Niveau 1 · 14 minutes](https://meridal.fr/apprendre/qu-est-ce-qu-un-agent/)

← Avant [L'appel d'outils S'exercer · Niveau 3 · 20 minutes](https://meridal.fr/apprendre/appel-d-outils/)

Vous êtes ici

Bibliothèques d'agents

→ Ensuite [Serveurs MCP existants Faire · Niveau 3 · 14 minutes](https://meridal.fr/apprendre/serveurs-mcp-existants/)

Développement d'applications d'IA · étape 4 sur 10

↓ Plus concret [Premier appel à un modèle S'exercer · Niveau 3 · 15 minutes](https://meridal.fr/apprendre/premier-appel/)

[Tout le dossier « Construction et programmation »](https://meridal.fr/apprendre/dossier/construire/)

Les pages qui renvoient ici

- [Lecture de documents : OCR, vision, PDF et tableaux](https://meridal.fr/apprendre/lecture-de-documents-ocr-vision-pdf/)
- [Un RAG en production](https://meridal.fr/apprendre/rag-en-production/)

**Limites et sources**

Les versions changent chaque semaine ; celles de la page sont celles du 8 octobre 2026.

Le code des onglets vient de la documentation des éditeurs et n'a pas été exécuté ici.

1. [OpenAI Agents SDK](https://github.com/openai/openai-agents-python/blob/main/README.md) ; [Claude Agent SDK](https://code.claude.com/docs/en/agent-sdk/overview.md) ; [Google ADK](https://github.com/google/adk-python/blob/main/README.md) ; [Microsoft Agent Framework](https://github.com/microsoft/agent-framework/blob/main/README.md) ; [LangGraph](https://github.com/langchain-ai/langgraph/blob/main/README.md) ; [CrewAI](https://github.com/crewAIInc/crewAI/blob/main/README.md) ; [Pydantic AI](https://github.com/pydantic/pydantic-ai/blob/main/README.md) ; [Mastra](https://github.com/mastra-ai/mastra/blob/main/README.md) ; [smolagents](https://github.com/huggingface/smolagents/blob/main/README.md) ; [LlamaIndex](https://github.com/run-llama/llama_index/blob/main/README.md).
2. [OpenAI, dépréciations](https://developers.openai.com/api/docs/deprecations) ; [AutoGen](https://github.com/microsoft/autogen/blob/main/README.md) ; [Semantic Kernel](https://github.com/microsoft/semantic-kernel/blob/main/README.md).
3. Le relevé : `apprendre/recherches/2026-10-08-dev-avance.json` ; le tableau : `apprendre/donnees/bibliotheques-agents.json`.

Écrit par Meridal, avec l'aide de l'IA ; chaque fait vérifié à sa source et relu avant publication. Texte et schémas sous licence [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/deed.fr) : reprenez-les en citant Meridal. Le code sous licence MIT.

Service correspondant

Outiller un métier de bout en bout

à partir de 8 250 €, sur devis

[Voir le service](https://meridal.fr/offre/#metier)

## Un premier échange de 30 minutes

En visio et sans frais : vous décrivez votre situation, nous vous indiquons ce qui est réalisable, avec quels outils et pour quel ordre de prix. Vous pouvez aussi nous écrire ; chaque message reçoit une réponse écrite.

[Réserver 30 minutes](https://meridal.fr/contact/#reserver) [Écrire un message](https://meridal.fr/contact/)
