- Publié le
Agent de Traduction de Blog CAMEL AI avec Mistral LLM

Dans cet article, je décris l'utilisation du framework CAMEL AI pour créer un agent IA très simple alimenté par les modèles Mistral LLM, conçu pour aider dans mon projet de blog.
Les objectifs de cet article sont doubles :
- Décrire un agent IA très simple en utilisant le framework CAMEL AI et le point de terminaison API Mistral AI LLM.
- Fournir un cas d'utilisation pratique pour cet agent IA.
Aperçu de CAMEL AI
CAMEL AI est une plateforme qui permet aux utilisateurs de créer et de gérer des agents IA en utilisant des instructions en langage naturel. Il prend en charge divers modèles, y compris Mistral AI, pour permettre des workflows intelligents pour différentes applications.
Agent IA de Traduction de Blog
Cet agent IA traduit automatiquement les articles de blog en anglais d'un dépôt GitHub en plusieurs langues (par exemple, allemand, espagnol) et valide les articles traduits dans le même dépôt, garantissant que toutes les traductions sont stockées et gérées dans le projet GitHub.
Diagramme de Workflow

Diagramme généré en utilisant Mermaid.
Dépendances :
- Python 3.x
- camel (https://docs.camel-ai.org/)
- PyGithub (https://pygithub.readthedocs.io/)
L'Agent IA
Cet extrait de code crée l'agent IA en utilisant le modèle Mistral (pour la traduction en allemand).
import os
from camel.models import ModelFactory
from camel.types import ModelPlatformType, ModelType
from camel.messages import BaseMessage
from camel.agents import ChatAgent
# Assurez-vous que la variable d'environnement MISTRAL_API_KEY est définie
if not os.getenv('MISTRAL_API_KEY'):
raise EnvironmentError("MISTRAL_API_KEY environment variable is not set.")
# Créez le modèle Mistral AI en utilisant la plateforme Mistral et le type de modèle.
# La température est définie à 0.0 pour des réponses déterministes (aucune aléatoire dans la sortie).
mistral_model = ModelFactory.create(
model_platform=ModelPlatformType.MISTRAL,
model_type=ModelType.MISTRAL_LARGE,
model_config_dict={"temperature": 0.0},
)
# L'assistant est chargé de traduire les articles de blog de l'anglais vers l'allemand (Allemagne).
# Il ne doit produire que la traduction au format MDX sans commentaires supplémentaires.
german_system_message = BaseMessage.make_assistant_message(
role_name="translator",
content="""
Vous êtes un traducteur spécialisé des articles de blog écrits en anglais vers l'allemand (Allemagne).
Vous recevrez un article en anglais au format MDX.
Traduisez en allemand en utilisant un langage technique et ne traduisez pas les termes techniques anglais.
Très important : Écrivez uniquement dans la sortie l'article traduit au format MDX à l'intérieur d'un extrait sans autres commentaires dans le format d'un extrait exactement comme :
```mdx
<mdx_contents>
```
"""
)
# Créez le ChatAgent avec le modèle Mistral et le message système spécifié.
# Cet agent gérera les demandes de traduction selon le rôle et les instructions définis.
german_agent = ChatAgent(model=mistral_model, system_message=german_system_message)
Cet extrait de code montre comment invoquer l'agent pour traduire un article de blog.
# Définissez le contenu du message utilisateur au format MDX.
# Ce contenu représente un article de blog à traduire par l'agent IA.
content = """
---
title: CAMEL AI Blog Translator Agent with Mistral LLM
description: "A post on using CAMEL AI Agents with Mistral LLM for a practical blog translation use case."
date: Oct 09 2024
lastUpdate: Oct 09 2024
tags: ["CAMEL AI", "MDX", "Mistral AI", "agent", "blog post", "german", "german_agent", "german_blog post", "german_post", "user", "user_message"]
category: "AI Agents"
---
While it's easy to recognize the immense potential of AI Agents, it's not always straightforward to find a useful application for them in professional or personal projects.
In this post, I describe using the CAMEL AI framework to create a very simple AI Agent powered by Mistral LLMs, designed to assist with my blog project.
The goals of this post are twofold:
1. To describe a very simple AI Agent using the CAMEL AI framework and Mistral AI LLM API endpoint.
2. To provide a practical use case for this AI Agent.
Link(s):
[CAMEL AI](https://docs.camel-ai.org)
[Mistral AI API](https://docs.mistral.ai/api/)
"""
# Créez un message utilisateur avec le rôle 'user' et le contenu de l'article de blog.
# Ce message est envoyé à l'agent IA pour traduction.
user_message = BaseMessage.make_user_message(role_name="user", content=content)
# Invoquez l'agent IA avec le message utilisateur et récupérez la réponse de l'agent.
# La réponse doit contenir l'article de blog traduit au format MDX.
agent_response = german_agent.step(user_message)
# Affichez le contenu traduit de la réponse de l'agent.
print(agent_response.msgs[0].content)
Voici l'article de blog traduit en allemand.
```mdx
---
title: CAMEL AI Blog Translator Agent mit Mistral LLM
description: "Ein Beitrag über die Verwendung von CAMEL AI Agents mit Mistral LLM für einen praktischen Blog-Übersetzungsanwendungsfall."
date: Oct 09 2024
lastUpdate: Oct 09 2024
---
Während es leicht ist, das immense Potenzial von AI Agents zu erkennen, ist es nicht immer einfach, eine nützliche Anwendung für sie in beruflichen oder persönlichen Projekten zu finden.
In diesem Beitrag beschreibe ich die Verwendung des CAMEL AI Frameworks zur Erstellung eines sehr einfachen AI Agents, der von Mistral LLMs angetrieben wird und mir bei meinem Blog-Projekt hilft.
Die Ziele dieses Beitrags sind zweifach:
1. Einen sehr einfachen AI Agent unter Verwendung des CAMEL AI Frameworks und des Mistral AI LLM API Endpunkts zu beschreiben.
2. Einen praktischen Anwendungsfall für diesen AI Agent bereitzustellen.
Link(s):
[CAMEL AI](https://docs.camel-ai.org)
[Mistral AI API](https://docs.mistral.ai/api/)
```
Intégration avec GitHub
Le package PyGithub (https://pygithub.readthedocs.io/) est utilisé pour intégrer le dépôt du projet de blog afin de :
- Lire les fichiers d'articles de blog du dépôt.
- Valider les fichiers d'articles traduits dans le dépôt.
Liens :
CAMEL AI
Mistral AI API
Vous avez aimé cet article ? Vous l'avez trouvé utile ? N'hésitez pas à laisser un commentaire ci-dessous pour partager vos réflexions ou poser des questions. Un compte GitHub est requis pour participer à la discussion.