“LLM에도 TDD가 통할까?” – 테스트 주도 개발 가설 검증기(2)
·
AI
https://divisionbyzero.tistory.com/6 “LLM에도 TDD가 통할까?” – 테스트 주도 개발 가설 검증기(1)💭 프로젝트 시작 배경AWS Bedrock을 사용한 프로젝트에서 API 오류 상황에 대한 예외 처리 로직이 누락되어 서비스가 중단된 *사례가 있었습니다. 💡 실제 경험했던 사례 사내에서 진행된 'GEN AIdivisionbyzero.tistory.com 1편에서는 '왜 LLM API에도 TDD 개념이 필요한가?'를 문제 중심으로 다뤘습니다.이번 글에서는 기존 테스트 패턴(MSW, MockMvc)이 제공하는 공통 원리를 LLM API에 어떻게 적용할 수 있는지, 그리고 실제 어떤 구조로 설계할 수 있는지 정리해보고자 합니다. 🤔 기존 테스트의 공통 패턴은 무엇일까?먼..
“LLM에도 TDD가 통할까?” – 테스트 주도 개발 가설 검증기(1)
·
AI
💭 프로젝트 시작 배경AWS Bedrock을 사용한 프로젝트에서 API 오류 상황에 대한 예외 처리 로직이 누락되어 서비스가 중단된 *사례가 있었습니다. 💡 실제 경험했던 사례 사내에서 진행된 'GEN AI Camp' 교육 프로그램을 참여했던 팀원에게 공유받았던 내용입니다. 해당 프로그램은 내부 팀원들이 생성형 AI를 실습·학습하는 과정이었습니다. 실습 중 AWS 한 계정으로 여러 인원이 동시에 Bedrock API를 호출하다가 ThrottlingException이 발생해 약 10분간 요청이 지연되는 상황이었습니다. ">💡 실제 경험했던 사례사내에서 진행된 'GEN AI Camp' 교육 프로그램을 참여했던 팀원에게 공유받았던 내용입니다.해당 프로그램은 내부 팀원들이 생성형 A..
동시성(Concurrency)과 병렬성(Parallelism)
·
CS
최근 락을 적용하여 동시성 문제를 해결하면서 동시성과 병렬성의 개념을 혼동하고 있어 각 개념을 정리해 보았습니다. 동시성(Concurrency) 동시성은 하나의 코어(싱글 코어)에서 여러 작업을 번갈아 가면서 처리하는 방식입니다.CPU는 한 번에 하나의 작업만 처리할 수 있기 때문에 여러 작업을 번갈아 가면서 처리하는데, 이를 context switching이라고 합니다.context switching이 빠르게 이루어져 물리적으로 동시에 실행되는 것이 아니어도 작업이 동시에 실행되는 것처럼 보이게 하는 것입니다. 따라서 여러 작업이 동시에 공유된 자원에 접근하는 경우 동기화 문제가 발생할 수 있습니다. 병렬성(Parallelism) 병렬성은 CPU가 여러 개(멀티 코어) 있어서 CPU에서 각 작업을 동시..