MCPcopy Create free account
hub / github.com/ResearAI/DeepReviewer-v2 / load_models

Function load_models

pasa/pasa_server.py:155–210  ·  view source on GitHub ↗

Initialize vLLM-backed agents and validate endpoints.

()

Source from the content-addressed store, hash-verified

153
154
155def load_models() -> None:
156 """Initialize vLLM-backed agents and validate endpoints."""
157 global _CRAWLER_AGENT, _SELECTOR_AGENT, _MODEL_LOAD_ERROR
158
159 try:
160 if PASA_INFERENCE_BACKEND != "vllm":
161 raise RuntimeError(
162 f"Unsupported PASA_INFERENCE_BACKEND={PASA_INFERENCE_BACKEND!r}. "
163 "This server expects vLLM backend."
164 )
165
166 if not DEFAULT_CRAWLER_PATH:
167 raise RuntimeError('PASA_CRAWLER_PATH is required.')
168 if not DEFAULT_SELECTOR_PATH:
169 raise RuntimeError('PASA_SELECTOR_PATH is required.')
170 if not os.path.exists(DEFAULT_CRAWLER_PATH):
171 raise FileNotFoundError(f"CRAWLER model path not found: {DEFAULT_CRAWLER_PATH}")
172 if not os.path.exists(DEFAULT_SELECTOR_PATH):
173 raise FileNotFoundError(f"SELECTOR model path not found: {DEFAULT_SELECTOR_PATH}")
174 if not os.path.exists(DEFAULT_PROMPTS_PATH):
175 raise FileNotFoundError(f"PROMPTS path not found: {DEFAULT_PROMPTS_PATH}")
176
177 logger.info("=" * 70)
178 logger.info("🚀 Starting PASA vLLM backend initialization")
179 logger.info(f"GPU (expected): {os.getenv('PASA_GPU_ID', '1')}")
180 logger.info(f"CRAWLER vLLM: {PASA_VLLM_CRAWLER_URL} (model={PASA_VLLM_CRAWLER_MODEL_NAME})")
181 logger.info(f"SELECTOR vLLM: {PASA_VLLM_SELECTOR_URL} (model={PASA_VLLM_SELECTOR_MODEL_NAME})")
182
183 _CRAWLER_AGENT = VLLMAgent(
184 base_url=PASA_VLLM_CRAWLER_URL,
185 model_name=PASA_VLLM_CRAWLER_MODEL_NAME,
186 tokenizer_path=DEFAULT_CRAWLER_PATH,
187 use_chat_template=True,
188 request_timeout=PASA_VLLM_REQUEST_TIMEOUT,
189 logprobs=PASA_VLLM_LOGPROBS,
190 )
191 _SELECTOR_AGENT = VLLMAgent(
192 base_url=PASA_VLLM_SELECTOR_URL,
193 model_name=PASA_VLLM_SELECTOR_MODEL_NAME,
194 tokenizer_path=None,
195 use_chat_template=False,
196 request_timeout=PASA_VLLM_REQUEST_TIMEOUT,
197 logprobs=PASA_VLLM_LOGPROBS,
198 )
199
200 _CRAWLER_AGENT.ensure_ready()
201 _SELECTOR_AGENT.ensure_ready()
202
203 logger.info("✅ PASA vLLM backend is ready")
204 logger.info("=" * 70)
205
206 except Exception as e:
207 _MODEL_LOAD_ERROR = str(e)
208 logger.error(f"❌ Failed to initialize PASA vLLM backend: {e}")
209 logger.error(traceback.format_exc())
210 raise
211
212

Callers 1

pasa_server.pyFile · 0.85

Calls 2

ensure_readyMethod · 0.95
VLLMAgentClass · 0.90

Tested by

no test coverage detected