Skip to content

Commit 9f0c338

Browse files
committed
getting closer i think
1 parent 66bc6a5 commit 9f0c338

File tree

5 files changed

+56
-17
lines changed

5 files changed

+56
-17
lines changed

Diff for: launch.py

+20
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
prepare_environment = launch_utils.prepare_environment
2323
configure_for_tests = launch_utils.configure_for_tests
2424
start = launch_utils.start
25+
ray = launch_utils.ray
2526

2627

2728
def main():
@@ -44,5 +45,24 @@ def main():
4445
start()
4546

4647

48+
def ray_launch():
49+
if args.dump_sysinfo:
50+
filename = launch_utils.dump_sysinfo()
51+
52+
print(f"Sysinfo saved as {filename}. Exiting...")
53+
54+
exit(0)
55+
56+
launch_utils.startup_timer.record("initial startup")
57+
58+
with launch_utils.startup_timer.subcategory("prepare environment"):
59+
if not args.skip_prepare_environment:
60+
prepare_environment()
61+
62+
if args.test_server:
63+
configure_for_tests()
64+
65+
ray()
66+
4767
if __name__ == "__main__":
4868
main()

Diff for: modules/api/ray.py

+28-15
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,6 @@
99

1010

1111

12-
initialize.imports()
13-
14-
initialize.check_versions()
15-
1612
ray.init()
1713
#ray.init("ray://localhost:10001")
1814

@@ -24,23 +20,40 @@
2420
"per worker. Ignore this if your cluster auto-scales."
2521
)
2622

27-
initialize.initialize()
2823
app = FastAPI()
29-
initialize_util.setup_middleware(app)
30-
31-
32-
api = Api(app)
33-
34-
script_callbacks.before_ui_callback()
35-
script_callbacks.app_started_callback(None, app)
36-
37-
3824

3925
@serve.deployment(
4026
ray_actor_options={"num_gpus": 1},
4127
num_replicas=NUM_REPLICAS,
4228
)
43-
@serve.ingress(api)
29+
@serve.ingress(app)
4430
class APIIngress(Api):
4531
def __init__(self, *args, **kwargs) -> None:
32+
from launch import ray_launch
33+
#from modules import sd_samplers
34+
ray_launch()
35+
#sd_samplers.set_samplers()
36+
initialize.imports()
37+
initialize.check_versions()
38+
39+
initialize.initialize()
40+
app = FastAPI()
41+
initialize_util.setup_middleware(app)
42+
43+
44+
api = Api(app)
45+
46+
script_callbacks.before_ui_callback()
47+
script_callbacks.app_started_callback(None, app)
48+
49+
print(f"Startup time: {startup_timer.summary()}.")
50+
api.launch(
51+
server_name="0.0.0.0" if cmd_opts.listen else "127.0.0.1",
52+
port=cmd_opts.port if cmd_opts.port else 7861,
53+
root_path=f"/{cmd_opts.subpath}" if cmd_opts.subpath else ""
54+
)
55+
4656
super().__init__(*args, **kwargs)
57+
58+
59+

Diff for: modules/launch_utils.py

+6
Original file line numberDiff line numberDiff line change
@@ -438,6 +438,12 @@ def start():
438438
webui.webui()
439439

440440

441+
def ray():
442+
print(f"Launching {'API server' if '--nowebui' or '--ray' in sys.argv else 'Web UI'} with arguments: {' '.join(sys.argv[1:])}")
443+
import webui
444+
webui.ray_only()
445+
446+
441447
def dump_sysinfo():
442448
from modules import sysinfo
443449
import datetime

Diff for: modules/sd_samplers.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,4 +56,4 @@ def visible_sampler_names():
5656
return [x.name for x in samplers if x.name not in samplers_hidden]
5757

5858

59-
set_samplers()
59+
#set_samplers()

Diff for: webui-user.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
# Commandline arguments for webui.py, for example: export COMMANDLINE_ARGS="--medvram --opt-split-attention"
1313
#export COMMANDLINE_ARGS=""
14-
export COMMANDLINE_ARGS="--data-dir sd-data --allow-code --administrator --precision full --no-half --xformers --api --enable-insecure-extension-access --cors-allow-origins * --listen --ray" #--ray
14+
export COMMANDLINE_ARGS="--data-dir sd-data --allow-code --administrator --precision full --no-half --xformers --api --enable-insecure-extension-access --cors-allow-origins * --listen --ray"
1515

1616
# python3 executable
1717
#python_cmd="python3"

0 commit comments

Comments
 (0)