Python Entry Points
基本原理
setup.py:
entry_points={key: value}
- key -> Plugin group
- value -> [“Plugin name = Plugin value“, …]
Plugin value -> python_module:function_name
示例(vLLM)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| from setuptools import setup
setup(name='vllm_add_dummy_model', version='0.1', packages=['vllm_add_dummy_model'], entry_points={ 'vllm.general_plugins': ["register_dummy_model = vllm_add_dummy_model:register"] })
def register(): from vllm import ModelRegistry
if "MyLlava" not in ModelRegistry.get_supported_archs(): ModelRegistry.register_model("MyLlava", "vllm_add_dummy_model.my_llava:MyLlava")
|
参考资料