def cos_similarity(vec1, vec2): vec1 = vec1.detach().cpu().numpy() vec2 = vec2.detach().cpu().numpy() return np.dot(vec1, vec2) / np.linalg.norm(vec1) / np.linalg.norm(vec2) similar = [] for name, vec2 in key_output.items(): val = cos_similarity(base_output, vec2) similar.append([-val, name]) import heapq heapq.heapify(similar) import urllib from keybert import KeyBERT text = """윤석열 검찰총장이 차기 대권주자 선호도에서 1위를 차지했다는 소식에 관련주가 급등세다. 11일 오전 9시 8분 현재 덕성은 전 거래일 대비 810원(10.95%) 오른 8,210원에 거래되고 있다. 덕성은 이봉근 대표이사와 김원일 사외이사가 윤 총장과 서울대학교 법대 동문으로 알려져 `윤석열 관련주`로 분류돼 왔다. 같은 시각 진도(6.79%)와 서연(9.40%)도 비슷한 흐름이다. 진도는 안호봉 사외이사가 윤 총장의 사법연수원 동기란 사실로 관련주가 됐고 서연은 유재만 사외이사가 윤 총장과 서울대 법대 동문이란 이유로 관련주로 꼽혔다.""" model = KeyBERT('distilbert-base-nli-mean-tokens') keywords = model.extract_keywords(text)