chatlearn/models/vllm/hooks/vllm_0_6_6/llm_engine.py (29 lines of code) (raw):

# Copyright 2024 Alibaba Group Holding Limited. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # ============================================================================== """Hooks of vllm-0.6.6 llm_engine remove __reduce__ function.""" import inspect from typing import Dict, Optional # pylint: disable=unused-import,wildcard-import,unused-argument from vllm.engine import llm_engine from vllm.engine.metrics_types import StatLoggerBase from vllm.executor.ray_gpu_executor import RayGPUExecutor from vllm.usage.usage_lib import UsageContext source = inspect.getsource(llm_engine.LLMEngine.__reduce__) if 'RuntimeError' in source: def __reduce__(self): # This is to ensure that the LLMEngine can be referenced in # the closure used to initialize Ray worker actors pass del llm_engine.LLMEngine.__reduce__ @classmethod def from_engine_args( cls, engine_args, usage_context: UsageContext = UsageContext.ENGINE_CONTEXT, stat_loggers: Optional[Dict[str, StatLoggerBase]] = None, ) -> "LLMEngine": """Creates an LLM engine from the engine arguments.""" # Create the engine configs. engine_config = engine_args.create_engine_config(usage_context) executor_class = RayGPUExecutor # Create the LLM engine. engine = cls( # pylint: disable=not-callable vllm_config=engine_config, executor_class=executor_class, log_stats=not engine_args.disable_log_stats, usage_context=usage_context, stat_loggers=stat_loggers, ) return engine llm_engine.LLMEngine.from_engine_args = from_engine_args