첫 번째로 LLM의 정말 그럴 듯한 할루시네이션이다. 프롬프트 엔지니어링에도 한계가 있고 이것을 어떻게 인지할 수 있을지도 큰 문제이다.
정확한 정의 없이 도입하는 것이다. 사실 웬만한 작업은 그럴듯한 결과를 내놓는다. 잘 사용한다면 그 이상의 인사이트를 주기도 한다. 하지만 뚜렷한 목표가 없이 일단 도입하자니 역할도 모호하고 업데이트 방향도 잡을 수 없을 것 같았다. 결국 좋은 평가도 불가능해지고 좋은 피드백을 받지 못하면 실질적인 가치를 잃어버릴 것이라고 생각했다. LLM이 여러 작업을 꽤 잘해주지만 그만큼 우리가 작업에 대한 것을 정말 정말 정말 잘 Define해주는 것도 중요해졌다. (적어도 아직까지는 난 그렇다고 생각한다.)
비용, 성능: 예측 가능한지, 캐싱이 되는지, 어디까지 가능한지, 어떤 작업에 유리한지, 유지보수는 가능한지도 중요하다.
프로프팅과 컨텍스트: 컨텍스트를 어떻게 유지할 것이고 양질의 문서는 어떻게 토크나이징하고 임베딩해서 RAG를 구현할 것인지 등도 아주 중요한 포인트 중 하나이다.
말고도 그냥 붙이면 될 것 같지만 생각보다 고민해야 할 부분이 많다. 그럴듯한 결과물은 하루 이틀이면 만들어내는데 실제 서비스가 가능한 단계까지 끌어올리고 검증&테스트해서 발전할 수 있는 구조를 만들기까지가 참 어려운 부분인 것 같다. 그런 부분에서 잠시 좀 멈추고 LLM에 관해서 놓친 것은 없는지 점검하기 좋은 책이다.
계속 새로운 모델이 등장하고 여러 툴들이 빠르게 출시되어서 여기에 나오는 내용이나 모델을 그대로 쓰기에는 힘들 수 있다. 변화가 너무 빠르기 때문에 상당 부분이 그렇다. 하지만 어떤 모델을 쓰더라도 변함 없는 고민하게 되는 프롬프트 엔지니어링, RAG, 파인튜닝, 비용 최적화 방법들, 지식 증류, 모델 선택 시에 보는 기준들을 보며 많은 것들을 배울 수 있었다. 관련 작업을 검토할 때 더 나은 선택을 할 수 있을 것 같다.
업무를 떠올리며 나는 최신 정보랑 비교하며 읽어보며 다른 내용도 추가로 찾아볼 수 있는 계기가 되어서 좋았다. 요즘은 키워드만 가지고 있다면 perplexity와 같은 LLM을 쓰며 편하게 DeepDive할 수 있는 세상이 왔다. 중요한 것은 의식적으로 정보에 휩쓸리지 않고 원하는 것을 변별하고 소화해내는 능력인 것 같다.