챗GPT 프롬프트에 길이가 긴 텍스트를 입력하면 'The message you submitted was too long, please reload the conversation and submit something shorter.' 와 같이 오류 메시지가 뜹니다. 이 오류 메시지는 '전송한 메시지가 너무 깁니다. 대화를 다시 로드하거나 더 짧게 입력하세요.'라는 뜻으로 프롬프트에 입력한 메시지가 너무 길기 때문입니다. ChatGPT 프롬프트에는 입력할 수 있는 글자 수(바이트) 제한이 있고 그 보다 많은 바이트를 입력하려고 하면 이러한 오류 메시지가 표시됩니다.
이 문제를 해결하기 위한 방법은 현재로서는 한 가지로, 텍스트를 잘라서 여러번 입력하는것입니다.
다행히 그렇다고 직접 긴 텍스트의 길이를 수작업으로 나눠서 입력하지는 않아도 됩니다. 이를 조금이나마 편하게 도와주는 온라인 도구가 있기 때문입니다.
구글에 'chatgpt splitter' 라고 입력하면 챗GPT에 입력할 텍스트를 편하게 잘라주는 많은 무료 사이트들을 찾을 수 있습니다. 웹사이트에 텍스트 파일을 업로드하거나 텍스트를 붙여넣기만 하면 챗GPT에 편하게 입력할 수 있도록 텍스트를 잘라 나눠주고 텍스트가 분리되어있다는 것을 챗GPT에 알려줄 수 있도록 앞뒤에 메시지도 자동으로 붙여줍니다.
📝 텍스트 토큰화 메시지를 작은 단위인 토큰으로 나누는 것을 전문 용어로 '토큰화'라고 합니다. ChatGPT 프롬프트에 긴 텍스트를 입력하기 위해 텍스트를 나누는 것도 '토큰화' 입니다. |
제가 사용할 ChatGPT splitter 사이트는 'https://chatgptsplitter.com/' 입니다.
이 사이트는 메시지를 자를 길이를 선택할 수 있는데 챗GPT에 입력할 데이터가 한글일 경우 영어와 텍스트 데이터의 크기가 다르기때문에 이렇게 길이를 설정할 수 있어야합니다.
사이트에 접속하면 텍스트 파일을 업로드하거나 텍스트를 붙여넣을 수 있는 공간이 있습니다. 둘 중 편한 것을 선택해서 텍스트를 입력하고 Chunk size(텍스트를 나눌 길이)는 텍스트가 영어일 경우 8000(기본값), 한글일 경우 1000 정도로 설정하고 'Process'를 클릭합니다.
그러면 하단에 챗GPT에 입력할 수 있는 길이로 분리된 텍스트가 chunk 단위로 표시됩니다. 제가 예시로 입력한 텍스트는 12개의 chunk로 분리되었습니다.
메시지를 잘 보면 각 청크마다 앞 뒤에 자동으로 추가 메시지가 붙은 것을 볼 수 있습니다.
Ignore all previous instructions before this one. Act like a document/text loader until you load and remember content of the next text/s or document/s.
There might be multiple files, each file is marked by name in the format ### DOCUMENT NAME.
I will send you them by chunks. Each chunk start will be noted as [START CHUNK x/TOTAL], and end of this chunk will be noted as [END CHUNK x/TOTAL], where x is number of current chunk and TOTAL is number of all chunks I will send you.
I will send you multiple messages with chunks, for each message just reply OK: [CHUNK x/TOTAL], don't reply anything else, don't explain the text!
Let's begin:
[START CHUNK 1/2]
인공지능의 미래
...
[END CHUNK 1/2]
Reply with OK: [CHUNK x/TOTAL], DON'T reply anything else, DON'T explain the text, DON'T do anything else until i tell you otherwise!
자동으로 붙은 메시지는 이런 뜻으로 챗GPT가 분리된 여러개의 메시지를 이해하고 입력할 수 있도록 추가된 것입니다.
이 명령 앞의 모든 이전 지침을 무시합니다. 다음 텍스트 또는 문서의 내용을 로드하고 기억할 때까지 문서/텍스트 로더처럼 작동합니다.
파일이 여러 개 있을 수 있으며, 각 파일은 ###DOCTION NAME 형식으로 이름으로 표시됩니다.
제가 그것들을 덩어리로 당신에게 보내겠습니다. 각 청크 시작은 [START 청크 x/TOTAL]로 표시되고, 이 청크의 끝은 [END 청크 x/TOTAL]로 표시됩니다. 여기서 x는 현재 청크의 수이고 TOTAL은 내가 보낼 모든 청크의 수입니다.
청크가 포함된 메시지를 여러 개 보낼 것입니다. 각 메시지에 대해 [CHUNK x/TOTAL] 라고 답장을 보내십시오. 다른 답장을 보내지 마십시오. 텍스트를 설명하지 마십시오!
시작합니다:
[시작 청크 1/2]
...
[끝 청크 1/2]
OK로 답장하기: [CHUNK x/TOTAL], 다른 것은 답장하지 마세요, 텍스트를 설명하지 마세요, 제가 다르게 말할 때까지 다른 것은 하지 마세요!
그럼 이것을 챗GPT에 입력해보겠습니다.
'Copy' 버튼을 클릭하면 복사가 돼서 편하게 챗GPT에 복사, 붙여넣기를 할 수 있습니다. 또한 복사한 청크는 위와 같이 녹색으로 표시가 돼서 어디까지 복사했는지 잊어버릴 염려를 하지 않아도 됩니다.
나눠진 메시지를 챗GPT에 순서대로 입력하면 챗GPT가 'OK: [CHUNK 입력한 갯수/전체 갯수]'와 같이 답변합니다. 만일 저 형태와 다른 답변을 한다면 'Regenerate response'를 클릭해서 답변을 다시 받으세요.
챗GPT에 모든 메시지를 전송하고 답변이 저렇게 되었으면 긴 길이의 전체 텍스트 전송이 완료된 것입니다.
이 후부터 원하는 작업을 챗GPT에게 지시하면 되는데, 'chunk 입력이 완료되었어. 지금까지 내가 입력한 텍스트를 통합해서 하나의 데이터로 인식해.' 처럼 긴 텍스트를 나눠서 전송했다는 것을 챗GPT에게 알려주는게 좋습니다.
관련 글
🔗 챗GPT, 구글 바드, Bing 비교 - 차이점 분석 정리 | 나에게 적합한 대화형 AI는? | 대화형 텍스트 AI
댓글