LangChain | [end=""]와 줄바꿈 | 입출력 처리

박성문·2024년 12월 31일

end=""란

예시로 보면 :

end와 줄바꿈

AI의 stream 답변을 받을 때에 청크별로 줄바꿈을 하는 모습 :

줄바꿈 기준

AI가 chunk(조각) 단위로 나눈 단어를 기준으로 줄바꿈이 된다.

chunk가 나뉘는 방식

사람이 말할 때 호흡을 나누는 것처럼 자연스러운 언어 단위로 chunk가 나뉘는 것이다.

특수 문자를 이용한 줄바꿈

1. \n (New Line) :

2. \r (Carriage Return)

\r은 커서를 현재 줄의 맨 앞으로 이동시킨다.
이후 출력되는 내용은 기존 내용을 덮어쓴다.


실제 동작을 단계별로 보게 되면 :


\r을 쓰는 이유는 이러한 진행률 표시를 위해 덮어쓸 때 사용된다.


\r은 주로 진행 상태 표시, 로딩 애니메이션, 실시간 업데이트가 필요한 콘솔 출력에 사용된다.

3. \r\n (Windows style)

\r\n의 경우 특별한 기능은 없다.
다만 운영체제마다 문법이 달라서
혹시모를 오류를 방지하기 위해 보험을 드는 것과 같다.

하지만 최근 Python에서는 대부분 \n만 사용해도 무방하다. Python이 알아서 운영체제에 맞게 처리해주기 때문이다.

4. \t (테이블 형식 데이터)

\t는 탭(Tab)간격으로 공백을 넣어주는 특수문자이다.
주로 데이터를 표 형식으로 정렬할 때 사용된다.


\t의 특징 :

profile
성문이

0개의 댓글