어젯밤에 "AI 임베딩 사용"을 활성화했고, 백필이 백그라운드에서 진행되고 있었습니다. 오늘 "AI 임베딩 의미론적 검색 사용"을 활성화했는데, CPU 사용률이 100%까지 치솟아 계속 유지되고 있으며 사이드킥(Sidekiq) 대기열에 막대한 양의 작업이 쌓여 있습니다. 서버에서 검색 기능이 완전히 작동하지 않게 되었습니다.
의미론적 검색을 비활성화하자 몇 분 만에 CPU 사용률이 정상으로 돌아왔고, 모든 대기열도 비었습니다.
Jobs::GenerateEmbeddings가 호출당 몇 초 정도 걸리는 것은 정상입니다. 임베딩 서비스에 API 호출을 해서 데이터를 가져오기 때문이죠. 그 그래프는 정상적인 것이며, 단순히 작업에 시간이 좀 걸린다는 것을 보여줄 뿐입니다. 클라우드의 다른 GPU가 실제로 작업을 수행하고 있는 것이니까요.
CPU 사용량이 높은 것은 매우 예상치 못한 일입니다. 아마도 PostgreSQL 설정이 극도로 리소스에 부담을 받고 있었을 수 있으며, 1000개 정도의 숫자를 연속으로 삽입하는 것만으로도 성능에 영향을 줄 수 있습니다.
진단을 도우려면 훨씬 더 많은 데이터가 필요합니다. 서버 사양은 무엇이며, 실제 CPU 그래프는 어떤 모습을 보이고, 어떤 프로세스가 CPU를 소비하고 있는지, 어떤 임베딩 서비스를 사용 중인지 등을 알려주세요.
DO 16GB 메모리 / 4 Intel vCPU 서버를 사용 중입니다. Open AI의 text-embedding-3-small 모델을 사용하고 있습니다.
CPU 사용률은 보통 50% 이하를 유지하고 있습니다. 시맨틱 검색을 활성화했을 때의 상태는 다음과 같습니다. 현재 약 250만 개의 게시글과 25만 개의 주제가 있습니다. DM(개인 메시지)에 임베딩을 활성화하지 않았는데, 활성화하면 게시글이 약 100만 개, 주제가 약 10만 개 더 추가됩니다.