Agent_V3 #3
@@ -189,29 +189,6 @@ def get_skill(skill_name:str=None)->str:
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
return f"Erreur lors de la lecture : {str(e)}"
|
return f"Erreur lors de la lecture : {str(e)}"
|
||||||
|
|
||||||
@tool
|
|
||||||
def ask_human(request:str)->str:
|
|
||||||
"""
|
|
||||||
Demander quelque chose à un assistant humain. Permet d'obtenir des informations supplémentaires,
|
|
||||||
ou qu'une action soit réalisée.
|
|
||||||
|
|
||||||
Args:
|
|
||||||
request (str): Ce qui est demandé à l'humain
|
|
||||||
|
|
||||||
Returns:
|
|
||||||
str: Réponse de l'humain
|
|
||||||
"""
|
|
||||||
print("--- L'IA A BESOIN D'UN HUMAIN ! ---")
|
|
||||||
print(f"L'IA demande : {request}")
|
|
||||||
|
|
||||||
user_response = input("Réponse humaine: ") # Input bloque le système en attendant l'humain
|
|
||||||
# J'aurais possiblement utiliser d'autres approches comme https://docs.langchain.com/oss/javascript/langchain/human-in-the-loop
|
|
||||||
# Mais Human in the loop se place AVANT l'outil. Ici, l'outil consiste justement à demander quelque chose à un humain.
|
|
||||||
|
|
||||||
print("-------")
|
|
||||||
|
|
||||||
return user_response
|
|
||||||
|
|
||||||
@tool
|
@tool
|
||||||
def search_in_files(query:str, state: Annotated[dict, InjectedState])->str:
|
def search_in_files(query:str, state: Annotated[dict, InjectedState])->str:
|
||||||
"""
|
"""
|
||||||
@@ -301,7 +278,7 @@ def getTools()->List['Tools']:
|
|||||||
"""
|
"""
|
||||||
Récupérer la liste des tools
|
Récupérer la liste des tools
|
||||||
"""
|
"""
|
||||||
return [internet_search, write_file, editTodo, read_file, ask_human, search_in_files, addTodo, removeTodo, get_skill]
|
return [internet_search, write_file, editTodo, read_file, search_in_files, addTodo, removeTodo, get_skill]
|
||||||
|
|
||||||
def getWeeklyReportTools()->List['Tools']:
|
def getWeeklyReportTools()->List['Tools']:
|
||||||
"""
|
"""
|
||||||
|
|||||||
Reference in New Issue
Block a user