Common Module

The common module provides shared utilities and server components.

Server Components

class flagevalmm.server.ServerDataset(task_name: str, task_manager, task_type: str = 'vqa')[source]

Bases: Dataset

Get data from the server

__init__(task_name: str, task_manager, task_type: str = 'vqa') None[source]
get_data(index: int)[source]
class flagevalmm.server.ModelServer(model_name: str, port: int = 8000, backend: str = 'vllm', extra_args: str | None = None)[source]

Bases: object

Currently, it is only used for vllm server, it will be support SGLang etc. in the future.

__init__(model_name: str, port: int = 8000, backend: str = 'vllm', extra_args: str | None = None)[source]
get_vllm_cmd(args: List)[source]
get_lmdeploy_cmd(args: List)[source]
get_flagscale_cmd(args: List)[source]
get_sglang_cmd(args: List)[source]
launch_server(args: List)[source]
stop()[source]
cleanup()[source]
class flagevalmm.server.server_dataset.ServerDataset(task_name: str, task_manager, task_type: str = 'vqa')[source]

Bases: Dataset

Get data from the server

__init__(task_name: str, task_manager, task_type: str = 'vqa') None[source]
get_data(index: int)[source]
class flagevalmm.server.model_server.ModelServer(model_name: str, port: int = 8000, backend: str = 'vllm', extra_args: str | None = None)[source]

Bases: object

Currently, it is only used for vllm server, it will be support SGLang etc. in the future.

__init__(model_name: str, port: int = 8000, backend: str = 'vllm', extra_args: str | None = None)[source]
get_vllm_cmd(args: List)[source]
get_lmdeploy_cmd(args: List)[source]
get_flagscale_cmd(args: List)[source]
get_sglang_cmd(args: List)[source]
launch_server(args: List)[source]
stop()[source]
cleanup()[source]
flagevalmm.server.utils.get_meta(task_name: str, server_ip: str, server_port: int, timeout: int = 1000)[source]
flagevalmm.server.utils.get_task_info(server_ip: str, server_port: int, timeout: int = 1000)[source]
flagevalmm.server.utils.submit(task_name: str, model_name: str, server_ip: str, server_port: int, timeout: int = 1000, output_dir: str = '') Any[source]
flagevalmm.server.utils.get_data(index: int, task_name: str, server_ip: str, server_port: int, timeout: int = 1000) Any[source]
flagevalmm.server.utils.get_retrieval_data(index: int, task_name: str, data_type: str, server_ip: str, server_port: int, timeout: int = 1000)[source]
flagevalmm.server.utils.parse_args()[source]
flagevalmm.server.utils.process_images_symbol(text: str, dst_pattern: str | None = None) Tuple[str, List[int]][source]
flagevalmm.server.utils.load_pil_image(img_paths: List[str], img_idx: List[int], reduplicate: bool = False, reqiures_img: bool = False) Tuple[List[Image], List[int]][source]
flagevalmm.server.utils.default_collate_fn(batch: List[Tuple[Any, Any, Any]]) Tuple[Any, Any, Any][source]
flagevalmm.server.utils.is_port_occupied(port: int) bool[source]
flagevalmm.server.utils.get_random_port() int[source]
flagevalmm.server.utils.merge_args(cfg: Config, task_config_file: str, args: Namespace) Config[source]
flagevalmm.server.utils.maybe_register_class(cfg: Config, task_config_file: str) None[source]

Register custom dataset and evaluator classes from config file. :param cfg: Config object containing registration info :param task_config_file: Path to task config file

Common Utilities

This section will be expanded as more common utilities are documented.