__init__.py 1.78 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import importlib


class LazyImport:
    def __init__(self, module_name, class_name):
        self.module_name = module_name
        self.class_name = class_name
        self._module = None

    def _load(self):
        if self._module is None:
            module = importlib.import_module(self.module_name)
            self._module = getattr(module, self.class_name)
        return self._module

    def __getattr__(self, name):
        module = self._load()
        return getattr(module, name)

    def __call__(self, *args, **kwargs):
        module = self._load()
        return module(*args, **kwargs)


25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# SGL API Components
from sglang.api import (
    Runtime,
    assistant,
    assistant_begin,
    assistant_end,
    flush_cache,
    function,
    gen,
    gen_int,
    gen_string,
    get_server_args,
    image,
    select,
    set_default_backend,
    system,
    user,
    user_begin,
    user_end,
Yuanhan Zhang's avatar
Yuanhan Zhang committed
44
    video,
45
46
47
)

# Global Configurations
Lianmin Zheng's avatar
Lianmin Zheng committed
48
from sglang.global_config import global_config
49

Ying Sheng's avatar
Ying Sheng committed
50
51
# SGL Backends
from sglang.lang.backend.runtime_endpoint import RuntimeEndpoint
52
53
54
55
56

Anthropic = LazyImport("sglang.lang.backend.anthropic", "Anthropic")
LiteLLM = LazyImport("sglang.lang.backend.litellm", "LiteLLM")
OpenAI = LazyImport("sglang.lang.backend.openai", "OpenAI")
VertexAI = LazyImport("sglang.lang.backend.vertexai", "VertexAI")
Ying Sheng's avatar
Ying Sheng committed
57

Yineng Zhang's avatar
Yineng Zhang committed
58
59
from .version import __version__

60
61
62
63
# public APIs management
__all__ = [
    "global_config",
    "Anthropic",
胡译文's avatar
胡译文 committed
64
    "LiteLLM",
65
66
67
68
69
70
71
72
73
74
75
76
    "OpenAI",
    "RuntimeEndpoint",
    "VertexAI",
    "function",
    "Runtime",
    "set_default_backend",
    "flush_cache",
    "get_server_args",
    "gen",
    "gen_int",
    "gen_string",
    "image",
Yuanhan Zhang's avatar
Yuanhan Zhang committed
77
    "video",
78
79
80
81
82
83
84
85
86
    "select",
    "system",
    "user",
    "assistant",
    "user_begin",
    "user_end",
    "assistant_begin",
    "assistant_end",
]