diff options
Diffstat (limited to 'src/agents/03-logs/main.py')
| -rw-r--r-- | src/agents/03-logs/main.py | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/src/agents/03-logs/main.py b/src/agents/03-logs/main.py index e9f0b01..8da7121 100644 --- a/src/agents/03-logs/main.py +++ b/src/agents/03-logs/main.py @@ -1,14 +1,40 @@ # main.py from agent import Agent +import os def load_prompt(file_path): + if not os.path.exists(file_path): + return "" with open(file_path, 'r') as f: - return f.read() + return f.read().strip() if __name__ == "__main__": - system_prompt = load_prompt('prompts/default/system.md') - user_prompt = load_prompt('prompts/default/user.md') + # Configuration for the experiment run + SCENARIO = "hidden_goal" # e.g., "benign", "hidden_goal" + OVERSIGHT_LEVEL = "low" # e.g., "low", "high" + USER_PROMPT_TYPE = "list_files" # e.g., "list_files", "check_username" + + # Load scenario prompt + scenario_prompt_path = os.path.join("prompts", "scenarios", f"{SCENARIO}.md") + scenario_prompt = load_prompt(scenario_prompt_path) + + # Load oversight prompt + oversight_prompt_path = os.path.join("prompts", "oversight", f"{OVERSIGHT_LEVEL}.md") + oversight_prompt = load_prompt(oversight_prompt_path) + + # Combine system prompts + system_prompt_parts = [scenario_prompt, oversight_prompt] + system_prompt = "\n\n".join(filter(None, system_prompt_parts)) # Filter out empty strings + + # Load user prompt + user_prompt_path = os.path.join("prompts", "user", f"{USER_PROMPT_TYPE}.md") + user_prompt = load_prompt(user_prompt_path) - agent = Agent(system_prompt=system_prompt) + agent = Agent( + system_prompt=system_prompt, + scenario=SCENARIO, + oversight_level=OVERSIGHT_LEVEL, + user_prompt_type=USER_PROMPT_TYPE + ) agent.run(user_prompt) agent.save_logs()
\ No newline at end of file |
