diff --git a/AgentReact/agent.py b/AgentReact/agent.py index 1cbef3f..b9a87b2 100644 --- a/AgentReact/agent.py +++ b/AgentReact/agent.py @@ -17,7 +17,7 @@ def getGraph()->CompiledStateGraph: # Définition des sommets du graphe workflow.add_node(user_prompt) - workflow.add_node(call_to_LLM) + workflow.add_node(LLM_central) workflow.add_node(preparation_docs) workflow.add_node(inject_preparation_prompt) workflow.add_node("tool_node", tool_node)# BasicToolNode(tools=getTools())) # N'est pas une fonction, mais une classe instanciée, je dois précisier le nom du node @@ -30,12 +30,11 @@ def getGraph()->CompiledStateGraph: "tools":"weekly_report_tools", "no_tools":"user_prompt" }) - workflow.add_edge("user_prompt", "call_to_LLM") + workflow.add_edge("user_prompt", "LLM_central") - #workflow.set_entry_point("call_to_LLM") workflow.add_edge("weekly_report_tools", "preparation_docs") - workflow.add_edge("tool_node", "call_to_LLM") - workflow.add_conditional_edges("call_to_LLM", should_continue, { + workflow.add_edge("tool_node", "LLM_central") + workflow.add_conditional_edges("LLM_central", should_continue, { "tools":"tool_node", "no_tools":END }) diff --git a/AgentReact/utils/nodes.py b/AgentReact/utils/nodes.py index 352beb7..6fd3020 100644 --- a/AgentReact/utils/nodes.py +++ b/AgentReact/utils/nodes.py @@ -22,7 +22,9 @@ def inject_preparation_prompt(state: CustomState): """ Noeud qui vise juste à insérer le message indiquant au LLM comment travailler sur les résumés de comptes-rendus """ return {'messages': HumanMessage( "Ton but est de lire les fichiers présents dans la base de données en utilisant l'outil 'search_in_files',\ - afin de générer des rapports sur chaque semaine du stage qui y est décrit. Pour enregistrer chaque semaine du stage, utilise l'outil 'write_week_report'.\ + afin de générer des rapports sur chaque semaine du stage qui y est décrit. Il y a 25 semaines, tu dois toutes les résumer,\ + avec des détails et des informations complémentaires.\ + Pour enregistrer chaque semaine du stage, utilise l'outil 'write_week_report'. Tu DOIS les enregistrer avec cet outil.\ Une fois terminé, fais une liste de tous les outils, logiciels, méthodes, entreprises, techniques, ect.. utilisés,\ et fais en une liste avec quelques descriptions que tu devras enregistrer avec l'outil 'write_library_tools_details_on_internship'." )} @@ -53,7 +55,7 @@ def user_prompt(state: CustomState): return {'messages': messages}# Je passe unen liste, devrait écraser tous les messages précédent au lieu d'ajouter à la liste du State -def call_to_LLM(state: MessagesState): +def LLM_central(state: MessagesState): """Noeud qui s'occupe de gérer les appels au LLM""" # Initialisation du LLM model = llm.bind_tools(getTools()) diff --git a/imgs/agent.png b/imgs/agent.png index 2dfc650..b255b9d 100644 Binary files a/imgs/agent.png and b/imgs/agent.png differ