Skip to content

Commit 8833ae3

Browse files
committed
run make style
1 parent 79c03ce commit 8833ae3

File tree

6 files changed

+176
-126
lines changed

6 files changed

+176
-126
lines changed

src/guidellm/executor/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
from .executor import Executor
22
from .profile_generator import (
3-
rate_type_to_load_gen_mode,
4-
rate_type_to_profile_mode,
3+
FixedRateProfileGenerator,
54
Profile,
65
ProfileGenerationMode,
76
ProfileGenerator,
8-
FixedRateProfileGenerator,
97
SweepProfileGenerator,
8+
rate_type_to_load_gen_mode,
9+
rate_type_to_profile_mode,
1010
)
1111

1212
__all__ = [

src/guidellm/executor/profile_generator.py

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,21 +19,23 @@
1919
rate_type_to_load_gen_mode = {
2020
"synchronous": LoadGenerationMode.SYNCHRONOUS,
2121
"constant": LoadGenerationMode.CONSTANT,
22-
"poisson": LoadGenerationMode.POISSON
22+
"poisson": LoadGenerationMode.POISSON,
2323
}
2424

2525

2626
class ProfileGenerationMode(Enum):
2727
FIXED_RATE = "fixed_rate"
2828
SWEEP = "sweep"
2929

30+
3031
rate_type_to_profile_mode = {
3132
"synchronous": ProfileGenerationMode.FIXED_RATE,
3233
"constant": ProfileGenerationMode.FIXED_RATE,
3334
"poisson": ProfileGenerationMode.FIXED_RATE,
3435
"sweep": ProfileGenerationMode.SWEEP,
3536
}
3637

38+
3739
@dataclass
3840
class Profile:
3941
load_gen_mode: LoadGenerationMode
@@ -69,7 +71,12 @@ def next(self, current_report: TextGenerationBenchmarkReport) -> Optional[Profil
6971

7072
@ProfileGenerator.register(ProfileGenerationMode.FIXED_RATE)
7173
class FixedRateProfileGenerator(ProfileGenerator):
72-
def __init__(self, load_gen_mode: Optional[LoadGenerationMode], rates: Optional[List[float]] = None, **kwargs):
74+
def __init__(
75+
self,
76+
load_gen_mode: Optional[LoadGenerationMode],
77+
rates: Optional[List[float]] = None,
78+
**kwargs,
79+
):
7380
super().__init__(ProfileGenerationMode.FIXED_RATE)
7481
if load_gen_mode == "synchronous" and rates and len(rates) > 0:
7582
raise ValueError("custom rates are not supported in synchronous mode")
@@ -78,17 +85,18 @@ def __init__(self, load_gen_mode: Optional[LoadGenerationMode], rates: Optional[
7885
self._generated: bool = False
7986
self._rate_index: int = 0
8087

81-
def next(
82-
self, current_report: TextGenerationBenchmarkReport
83-
) -> Optional[Profile]:
88+
def next(self, current_report: TextGenerationBenchmarkReport) -> Optional[Profile]:
8489
if self._load_gen_mode.name == LoadGenerationMode.SYNCHRONOUS.name:
8590
if self._generated:
8691
return None
8792
self._generated = True
8893
return Profile(
8994
load_gen_mode=LoadGenerationMode.SYNCHRONOUS, load_gen_rate=None
9095
)
91-
elif self._load_gen_mode.name in {LoadGenerationMode.CONSTANT.name, LoadGenerationMode.POISSON.name}:
96+
elif self._load_gen_mode.name in {
97+
LoadGenerationMode.CONSTANT.name,
98+
LoadGenerationMode.POISSON.name,
99+
}:
92100
if self._rate_index >= len(self._rates):
93101
return None
94102
current_rate = self._rates[self._rate_index]
@@ -154,4 +162,4 @@ def next(self, current_report: TextGenerationBenchmarkReport) -> Optional[Profil
154162
load_gen_mode=LoadGenerationMode.CONSTANT, load_gen_rate=rate
155163
)
156164

157-
return None
165+
return None

src/guidellm/main.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,11 @@
22

33
from guidellm.backend import Backend
44
from guidellm.core import TextGenerationBenchmarkReport
5-
from guidellm.executor import Executor, rate_type_to_load_gen_mode, rate_type_to_profile_mode
5+
from guidellm.executor import (
6+
Executor,
7+
rate_type_to_load_gen_mode,
8+
rate_type_to_profile_mode,
9+
)
610
from guidellm.request import (
711
EmulatedRequestGenerator,
812
FileRequestGenerator,
@@ -107,10 +111,10 @@ def main(
107111
)
108112
else:
109113
raise ValueError(f"Unknown data type: {data_type}")
110-
114+
111115
profile_mode = rate_type_to_profile_mode(rate_type)
112116
load_gen_mode = rate_type_to_load_gen_mode.get(rate_type, None)
113-
117+
114118
# Create executor
115119
executor = Executor(
116120
request_generator=request_generator,
Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,29 @@
1-
import pytest
21
from unittest.mock import MagicMock, patch
2+
3+
import pytest
4+
35
from guidellm.backend.base import Backend
4-
from guidellm.executor import Executor
5-
from guidellm.executor import Profile, ProfileGenerator
6+
from guidellm.executor import Executor, Profile, ProfileGenerator
67
from guidellm.executor.profile_generator import ProfileGenerationMode
78
from guidellm.request.base import RequestGenerator
89
from guidellm.scheduler import LoadGenerationMode
910

11+
1012
def test_executor_creation():
1113
mock_request_generator = MagicMock(spec=RequestGenerator)
1214
mock_backend = MagicMock(spec=Backend)
1315
profile_mode = ProfileGenerationMode.SWEEP
1416
profile_args = None
15-
max_requests = None,
16-
max_duration = None,
17-
executor = Executor(mock_backend, mock_request_generator, profile_mode, profile_args, max_requests, max_duration);
17+
max_requests = (None,)
18+
max_duration = (None,)
19+
executor = Executor(
20+
mock_backend,
21+
mock_request_generator,
22+
profile_mode,
23+
profile_args,
24+
max_requests,
25+
max_duration,
26+
)
1827
assert executor.request_generator == mock_request_generator
1928
assert executor.backend == mock_backend
2029
assert executor.max_requests == max_requests
@@ -25,47 +34,54 @@ def test_executor_creation():
2534
def mock_request_generator():
2635
return MagicMock(spec=RequestGenerator)
2736

37+
2838
@pytest.fixture
2939
def mock_backend():
3040
return MagicMock(spec=Backend)
3141

42+
3243
@pytest.fixture
3344
def mock_scheduler():
34-
with patch('guidellm.executor.executor.Scheduler') as MockScheduler:
45+
with patch("guidellm.executor.executor.Scheduler") as MockScheduler:
3546
yield MockScheduler
3647

37-
def test_executor_run(mock_request_generator, mock_backend, mock_scheduler):
3848

49+
def test_executor_run(mock_request_generator, mock_backend, mock_scheduler):
3950
mock_profile_generator = MagicMock(spec=ProfileGenerator)
4051
profiles = [
4152
Profile(load_gen_mode=LoadGenerationMode.CONSTANT, load_gen_rate=1.0),
4253
Profile(load_gen_mode=LoadGenerationMode.CONSTANT, load_gen_rate=2.0),
43-
None
54+
None,
4455
]
4556
mock_profile_generator.next.side_effect = profiles
46-
47-
with patch('guidellm.executor.executor.ProfileGenerator.create', return_value=mock_profile_generator):
57+
58+
with patch(
59+
"guidellm.executor.executor.ProfileGenerator.create",
60+
return_value=mock_profile_generator,
61+
):
4862
executor = Executor(
4963
request_generator=mock_request_generator,
5064
backend=mock_backend,
5165
profile_mode=ProfileGenerationMode.FIXED_RATE,
52-
profile_args={"load_gen_mode": LoadGenerationMode.CONSTANT, "rates": [1.0, 2.0]},
66+
profile_args={
67+
"load_gen_mode": LoadGenerationMode.CONSTANT,
68+
"rates": [1.0, 2.0],
69+
},
5370
max_requests=10,
54-
max_duration=100
71+
max_duration=100,
5572
)
5673

5774
mock_benchmark = MagicMock()
5875
mock_scheduler.return_value.run.return_value = mock_benchmark
5976

6077
report = executor.run()
6178

62-
6379
assert mock_scheduler.call_count == 2
6480
assert len(report.benchmarks) == 2
6581
assert report.benchmarks[0] == mock_benchmark
6682
assert report.benchmarks[1] == mock_benchmark
6783
calls = mock_scheduler.call_args_list
68-
assert calls[0][1]['load_gen_mode'] == LoadGenerationMode.CONSTANT
69-
assert calls[0][1]['load_gen_rate'] == 1.0
70-
assert calls[1][1]['load_gen_mode'] == LoadGenerationMode.CONSTANT
71-
assert calls[1][1]['load_gen_rate'] == 2.0
84+
assert calls[0][1]["load_gen_mode"] == LoadGenerationMode.CONSTANT
85+
assert calls[0][1]["load_gen_rate"] == 1.0
86+
assert calls[1][1]["load_gen_mode"] == LoadGenerationMode.CONSTANT
87+
assert calls[1][1]["load_gen_rate"] == 2.0

0 commit comments

Comments
 (0)