"오랜만에 시험 공부하고 새벽에 즐겁게 수학 문제를 풀고 자려던
내 계획이 무너졌다."
원래 벨로그를 쓸 계획은 없었지만, 멘토링을 하는 도중에 문제와 프로그램에 숙지하지 못하고 헤매는 나를 보고 써야겠다고 마음 먹었다.
덤으로 진행 상황과, 나중에 같은 문제가 생긴다면 더 쉽게 해결할 수 있도록 기록하기로 했다.
(기획서를 더 구체화해 작성해야 하지만 지금은 급한 불부터 끄자는 마음에서 개?발에만 집중하고 있다. 자료 수집은 팀원들을 굴릴 계획이다.)
(팀원 2명이 디자인을 한다고 하였기에, 나는 관여하고 있지 않다. 현재 웹 사이트는 AI가 디자인 한대로 되어 있지만 후에 프론트를 맡은 친구가 수정할 것이다.)
내가 현재 하고 있는 부분이다. 사실 학교에서 JAVA, C , HTML+CSS 기초 정도만 배웠기에 Python을 다룰 줄 모른다. 그렇기에 ChatGPT와 클로드를 활용하여 Python 코드를 작성하였다.
클로드에게서 완성된 프론트와 백엔드 코드를 받았지만, 가상 환경과 API 때문인지 어떠한 오류로 인하여 테스트를 하지 못하는 상태이다.
Visual Studio Code에서 Ctrl + Shift + P를 누른 뒤에 Python: Select Interpreter를 선택하면 Python 실행 환경(인터프리터)을 선택할 수 있다.

원래라면 이곳에 "Python 3.10.0 (.venv)"가 존재해야 하지만 사라져버렸다...
애초에 원래도 easyocr 패키지에 오류가 존재했기에, 아예 기존에 있던 가상 환경 파일을 전부 지우고 새로 구축하기로 했다.
- 가상 환경 생성하기
python -m venv venv- 가상 환경 활성화
#윈도우 (PowerShell 기준) venv\Scripts\Activate.ps1- 가상 환경 비활성화
deactivate- 필요한 패키지 설치
pip install [패키지_이름1] [패키지_이름2] ... [패키지_이름n]- 서버 실행
uvicorn main:app --reload

(이제 알았는데, venv 가상환경에서 쓰는 명령어가 리눅스에서 쓰던 명령어와 닮았다...)
- 현재 가상 환경에 설치된 패키지 보기
pip list

(분명 패키지가 설치는 되었다.)
ㄴ> VsCode에서 인터프리터 설정이 잘못 되었을 수 있다.
ㄴ> venv에 설치가 되지 않았다.
기타 등등... 이유가 있겠지만 이럴 때 가장 확실한 건 껐다 켜는 것!이다.


실행하려고 하자 Python Interpreter를 선택하라고 한다... 하지만 난 짐작했다. 이거 누르면 100% 다시 오류 뜬다는 것을.

역시나는 역시나이다.
이것의 원인은 venv 가상 환경에는 패키지가 설치되었지만, Python Interpreter에는 패키지가 설치되지 않아서 이다.

여기서 이 두 가지 선택지가 있지만 선택해야 하는 것은
"<프로젝트 경로>\venv\Scripts\python.exe"으로 된 인터프리터이다. 방황하지 말고 Enter interpreter path...를 누르면 된다.

파일 탐색기에서 찾아가면 된다.

이제 아무런 문제도 존재하지 않는다... 인 줄 알았다.
실행했더니 이런 오류가 뜬다.

다행히도 간단한 mediapipe 패키지 관련 문제이다.
이는 리소스 파일이 깨졌거나, 경로 문제이다. 그냥 재설치하겠다.
- 패키지 삭제
pip uninstall [패키지_이름1] [패키지_이름2] ... [패키지_이름n]
설치 도중에 이런 오류가 뜬다.

이는 pip가 설치 중인 패키지들의 버전 호환성 문제이다.
현재 내가 설치된 numpy 버전 : 1.26.4
요구되는 numpy 버전 : >=2, <2.3.0
- numpy 버전 설치
pip install numpy==2.2.4

근데 이러면 Mediapipe는 numpy 2 이상을 지원하지 않고, OpenCV는 numpy 2 이상을 요구한다는 미쳐버리겠는 요구 사항을 보여준다.
OpenCV 버전을 포기할 수 없기에 Mediapipe 업그레이드를 시도해 보겠다.
- mediapipe 업그레이드
pip install --upgrade mediapipe

원래라면 오류와 상황을 이해하려 하겠지만 현재는 호환성 충돌과 함께 내 머릿속도 박살나는 것 같으니 그저 ChatGPT가 하라는 대로 명령어를 입력해보겠다...
우선 mediapipe를 중심으로 설정해 보겠다.
pip uninstall numpy opencv-python opencv-python-headless mediapipe -y pip install numpy<2 pip install mediapipe==0.10.21 opencv-python-headless==4.7.0.72
설치한 뒤에 실행하면

언제나처럼 오류가 뜬다. Mediapipe 패키지가 설치는 되었지만, 내부 리소스 파일이 없어서 발생하는 문제이다. 그렇기에 그냥 또다시 재설치를 해보겠다.
- 호환되는 버전의 mediapipe 설치
pip uninstall mediapipe -y pip install mediapipe==0.10.21
... 놀랍게도 또다시 오류가 뜬다. 언젠가는 죽여버릴거라고 생각한 OneDrive가 원인으로 꼽혔다. 그래서 파일 위치를 바꾼 뒤에 다시 시도해 보았다.

이번엔 조금 신선한 오류가 났다. 그냥 패키지 하나가 없다고 한다. 앞에서 본 오류보다 너무 착하다.
패키지 설치하고, 실행했지만 가상 환경에 설치된 패키지들이 OneDrive 기준으로 되어 있어서 계속 오류가 발생하는 바람에 그냥 가상 환경을 다시 재구축 하기로 했다... (OneDrive는 인생에 도움이 안된다)
재구축 한 후에
pip install python-multipart
필요하다는 패키지를 다운로드 하고 실행하니까

이제 더 이상 아무런 오류도 일어나지 않는다. 인간 승리다.
그런데 이렇게 놓고 보니 그냥 OneDrive로 인한 간단한 오류가 아니었던 걸까...라는 생각을...

원래 사이트에서 분석하기를 누르면 "Failed to fetch"라고 하면서 오류가 났었는데, 가상 환경을 고치니 해결되었다~ :D!!!
어쨌든 존재하던 문제 해결! (21:36)
근데 생각보다 일찍 끝나서 즐겁게 새벽 라이프 보낼 수 있을 것 같다:3