요새 허깅페이스 모델을 자주 사용하는데, 모델의 클래스 코드를 직접 확인해야 할 때가 있다. 모델 코드가 GitHub에 공개되어 있다면 좋겠지만, 그렇지 않은 경우도 종종 있다.

특히 transformersAutoModel을 이용해 NVIDIA의 임베딩 모델을 생성한다고 가정해 보자. 이 경우, 필요한 코드를 허깅페이스 모델 허브에서 자동으로 다운로드해서 사용하게 된다. 이를 위해 trust_remote_code=True 옵션을 사용한다.

from transformers import AutoModel

model = AutoModel.from_pretrained('nvidia/NV-Embed-v2', trust_remote_code=True)

이런 상황에서 모델 소스 코드의 원본 파일 경로를 간단히 확인할 수 있다. 파이썬의 inspect 모듈을 사용하면 다음과 같이 경로를 알아내서, 이를 VS Code와 같은 편집기에서 열어볼 수 있다.

import inspect 

print(inspect.getfile(model.__class__))

위 코드의 결과로 출력된 파일 경로를 편집기에 입력하면 해당 클래스의 소스 코드를 확인할 수 있다.

이 방법은 trust_remote_code=True 옵션으로 다운로드한 코드뿐만 아니라, 로컬에 설치된 Python 패키지의 소스 코드 경로를 확인할 때도 유용하다. 🚀

Posted by 공돌이pooh
,