优化API启动脚本,添加命令行参数支持以指定主机和端口,更新日志输出信息以反映新端口设置。

This commit is contained in:
zhxiao 2025-04-25 13:56:12 +08:00
parent 98a31c47b0
commit d5c3e2211f
2 changed files with 18 additions and 7 deletions

View File

@ -1,6 +1,7 @@
import os
import random
import sys
import argparse # 添加argparse导入
from typing import Sequence, Mapping, Any, Union
import torch
from PIL import Image
@ -578,8 +579,15 @@ async def startup_event():
# 主函数
def main():
# 启动FastAPI服务器
uvicorn.run(app, host="0.0.0.0", port=8000)
# 添加命令行参数解析
parser = argparse.ArgumentParser(description='FLUX风格塑形API服务')
parser.add_argument('--port', type=int, default=8000, help='指定服务端口号默认为8000')
parser.add_argument('--host', type=str, default="0.0.0.0", help='指定服务主机地址默认为0.0.0.0')
args = parser.parse_args()
# 启动FastAPI服务器使用命令行参数中指定的端口
logger.info(f"API服务启动在 {args.host}:{args.port}")
uvicorn.run(app, host=args.host, port=args.port)
if __name__ == "__main__":
main()

View File

@ -19,19 +19,22 @@ echo "已激活虚拟环境: $(which python3)"
mkdir -p logs
# 启动第一个实例使用GPU 0端口8000
echo "启动 GPU 0 上的服务实例..."
CUDA_VISIBLE_DEVICES=0 nohup python3 flux_style_shaper_api/flux_style_shaper_api.py > logs/flux_api_gpu0.log 2>&1 &
echo "启动 GPU 0 上的服务实例端口8000..."
CUDA_VISIBLE_DEVICES=0 nohup python3 flux_style_shaper_api/flux_style_shaper_api.py --port 8001 > logs/flux_api_gpu0.log 2>&1 &
INSTANCE1_PID=$!
echo "GPU 0服务已启动进程ID: $INSTANCE1_PID"
# 启动第二个实例使用GPU 1端口8001
echo "启动 GPU 1 上的服务实例..."
CUDA_VISIBLE_DEVICES=1 nohup python3 flux_style_shaper_api/flux_style_shaper_api.py > logs/flux_api_gpu1.log 2>&1 &
echo "启动 GPU 1 上的服务实例端口8001..."
CUDA_VISIBLE_DEVICES=1 nohup python3 flux_style_shaper_api/flux_style_shaper_api.py --port 8002 > logs/flux_api_gpu1.log 2>&1 &
INSTANCE2_PID=$!
echo "GPU 1服务已启动进程ID: $INSTANCE2_PID"
echo "所有服务实例已启动!"
echo "可以通过以下方式查看日志:"
echo "可以通过以下地址访问服务:"
echo " - 实例1: http://$(hostname -I | awk '{print $1}'):8001"
echo " - 实例2: http://$(hostname -I | awk '{print $1}'):8002"
echo "查看日志:"
echo " tail -f logs/flux_api_gpu0.log"
echo " tail -f logs/flux_api_gpu1.log"