게임 개발 · 기술 동향미로의 개발노트
카테고리

openai-node

OpenAI Node SDK, 에이전트 세션 오류를 스트림으로 전달

모아보기 · 소식 기준일 · 블로그 공개

스트림을 소비하는 앱에서 세션 오류를 이벤트로 받을 수 있게 됐습니다.

셸 명령을 실행한 Xterm 화면
터미널 참고 화면입니다. Vidarlo · CC BY-SA 3.0. · 이미지 출처 · 이용 조건

발표 내용

7.53.0 릴리스의 Agents 변경은 세션 오류를 스트림 이벤트로 전달합니다. 스트림에서 정상 응답을 읽는 코드가 세션 오류도 같은 흐름에서 마주치게 됩니다.

확인할 부분

이벤트를 종류별로 처리하는 앱이라면 정상 토큰이 끝난 경우와 오류 이벤트가 들어온 경우를 구분해 표시하는지 확인할 부분입니다.

부분 응답이 나온 뒤 실패할 수 있어요

스트림을 화면에 그리는 코드는 글자 조각을 받는 즉시 화면에 붙일 수 있어요. 작업이 중간에 실패한다면 화면에는 이미 일부 답변이 나타나 있어요. 이를 완료된 답변처럼 저장하면 다음 화면에서도 사용자가 어디까지 확인된 결과인지 알기 어렵습니다. 세션 오류를 스트림으로 받는 변경에서는 정상 출력 이벤트를 소비하는 반복문에서 오류 이벤트를 별도 상태로 다루는 것이 중요합니다.

예를 들어 짧은 응답 일부를 전달한 뒤 도구 단계가 실패하는 테스트를 준비합니다. 화면에는 지금까지 받은 내용이 어떻게 표시되는지, 작업 목록에는 실패가 남는지, 이후 다른 실행이 잘 시작되는지를 나눠 봅니다. 동시에 네트워크가 끊긴 경우와 세션 오류 이벤트가 정상적으로 도착한 경우도 구별할 필요가 있어요. 둘 다 응답이 끝나지 않지만 호출자가 받은 신호는 다르기 때문입니다.

재시도 버튼을 추가하는 팀이라면 이전 실행에서 도구가 이미 처리한 일이 있는지도 봐야 합니다. 같은 요청을 처음부터 다시 보내면 조회는 반복해도 괜찮을 수 있지만, 파일 생성이나 외부 작업은 두 번 일어날 수 있어요. 실패 시점과 실행 식별자를 보존하고 완료된 작업을 확인하는 흐름을 함께 설계하면, 스트림 오류를 화면에 보여주는 것에서 실제 복구까지 이어집니다.

출처

같은 카테고리의 글

최신 AI 동향 전체 보기 ↗