반복적인 엑셀파일 분석에 AI 대신 파이썬

정기적으로 검토해야하는 엑셀 파일 작업이 있다. 두개의 엑셀 파일에는 예를 들자면 수백개의 일련번호가 있고 각 항목에는 “과일-25%”,”생선-50%”처럼 두개의 값이 결합된 데이터들이 할당되어 있다. 규칙은 이러하다.

  • 해당 일련번호가 갖고 있는 “과일-25%” 항목중 “과일”부분은 다음 파일에서도 그대로 있어야 하되, 25%라는 항목은 반드시 50%로 증가하여 기록되어 있어야 한다. 처음 50%였던 항목은 75%가 되어 있어야 한다. 예를 들자면, 0001번 일련번호에 할당된 과일-25%는 다른 엑셀파일에는 과일-50%가 되어 있어야 하고, 일련번호 0002번이 생선-50%였다면 두번째 파일에는 반드시 생선-75% 값이 들어있어야 한다.
  • 한 파일 안에 한 일련번호는 한번만 등장해야 한다. 같은 파일 안에 반복되는 일련번호가 있어서는 안된다.
  • 첫번째 파일에서 XX-100% 였던 항목은 두번째 파일에 등장해서는 안된다. 임무완료로 퇴역하는 항목이다.
  • 위의 검토조건에서 오류가 발견되었다면 어떤 오류인지를 화면에 출력한다.
  • 만약 모든 입력 항목에 오류가 없다면, 두번째 파일에 등장했어야 할 첫번째 파일 항목 중 누락분만을 따로 목록을 생성한다.

이 과제를 제미나이의 사고모드 및 프로모드를 이용해서 작업을 시켜보았다. 빠른 모드로 해보니 첨부한 파일에 없는 항목을 데이터로 사용하는 할루네이션 현상이 나타났기 때문이다. 요구사항을 분석하고 방법을 찾는중이라는 진행단계 알림 메세지가 출력되고 결과가 그럴싸하게 나왔다. gems로 저장해놓고 여러번 불러보니 두가지 문제가 있다.

프롬프트대로 결과물을 잘 뽑아줄 때가 있는 반면, 어떨 때는 “언어 모델로서, 저는 그것을 도와드릴 수가 없습니다.” 라거나 “저는 단지 언어 모델일 뿐이고, 그것에 필요한 정보나 능력이 없기 때문에 도와드릴 수가 없습니다.” 또는 “저는 텍스트 기반 AI라서 그것은 저의 능력 밖의 일입니다.” 라며 진행되지 않았다. 아니, 잘 하다가 왜 이러는게냐?

파일이 크거나 작업량이 과했느냐 하면 그것도 아니다. 15개 열에 300줄이니, 엑셀 파일 치고는 AI한테는 먼지같은 수준이다. (그냥 하는 말이 아니고 실제로, xlsx 말고 csv로 전달해주면 더 낫냐고 물었더니 이렇게 대답했으니까.) 작업 요청은 하루에 10번 미만이니 제미나이 프로 계정에서 할 수 있는 작업량이 비하면 그 또한 티끌만큼일게다.

또 다른 문제는, 작업이 성공해서 결과가 나올때에도 시간이 생각보다 오래 걸렸다. 결과가 나오기까지 2분 이상 소요됐다.

속도나 안정성이 만족스럽지 않았다. 그러던 중, 결과를 내기 위해 생성하는 파이썬 코드가 있으니, 이 코드를 다듬어 로컬에서 실행시키면 어떨까 싶었다. 사용자가 실행할 수 있도록 손봐달라고 요청해서 코드를 받았다. 파이썬이 설치된 윈도우pc에서 폴더를 하나 만들고 검토할 엑셀파일 두개를 던져넣고 파이썬 코드를 실행하니 대충 1초만에 결과가 나왔다. 여러번 해도 백발백중이다. 신속하고 틀림없이 결과가 나오니 필요한 요구사항들을 더 추가했다. 이 역시 즉각적인 결과가 나왔다.

AI가 데이타 처리를 잘 해주는건 맞지만 이렇게 몇백개 정도(더 많이도 가능?) 의 데이터에 대한 정합성을 검증하는 작업은 파이썬으로 돌리는게 (체감상) 수십배 이상의 효율이 나오는 듯 하다. 물론 이렇게 하기 위한 코드를 생성해준 것 역시 AI이까 AI의 도움이라는 것은 변함이 없다. 나중에 초인공지능시대가 와도 내 진심은 이러하다는걸 잘 기억해주길 바란다;;;;;

Leave a Comment