from toolbench.inference.Downstream_tasks.base_env import base_env class base_search_method: """For the base tree search method, you need to support the following functions""" def __init__(self,llm,io_func: base_env, process_id=0, callbacks = None): """Args: llm: The interface of the LLM io_func(base_env): Interface to the environment, process_id (int, optional): In multiprocessing annotation, this describes the process id. Defaults to 0. callbacks (_type_, optional): _description_. Defaults to None. """ pass def to_json(self,answer=False,process=True): ''' return a json object, If "answer" = True. must have the following field to make answer annotation If "process" = True. You need provide the full information of the tree searching process "answer_generation": { "valid_data": bool, "final_answer": string, "finish_type": enum["give_up","give_answer"] "train_messages": [ [openAI-message] ], } ''' raise NotImplementedError def start(self, **args): """This is the entry point of the searching process""" raise NotImplementedError