본문 바로가기

수자원공사 인턴

WhisperX 사용, Whisper python 3.10 버전 사용

 

 

Whisper를 사용해서 전사 기능을 성공적으로 진행해보았다.

AI 허브에서 통화 샘플 데이터를 80개 정도 받아서 진행해보았다.

약 6~10분 정도 분량의 통화 데이터 80개를 모두 전사하여 tsv 파일로 만들어 저장하는데엔 1시간 반 정도 소요되었다.

 

처음에 cpu를 사용하고 있어서 어쩐지 속도가 너무 느렸다..

cpu만 지원하는 torch 버전 때문이었다.!!

그래서 uninstall 후 다시 gpu지원 torch를 설치했다.

 

1. 기존 깔려있던 cpu전용 torch uninstall 하기

pip uninstall torch

 

2. gpu 지원 torch install 

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

 

 

이렇게 하면 성공적으로 gpu가 사용된다. 

속도가 훨씬 빨라졌다

 

나는 파이썬 스크립트를 작성해서 한 파일에 들어있는 모든

{".m4a", ".mp3", ".wav", ".mp4"}

 

파일들을 tsv파일로 변환시켜 다른 디렉토리에 저장시키기로 했다.

 

파일을 tsv파일로만 변환하는 이유는 그냥 그 파일이 필요해서이다

 

txt, srt, vtt 아무 파일로나 다 변환이 가능하다.

start	end	text
0	11480	0000 0000 입니다 아 주문 좀 하려는데요
11480	21160	네 고객님 전화 주셔서 감사합니다 저희 0000 처음 이용하시면 고객 정보
21760	37560	네 고객님의 회원 서비스 제공을 위해 성함, 생년월일, 성별, 주소, 연락처 등록하고 있습니다
37560	42360	이해, 동의하십니까? 네
42360	47400	감사합니다 고객님 본인 성함 말씀해 주시겠습니까?
47440	56020	0000 0000계 고객님 생년월일 말씀해 주시겠습니까?
56020	62120	공공 연 공공월 공공 일
62480	66600	휴대전화번호 말씀해주시겠습니까?
66600	75000	0000 0000 0000
75000	79560	유선전화 등록 가능한데 등록해 드릴까요?
79560	88360	네 0000 0000 0000요
88360	95960	0000 0000 0000 맞습니까?
96040	99320	네 맞습니다
99320	102520	주소 말씀해 주시겠습니까?
102520	112200	대구시 달서구 0000 0000 0000 0000
112200	116120	0000 0000 맞나요?

 

이거는 tsv 파일로 변환한 음성 파일 중 일부이다.

출력은 이런식으로 나온다.

참고로 개인정보가 0 처리 된 것은 기존에 ai hub에서 제공하던 데이터에서 개인 정보를 모두 '영' 이렇게 발음해서 그냥 그대로 전사된거다

 

다음 목표는 화자 구분하기이다.

 

화자를 구분할 수 있으면 좋겠다 싶어서 조금 찾아보다가

whisper의 상위 버전인 whisperx라는 것이 있다는 사실을 알게되었다

whisperx는 정확도 향상은 물론 화자 구분까지 지원한다고 한다.

 

whisperx는 가상 환경에서 실행해보았다.

가상 환경에서 하다 보니 라이브러리를 다 다시 깔아야해서 귀찮았지만 ㅠㅠ 일단 했따

화자 구분 기능을 사용하려면 hugging face에 가입해서 key도 받아야 한다.

그 기능이 허깅 페이스의 라이브러리이기 때문인 것 같았다

 

근데 힘들게 깔았더니 whisperx.. 이거 화자 구분 기능이 완전 꽝이다

딱 2명밖에 없는 대화에서도 화자를 거의 1명으로 구분한다.

음량이 좀 작은 것 때문에 그런가 싶어서 음량을 키워서 다시 실행해보고 있다.. (아직 해결 x)

 

 


 

또 다른 문제가 생겼는데

사실 문제라고 하기엔 조금 그렇고 내가 사용하고 있는 건 python 3.11버전인데

이 기능이 필요한 부서에서는 3.10 버전을 요구한다고 한다.

 

그래서 다시 python 3.10을 깔았다.

3.11 버전은 지우지 않아도 된다.

 

3.10.17 버전을 깔려고 했는데. 바이너리 설치 프로그램이 존재하지 않아서 3.10.11 버전을 설치했다.

대신 나는 이거 또한 가상 환경이 더 편할 것 같아 가상환경으로 실행하였다.

환경 변수 추가해주고 가상 환경을 python 3.10버전으로 실행하니 문제 없이 사용되었다.

파이썬은 버전마다 패키지와 라이브러리를 개별로 관리하기 때문에 3.11 버전에서 사용했던 걸 다시 모두 깔아줘야 했다.

torch. pandas. whisper를 다시 설치해주었다

문제없이 실행되었다! 굿

 

이제 다시 화자 구분을 해보자..............

'수자원공사 인턴' 카테고리의 다른 글

OpenAI whisper 사용해보기  (0) 2025.04.21
MCP hwp 사용해보기  (0) 2025.04.10
MCP (Model Context Protocol)  (0) 2025.04.10