Plugins
Les plugins Mistral Workflows sont des packages Python standards qui exposent des workflows, activités et dépendances réutilisables sous l’espace de noms mistralai.workflows.plugins. Installez-les avec pip et importez-les dans votre code comme n’importe quel autre package.
from mistralai.workflows.plugins.mistralai import mistralai_chat_complete
from mistralai.workflows.plugins.mistralai import Agent, RunnerPlugins officiels
Plugin Mistral AI
Package : mistralai-workflows-plugins-mistralai
Fournit une intégration native de Mistral AI pour les opérations LLM, l’exécution d’agents, la gestion de session et la prise en charge MCP au sein des workflows.
Activités principales :
| Activité | Description |
|---|---|
mistralai_chat_complete | Chat completion à tour unique |
mistralai_chat_stream | Chat completion en flux |
mistralai_chat_parse | Génération de chat avec analyse structurée du résultat |
mistralai_embeddings | Générer des embeddings de texte |
mistralai_ocr | Extraire du texte d’images et de documents |
mistralai_create_agent | Créer un agent distant |
mistralai_update_agent | Mettre à jour un agent distant |
mistralai_start_conversation | Démarrer une conversation avec l’agent |
mistralai_start_conversation_stream | Démarrer une conversation en flux avec l’agent |
mistralai_append_conversation | Ajouter des messages à une conversation existante |
mistralai_append_conversation_stream | Ajouter des messages à une conversation existante en flux |
Composants principaux :
| Composant | Description |
|---|---|
Agent | Définition d’agent incluant modèle, outils et configuration |
Runner | Orchestration de l’exécution de l’agent (conversation et boucles outils) |
LocalSession | Session d’agent en local (processus actuel) |
RemoteSession | Session d’agent distante et avec état |
MCPStdioConfig | Configuration pour serveurs MCP locaux (stdio) |
MCPSSEConfig | Configuration pour serveurs MCP distants (SSE) |
MCPConfig | Alias de type union pour MCPStdioConfig | MCPSSEConfig |
collect_mcp_tools | Activité : collecte de définitions d’outils depuis un ou plusieurs serveurs MCP |
execute_mcp_tool | Activité : exécuter un outil nommé sur son serveur MCP |
get_mistral_client | Dépendance : renvoie un client mistralai.Mistral configuré avec une authentification adaptée aux workflows, ainsi que des métadonnées de télémétrie et d’observabilité |
Exemple — chat completion :
import mistralai.workflows as workflows
from mistralai.workflows import workflow
from mistralai.workflows.plugins.mistralai import (
ChatCompletionRequest,
UserMessage,
mistralai_chat_complete,
)
from pydantic import BaseModel
class Input(BaseModel):
text: str
@workflow.define(name="summarize")
class SummarizeWorkflow:
@workflow.entrypoint
async def run(self, params: Input) -> str:
request = ChatCompletionRequest(
model="mistral-large-latest",
messages=[UserMessage(content=f"Summarize this text:\n\n{params.text}")],
)
result = await mistralai_chat_complete(request)
return result.choices[0].message.contentPour la documentation complète sur Agent, Runner, les sessions, MCP, et la gestion multi-agents, consultez le guide Agents durables.
Plugin d'évaluation
Package : mistralai-workflows-plugins-evaluations
Exécute des évaluations hors ligne dans un workflow. Chaque enregistrement s'exécute dans son propre workflow enfant, avec la tâche et les scorers en activités parallèles, et les résultats sont téléchargés dans Studio.
Composants principaux :
| Composant | Description |
|---|---|
evaluation.run | Exécuter une évaluation sur un ensemble de données |
evaluation.rescore | Noter à nouveau une exécution persistée sans relancer la tâche |
evaluation.optimize | Rechercher de meilleurs prompts et paramètres |
evaluation.task / evaluation.scorer | Décorateurs qui transforment une tâche et ses scorers en activités |
Pour le guide complet, voir Plugin d'évaluation de workflow.
Installation
Installez les plugins dont vous avez besoin avec le SDK principal :
pip install mistralai-workflows
pip install mistralai-workflows-plugins-mistralai
pip install mistralai-workflows-plugins-evaluationsCréer vos propres bibliothèques réutilisables
Vous pouvez créer des packages personnalisés pour partager des workflows, activités et dépendances réutilisables au sein de votre organisation.
L’espace de noms mistralai.workflows.plugins est réservé aux plugins maintenus par Mistral. Pour votre propre code réutilisable, utilisez votre propre nom de package de premier niveau.
Organisation des fichiers :
acme-workflows/
├── pyproject.toml
├── acme_workflows/
│ ├── __init__.py
│ ├── activities.py
│ └── workflows.py
└── tests/pyproject.toml :
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "acme-workflows"
version = "0.1.0"
dependencies = [
"mistralai-workflows>=2.0.0",
]Après avoir installé votre package, importez-le directement :
from acme_workflows.activities import my_custom_activity
from acme_workflows.workflows import my_rag_pipeline