pytorch 폐쇄망

안녕하세요 pytorch로 yolov5 프로그램 개발 중입니다.
현재 문제점은 이 프로그램을 내부 네트워크 망으로 돌려야 하는데 yolov5 모델 로드 시 json파일을 url로 요청하는데 이 부분에서 오류가 발생합니다. yolov5를 폐쇄망으로 돌릴 수 있을까요?
(인터넷 연결을 할 수 없는 곳입니다.)

# Load model
model = attempt_load(weights, map_location=device)  # load FP32 model
stride = int(model.stride.max())  # model stride
imgsz = check_img_size(imgsz, s=stride)  # check img_size
names = model.module.names if hasattr(model, 'module') else model.names  # get class names
if half:
    model.half()  # to FP16

attempt_load 부분에서 에러가 발생합니다

Traceback (most recent call last):
File “C:/Users/HwangMW/PycharmProjects/yolov5/start.py”, line 127, in
detect()
File “C:/Users/HwangMW/PycharmProjects/yolov5/start.py”, line 32, in detect
model = attempt_load(weights, map_location=device) # load FP32 model
File “C:\Users\HwangMW\PycharmProjects\yolov5\models\experimental.py”, line 117, in attempt_load
attempt_download(w)
File “C:\Users\HwangMW\PycharmProjects\yolov5\utils\google_utils.py”, line 25, in attempt_download
response = requests.get(‘https://api.github.com/repos/ultralytics/yolov5/releases/latest’).json() # github api
File “C:\Users\HwangMW\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\api.py”, line 76, in get
return request(‘get’, url, params=params, **kwargs)
File “C:\Users\HwangMW\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\api.py”, line 61, in request
return session.request(method=method, url=url, **kwargs)
File “C:\Users\HwangMW\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\sessions.py”, line 542, in request
resp = self.send(prep, **send_kwargs)
File “C:\Users\HwangMW\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\sessions.py”, line 655, in send
r = adapter.send(request, **kwargs)
File “C:\Users\HwangMW\AppData\Local\Programs\Python\Python36\lib\site-packages\requests\adapters.py”, line 516, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host=‘api.github.com’, port=443): Max retries exceeded with url: /repos/ultralytics/yolov5/releases/latest (Caused by NewConnectionError(’<urllib3.connection.HTTPSConnection object at 0x000002366B28EBA8>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed’,))
[ WARN:0] global C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-6uw63ony\opencv\modules\videoio\src\cap_msmf.cpp (434) `anonymous-namespace’::SourceReaderCB::~SourceReaderCB terminating async callback

Process finished with exit code 1

에러 부분입니다

안녕하세요,
질문하신 내용이 위 코드를 실행하는 환경이 인터넷에 연결이 되어 있지 않다는 말씀이실까요?

맞다면, 해당 에러 메시지를 따라가며 모델을 불러오는 부분을 살펴보시고 미리 모델 파일을 내려받아 함께 배포하시면 어떨까요?

에러 메시지 상으로는,

attempt_download() 함수는 주어진 경로(Path(str(file).strip().replace("'", '')))에 파일이 없는 경우 다운로드를 시도하는 것처럼 보이는데요, 해당 경로를 따라가서 미리 파일을 받으신 뒤에 함께 폐쇄망 내에 배포하면 어떨까요?

좋아요 2

감사합니다. 모델을 미리 다운로드하고 실행한 상태였음에도 불구하고 해당 경로에 파일 읽지 못하고 attempt_download() 함수를 계속 호출해서 다운로드를 하더라고요.
attempt_load() 함수 안에서 attempt_download() 함수를 주석 처리하여 해결하였습니다.
좋은 답변 감사드립니다.

좋아요 1