MCPcopy
hub / github.com/RapidAI/RapidOCR / get_model_url

Method get_model_url

python/rapidocr/inference_engine/base.py:117–173  ·  view source on GitHub ↗
(cls, file_info: FileInfo)

Source from the content-addressed store, hash-verified

115
116 @classmethod
117 def get_model_url(cls, file_info: FileInfo) -> Dict[str, str]:
118 engine_type = file_info.engine_type.value
119 ocr_version = file_info.ocr_version.value
120 task_type = file_info.task_type.value
121 lang_type = normalize_lang(file_info.lang_type)
122 model_type = file_info.model_type.value
123
124 model_dict = OmegaConf.select(
125 cls.model_info, f"{engine_type}.{ocr_version}.{task_type}"
126 )
127
128 if not model_dict:
129 raise ValueError(
130 f"Unsupported configuration: {engine_type}.{ocr_version}.{task_type}.{model_type}"
131 )
132
133 model_key = resolve_model_key(
134 file_info.task_type,
135 file_info.ocr_version,
136 file_info.lang_type,
137 file_info.model_type,
138 )
139
140 if model_key is not None:
141 if model_key in model_dict:
142 return model_dict[model_key]
143
144 raise ValueError(
145 f"Unsupported configuration: {engine_type}.{ocr_version}.{task_type}.{lang_type}.{model_type}"
146 )
147
148 # 优先查找 server 模型
149 if model_type == ModelType.SERVER.value:
150 for k in model_dict:
151 if k.startswith(lang_type) and model_type in k:
152 return model_dict[k]
153
154 for k in model_dict:
155 if k.startswith(lang_type) and model_type in k:
156 return model_dict[k]
157
158 logger.error(
159 "Unsupported configuration:\n"
160 f" engine_type = {engine_type}\n"
161 f" ocr_version = {ocr_version}\n"
162 f" task_type = {task_type}\n"
163 f" lang_type = {lang_type}\n"
164 f" model_type = {model_type}\n"
165 "\n"
166 "Please refer to the official model list for supported combinations:\n"
167 "https://rapidai.github.io/RapidOCRDocs/main/model_list/\n"
168 "\n"
169 "Example valid usage:\n"
170 " from rapidocr import LangRec, OCRVersion, RapidOCR\n"
171 " engine = RapidOCR(params={'Rec.ocr_version': OCRVersion.PPOCRV5, 'Rec.lang_type': LangRec.CH, 'Rec.model_type': 'mobile'})",
172 )
173 raise ValueError("Invalid OCR configuration.")
174

Callers 10

download_taskFunction · 0.80
get_dict_key_urlMethod · 0.80
setup_modelMethod · 0.80
__init__Method · 0.80
_get_onnx_pathMethod · 0.80
get_dict_key_urlMethod · 0.80
__init__Method · 0.80
__init__Method · 0.80
_init_model_pathMethod · 0.80
get_default_model_infoFunction · 0.80

Calls 2

normalize_langFunction · 0.85
resolve_model_keyFunction · 0.85

Tested by 1

get_default_model_infoFunction · 0.64