STATELESS_ACTIONS = ["go_back", "Restart", "Wait", 'read_page', 'to_google', 'go_back', ]
ONLY_VALUE_ACTIONS = ['update_policy', 'answer', 'human_in_the_loop', 'send_msg_to_user', 'User_response']
NO_BID_ACTIONS = ['update_policy', 'answer', 'human_in_the_loop', 'send_msg_to_user', 'read_page', 'to_google',
                  'go_back', 'Restart', 'Wait']
HUMAN_IN_THE_LOOP_FUNC_NAME = ['human_in_the_loop', 'send_msg_to_user']

ANSWER_KEYS = ['text', 'content', 'answer', 'message']
DEFAULT_WEB = "https://www.google.com/?hl=en"
# OPENAI_MODEL_NAME = "gpt-4-1106-preview"
OPENAI_MODEL_NAME_GPT_35 = "gpt-3.5-turbo-0125"
OPENAI_MODEL_NAME_GPT_4O_MINI = 'gpt-4o-2024-08-06'  # "gpt-4o-mini-2024-07-18"  # "gpt-4-turbo"  # "gpt-4o-mini-2024-07-18"
GENAI_MODEL_NAME = "meta-llama/llama-3-70b-instruct"

# MODEL_NAME = "gpt-4o-mini-2024-07-18"  # 'gpt-4o-2024-08-06'  # "gpt-4o-mini-2024-07-18"  # "gpt-4-turbo"  # "gpt-4o-mini-2024-07-18"
MODEL_NAME = 'gpt-4o-2024-08-06'  # 'gpt-4o-2024-08-06'  # "gpt-4o-mini-2024-07-18"  # "gpt-4-turbo"  # "gpt-4o-mini-2024-07-18"
DEFAULT_ENV = "browsergym/WebArenaSafeEnv.3"
DEFAULT_LLM_TYPE = "openai"  # "genai"

SUPPORTED_ARCHITECTURES = {'general', 'parser_agent'}

MEMBERS = ["ParserAgent", "GengralWebAgent"]
OPTIONS = ["FINISH"] + MEMBERS

############ ENUMS ################
OPENENDED_TASK = "browsergym/openended"
WEBARENA_SAFE_TASK = "browsergym/WebArenaSafeEnv"
WEBARENA_TASK = "browsergym/webarena"
WORKARENA_TASK = "workarena"
CUSTOM_OPENENDED_TASK = "browsergym/OpenEndedEnv-v0"

PU_PATH = "../pu_utils/prod"

# Constants for action handling
ARGS_KEY = 'args'
STATE_KEY = 'state'
ID_KEY = 'id'
EMPTY_STATE_ID = 'empty_state'
UNKNOWN_ID = 'unknown'
FINAL_ANSWER = 'FINAL_ANSWER'

LANGCHAIN_API_KEY = "LANGCHAIN_API_KEY"
OPENAI_API_KEY = "OPENAI_API_KEY"

DEFAULT_ARCHITECTURE = 'dynamic_policy'

HUMAN_IN_THE_LOOP_FUNC_NAME = "send_msg_to_user"

ANSWER_ACTION = "answer"
