from pathlib import Path

from inspect_ai.model import get_model
from inspect_ai.solver import generate, system_message

from bench_af._abstract.objects import ModelOrganism

CURRENT_DIRECTORY = Path(__file__).parent

with open(CURRENT_DIRECTORY/"default_system_prompt.md") as f:
    system_prompt = f.read()

model_organism = ModelOrganism(
    name=CURRENT_DIRECTORY.name,
    model=get_model(model="openai/gpt-4o-mini"),
    solver=[generate(), system_message(system_prompt)],
    supported_environments={"self_exfiltrate", "mvp"}
)


def get() -> ModelOrganism:
    return model_organism
