피드로 돌아가기
Dev.toAI/ML
원문 읽기
0.4ms 오버헤드로 SDK 내부 전송 데이터의 정합성을 검증하는 Wire-level 분석 도구 설계
The prompt your SDK sends is not the prompt you wrote
AI 요약
Context
SDK 내부의 Data Normalization 로직으로 인해 사용자 코드의 입력값과 실제 API 서버로 전송되는 JSON Body 간의 불일치 발생. 변수 기반 로깅으로는 SDK 내부에서 변조되는 요청 본문 및 누수되는 Metadata를 식별하는 데 한계 직면.
Technical Solution
httpx.HTTPTransport를 상속받은 Custom Transport 계층을 설계하여 SDK 하단에서 Outbound Request를 직접 가로채는 구조 채택- SDK 종류에 관계없이
httpx기반의 모든 클라이언트에 적용 가능한 추상화된 Interceptor 패턴 구현 - Request URL, Headers, Body-bytes, Response status 및 Duration을 캡처하는 Monotonic sequence 기반 기록 메커니즘 구축
- 캡처된 Request를 파일로 저장 후 동일한 Byte 단위로 재전송하는 Replay 기능을 통한 결정적 테스트 환경 조성
- 두 Record 간의 차이를 분석하는 Diff 로직을 통해 프롬프트 템플릿의 미세한 변경이나 불필요한 개행 문자 등을 정밀 탐지
실천 포인트
- SDK가 제공하는 로깅 기능 외에 실제 네트워크 전송 단계의 JSON Payload를 직접 덤프하여 검증할 것 - 프롬프트 기반 시스템의 회귀 테스트 시, 텍스트 비교가 아닌 전송 바이트 단위의 Diff-test 도입 검토 - Client Constructor에 설정된 Default 값이 의도치 않게 전송되는지 Metadata 누수 여부를 점검할 것