AutoPercenty3/DEPENDENCY_GUIDE.md

2.4 KiB

🔧 의존성 관리 가이드

ONNX Runtime 호환성을 위한 의존성 버전 관리 도구입니다.

📋 고정 버전

패키지 버전 이유
numpy 1.26.4 ONNX Runtime 호환성
scipy 1.11.4 안정 버전
onnxruntime 1.18.1 최신 안정 버전
opencv-python 4.8.1.78 호환성 보장

🚀 사용 방법

1. 자동 체크 (setup.py 빌드 시)

python setup.py build_exe

빌드 전에 자동으로 의존성을 체크하고 필요시 수정합니다.

2. 수동 체크

python check_dependencies.py

또는

check_deps.bat

현재 설치된 버전을 확인하고 필요시 교체합니다.

3. 강제 수정 (관리자 권한)

권한 문제로 설치가 실패하는 경우:

python fix_dependencies.py

또는

fix_deps_admin.bat

관리자 권한으로 강제 재설치를 수행합니다.

⚠️ 주의사항

ONNXRuntime 교체 시 주의

  • 현재 Python 프로세스에서 ONNX Runtime을 사용 중인 경우 교체가 불가능합니다.
  • 이 경우 다음 순서로 진행하세요:
    1. 모든 Python 프로세스 종료
    2. fix_deps_admin.bat 실행
    3. 빌드 재시작

권한 문제 해결

Windows에서 "액세스가 거부되었습니다" 오류 발생 시:

  1. 명령 프롬프트를 관리자 권한으로 실행
  2. fix_dependencies.py 실행
  3. 또는 fix_deps_admin.bat 더블클릭

🔍 문제 해결

일반적인 문제들

Q: scipy 1.14.1이 없다고 나옵니다. A: scipy 1.14.1은 존재하지 않는 버전입니다. 스크립트가 자동으로 1.11.4로 수정합니다.

Q: ONNX Runtime 설치가 실패합니다. A: 현재 프로세스에서 사용 중일 수 있습니다. 모든 Python 프로세스를 종료 후 관리자 권한으로 재시도하세요.

Q: 빌드 시 numpy 오류가 발생합니다. A: numpy 1.26.4로 고정되어 있는지 확인하세요. check_dependencies.py로 확인 가능합니다.

📊 상태 확인

의존성 상태를 확인하려면:

python -c "
import numpy, scipy, onnxruntime, cv2
print(f'numpy: {numpy.__version__}')
print(f'scipy: {scipy.__version__}')
print(f'onnxruntime: {onnxruntime.__version__}')
print(f'opencv: {cv2.__version__}')
"

🎯 ONNX 모듈 전환 완료

  • PaddlePaddle → ONNX Runtime 완전 전환
  • 3.6배 빠른 CPU 성능
  • 호환성 문제 해결
  • 메모리 사용량 최적화