프롬프트 테스트 도구 알아보기
서비스 또는 앱을 프로덕션 레벨로 서빙하기 위해서는 테스트는 필수입니다. LLM을 활용하여 서비스를 제공할 때도 마찬가지일 겁니다. 이 글에서는 프롬프트를 테스트의 필요성을 짚어 보고 활용가능한 사용해 볼 수 있는 몇가지 방법을 소개합니다.
프롬프트 테스트의 필요성
모델의 성능 비교 및 검증
앱개발을 위한 모델선택에는 수많은 선택지가 있습니다. 예를 들어, 서비스 개발을 위해 ‘GPT-4o’를 사용할지, ‘GPT-4o-mini’를 사용할지, 또는 OpenAI, Anthropic 과 같은 기업에서 제공하는 모델을 사용할지 결정하는 것은 서비스의 성능과 효율성에 직접적인 영향을 미칩니다. 또한 자체 서버를 준비하여 직접 모델을 호스팅할지, 클라우드 기반의 API를 사용할지 등 기본적인 모델 선택만으로도 다양한 고려사항이 존재합니다. 뿐만 아니라, 모델을 활용하여 구성할 수 있는 RAG나 Agent와 같은 선택지까지 고려해야할 겁니다.
기본적인 모델에 대한 비교부터 복잡한 기능이 적용된 모델까지 철저한 테스트 과정이 필수적입니다. 프롬프트 테스트는 이러한 모델의 기능과 성능을 다양한 시나리오에서 검증하고, 실제 애플리케이션에서 발생할 수 있는 다양한 상황에 대한 대응력을 평가하는 데 도움이 됩니다.비용 효율성 검증
비용 효율성 검증은 인공지능 모델 선택에서 중요한 요소입니다. 어떤 프롬프트가, 어떤 모델이 더 적은 비용으로 더 좋은 답변을 할 수 있는지 검증하는 것은 필수적인 과정입니다. 실제로 같은 질문을 던지고, 비슷한 답변을 받더라도 속도와 비용 면에서 큰 차이가 발생할 수 있습니다. 예를 들어, 두 모델이 동일한 질문에 대해 유사한 답변을 제공하더라도, 한 모델은 응답 시간이 두 배 빠를 수 있고, 다른 모델은 비용이 10배 이상 저렴할 수 있습니다. 이러한 차이는 모델의 성능 뿐만 아니라 서비스의 비용 관리에도 큰 영향을 미치게 됩니다. 프롬프트 테스트를 통해 비용과 성능을 모두 만족시키는 효율적인 솔루션을 찾아내는 것이 서비스의 성공과 지속 가능성을 높이는 데 필수적입니다.
특정 도메인에 대한 성능 평가
특정 모델이 모든 분야에서 동일한 성능을 발휘하지는 않습니다. 예를 들어, 특정 기술 문서의 요약 작업에 강한 모델이 있는 반면, 창의적인 텍스트 생성이나 감성 대화에서 더 나은 성능을 발휘하는 모델도 존재합니다. 특정 도메인에 맞는 작업을 처리하기 위해서는, 그 도메인에 특화된 모델을 선택하거나 일반 모델을 도메인에 맞게 Fine Tuning, RAG등을 적용하여 최적화해야 합니다. 프롬프트 테스트를 통해 모델이 해당 도메인에서 요구되는 성능을 발휘하는지 평가할 수 있습니다. 또한, 도메인에 맞게 최적화가 잘 되었는지, 그리고 어떤 최적화 방식이 더 적합한지도 검증할 수 있습니다.
프롬프트 테스트 도구
promptfoo
- 공식문서
- github
promptfoo는 다양한 프롬프트 테스트 방법을 제공하며, 공식문서에서 다음과 같이 소개합니다.
• 개발자 친화적: 빠른 속도와 실시간 리로드, 캐싱 기능으로 편리함을 제공합니다.
• 검증된 도구: 1천만 명 이상의 사용자에게 서비스된 LLM 애플리케이션에 사용된 도구로, 다양한 설정에 맞게 유연하게 조정 가능합니다.
• 코드 필요 없음: 간단한 선언형 테스트 케이스로 평가를 정의할 수 있습니다.
• 언어에 구애받지 않음: 파이썬, 자바스크립트 등 여러 언어 지원.
• 공유 및 협업: 내장된 공유 기능과 웹 뷰어를 통해 팀과 협업할 수 있습니다.
• 오픈 소스: 100% 오픈 소스 프로젝트로, 제한 없이 누구나 사용할 수 있습니다.
• 개인정보 보호: 모든 평가가 로컬에서 실행되며, LLM과 직접 통신합니다.
예제코드도 제공 해주고 있어서 간단하게 시도해 볼 수 있습니다. 주로 CLI에 익숙한 개발자를 위한 툴입니다.
OpenAI playground prompt compare
- 링크
OpenAI playground는 예전부터 제공했던 기능이지만 최근에 같은 프롬프트를 모델 간에 비교할 수 있는 기능이 추가 되었습니다. OpenAI 에서 제공해주는 서비스를 주로 이용하는 경우 도움이 될 것 같습니다. 워낙 개선 속도가 빠르다 보니 같은 ‘gpt-4o’ 라고 해도 버전이 조금씩 다릅니다. 새로운 모델이 나왔을 때 바로바로 테스트하기에 간편할 것 같습니다. OpenAi 에서 제공해주는 웹사이트에서 이용할 수 있어서 누구나 쉽게 이용해 볼 수 있습니다.
LMSYS Chatbot Arena
- 링크
오픈소스 프로젝트로 OpenAI에 국한되지 않은 다양한 api를 비교 테스트 해볼 수 있습니다. LMSYS와 UC 버클리 SkyLab이 공동으로 개발했으며, FastChat이라는 오픈소스 도구를 GitHub에 공개해 누구나 플랫폼의 프론트엔드와 백엔드를 클론하거나 별도의 인스턴스를 실행할 수 있습니다. 비개발자라도 다양한 모델을 손쉽게 비교할 수 있다는 점에서 큰 장점이 있는 서비스라고 생각합니다.
정리
OpenAI 등에서 제공하는 API 키를 활용하면 서비스 구현 자체는 비교적 간단할 수 있습니다. 그러나 지속 가능한 서비스를 구축하기 위해서는 프롬프트 테스트가 필수적입니다. 개발자를 위한 전문 도구뿐만 아니라 비개발자도 쉽게 활용할 수 있는 테스트 도구를 알아보았습니다. 각자의 상황에 맞게 적절히 활용하시길 바랍니다. 감사합니다.