From ff8896f93e0126ca33258756eabdb48e953acf6e Mon Sep 17 00:00:00 2001 From: Antonino Lorenzo <94693967+antoninoLorenzo@users.noreply.github.com> Date: Tue, 16 Jul 2024 19:32:35 +0200 Subject: [PATCH] Update src --- .../results/plots/context_precision.png | Bin 22405 -> 0 bytes .../rag_eval/results/plots/context_recall.png | Bin 25446 -> 0 bytes src/agent/prompts.py | 4 ++ src/main.py | 65 ------------------ 4 files changed, 4 insertions(+), 65 deletions(-) delete mode 100644 data/rag_eval/results/plots/context_precision.png delete mode 100644 data/rag_eval/results/plots/context_recall.png delete mode 100644 src/main.py diff --git a/data/rag_eval/results/plots/context_precision.png b/data/rag_eval/results/plots/context_precision.png deleted file mode 100644 index 1d8acc11877bcc6ee48af436683f32c0444aaa63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22405 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 GLK6V@Bk*+q diff --git a/data/rag_eval/results/plots/context_recall.png b/data/rag_eval/results/plots/context_recall.png deleted file mode 100644 index d51f262478fecdb6c3f41c395deecc649e1f03ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25446 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 X5U8rKI}3jE0;6$GM>YSfx&MCvK1A|; diff --git a/src/agent/prompts.py b/src/agent/prompts.py index 4e406cf..9b1d57f 100644 --- a/src/agent/prompts.py +++ b/src/agent/prompts.py @@ -208,6 +208,10 @@ 4. Some steps of the plan may provide general guidelines without actually providing a command, those steps are excluded from the final plan 5. **NEVER** provide natural language strings inside "command", textual information such as comments should go in "thought" field"""), }, + 'routing': { + 'system': """""", + 'user': """""" + } }, 'mistral': { 'plan': { diff --git a/src/main.py b/src/main.py deleted file mode 100644 index 65557d9..0000000 --- a/src/main.py +++ /dev/null @@ -1,65 +0,0 @@ -import requests - -from src import upload_knowledge -from src.agent import Agent -from src.agent.knowledge import Store -from src.agent.plan import TaskStatus -from src.agent.tools import TOOLS - - -def cli_test(): - """testing Agent""" - ollama_model = 'llama3' - tools_documentation = '\n'.join([tool.get_documentation() for tool in TOOLS]) - - # vector_db = Store() - # upload_knowledge('../data/json', vector_db) - - # ================================================================= - agent = Agent( - model=ollama_model, - tools_docs=tools_documentation - ) # , knowledge_base=vector_db) - current_session = 0 - while True: - user_input = input("Enter: ") - if user_input == "-1": - break - elif user_input == "exec": # execute plan - execution = agent.execute_plan(current_session) - for output in execution: - for i, task_overview in enumerate(output): - print(f'{i+1}. {task_overview}') - if task_overview.status == TaskStatus.DONE: - print(f'Output:\n{task_overview.output}') - - elif user_input.split(" ")[0] == "new": # create session - agent.new_session(int(user_input.split(" ")[1])) - current_session = int(user_input.split(" ")[1]) - - elif user_input.split(" ")[0] == "save": # save session - agent.save_session(int(user_input.split(" ")[1])) - - elif user_input.split(" ")[0] == "load": # load session - current_session = int(user_input.split(" ")[1]) - session_history = agent.get_session(current_session) - for msg in session_history.messages_to_dict_list(): - print(f'\n> {msg["role"]}: {msg["content"]}') - print('> Plans: ') - if session_history.plans is None: - print('NaN') - else: - for plan in session_history.plans: - print(plan) - - elif user_input.split(" ")[0] == "rename": # rename session - agent.rename_session(current_session, user_input.split(" ")[1]) - - else: # query - for chunk in agent.query(current_session, user_input, rag=False): - print(chunk, end='') - print() - - -if __name__ == "__main__": - cli_test()