Agent_V2 #2
@@ -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
|
||||
})
|
||||
|
||||
@@ -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())
|
||||
|
||||
BIN
imgs/agent.png
BIN
imgs/agent.png
Binary file not shown.
|
After Width: | Height: | Size: 29 KiB |
Reference in New Issue
Block a user