Whizi 채팅 가져오기 오류: ChatGPT나 Claude 가져오기가 거부되는 이유

빠른 답변

Whizi 가져오기는 두 지점 중 한 곳에서 실패하며, 메시지가 어느 쪽인지 알려줍니다: 내보내기 파일을 읽는 브라우저 파서, 혹은 대화를 서버로 전송하는 업로드 과정입니다. Whizi가 읽는 파일은 ChatGPT나 Claude 내보내기 안에 있는 conversations.json입니다. 가져오기를 다시 실행해도 채팅이 중복되지 않으므로, 먼저 재시도부터 해보세요.

짧은 답변

Whizi가 가져오기를 거부했다면 먼저 선택한 파일을 확인하세요. Whizi가 읽는 유일한 파일은 ChatGPT나 Claude 내보내기 안에 있는 conversations.json이므로, 내보내기 파일의 압축을 풀고 zip 자체가 아니라 그 파일을 선택해야 합니다. 그다음으로 가져오기는 두 지점 중 한 곳에서 실패하며, 메시지의 문구가 어느 쪽인지 알려줍니다: 내보내기 파일을 읽는 브라우저 파서이거나, 그 파서가 만든 대화를 받는 가져오기 엔드포인트입니다. 파일 오류는 선택한 파일에 관한 것이고, 업로드 오류는 네트워크나 세션에 관한 것입니다. 그 사이에 모호한 것은 없습니다. 각 메시지는 하나의 조건에 고정된 고정 문자열이기 때문입니다.

무언가를 재시도하기 전에 알아둘 두 번째 사실: 가져오기를 다시 실행해도 채팅이 절대 중복되지 않습니다. 가져온 모든 대화는 계정, 소스, 소스 id로 키가 매겨지므로, 같은 내보내기를 두 번 가져오거나, 끊긴 연결 이후 재개하거나, Import를 두 번 클릭해도 같은 채팅이 한 번만 반영됩니다.

화면에 보인 것실패 지점해야 할 일
내보내기 형식이나 conversations.json에 대한 메시지파일을 읽는 단계, 업로드 이전내보내기 안에서 다른 파일을 선택하세요. 아래 표 참고
세션이나 연결에 대한 메시지업로드 도중다시 로그인하거나 재연결한 후 가져오기를 다시 실행하세요
가져올 수 없었던 대화 개수일부 배치가 재시도 끝에 모두 실패가져오기를 다시 실행하면 빠진 부분만 처리됩니다
아무 메시지도 없이 시간이 오래 걸림속도 제한, 정상 동작기다리세요. 가져오기 도구가 스스로 재시도합니다

가져오기 파일을 읽을 때 발생하는 오류

이 오류들은 단 한 바이트도 내 기기를 떠나기 전, 브라우저에서 발생합니다. 내보내기 파일 자체는 절대 업로드되지 않습니다. 브라우저가 파일을 파싱해서 정규화된 대화만 전송하므로, 여기서 오류가 나면 그 파일은 전송될 만큼 진행되지 못했다는 뜻입니다.

메시지발생 조건해결 방법
That file is not a ChatGPT or Claude export. Look for conversations.json inside the export zip.파서가 두 내보내기 형식 중 어느 것도 식별하지 못했거나, zip이 인식할 수 없는 내용을 반환한 경우내보내기 압축 파일을 열어 conversations.json을 직접 선택하세요
There is no conversations.json inside that zip. Unzip it and pick the file directly.선택한 zip에 일치하는 항목이 전혀 없는 경우직접 압축을 풀어 conversations.json을 찾아 그 파일을 선택하세요
That file is not valid JSON, so there was nothing to read.선택한 파일이 JSON으로 파싱되지 않는 경우ChatGPT나 Claude에서 내보내기를 다시 내려받아 그 안의 conversations.json을 선택하세요
That export has no conversations with text in them.내보내기는 파싱되지만 대화가 0개인 경우그 내보내기 안에는 실제로 텍스트 대화가 없습니다. Whizi 쪽에서 고칠 부분은 없습니다
That file is too large for the browser to open. Pick the export .zip instead, which is read one file at a time.선택한 원본 .json 파일이 브라우저 읽기 한도를 초과한 경우대신 .zip을 선택하세요. 원본 .json 내보내기는 300MB까지 허용되고, .zip 경로는 conversations.json 항목만 압축 해제하므로 자체 상한이 없습니다
Could not read that file. Please try again.그 외의 이유로 파일 읽기가 실패한 경우재시도로 해결되는 경우입니다. 같은 파일에서 반복되면 한 번에 하나씩 항목을 읽는 내보내기 .zip을 선택하세요

첫 번째 메시지가 포괄적인 이유는 하나의 문자열이 두 가지 조건을 함께 다루기 때문입니다: 파서가 식별할 수 없는 내보내기 형식과, 인식할 수 없는 내용을 반환하는 zip입니다. 둘 다 해결책은 같습니다. 내보내기의 압축을 풀고 conversations.json을 직접 선택하는 것입니다.

업로드 자체에서 발생하는 오류

파일이 파싱되고 나면 가져오기 도구가 대화를 배치 단위로 전송합니다. 이 단계에서 문제가 생길 수 있는 경우는 두 가지이며, 둘 다 복구할 수 있습니다.

메시지발생 조건해결 방법
Your session ended. Sign in again, then start the import.가져오기 도중 토큰 요청이 아무것도 반환하지 않은 경우다시 로그인한 후 가져오기를 처음부터 시작하세요. 이미 반영된 것은 그대로 남고, 재실행 시 건너뜁니다
The import could not be finished. Check your connection and try again.가져오기 실행 중 그 외의 업로드 실패연결을 확인하고 다시 실행하세요

세 번째 결과는 오류가 아니라 요약입니다: {count} could not be imported. Run the import again to pick them up. 이는 재시도를 모두 거치고도 실패한 배치의 개수입니다. 메시지 속 지시가 곧 해결법 전부이며, 짧은 답변에서 설명한 중복 방지 키 덕분에 두 번째 실행은 비용이 전혀 들지 않습니다.

가져오기 엔드포인트가 반환하는 오류

이 항목들은 가져오기 라우트 자체가 만들어내는 코드와 문자열입니다. 웹사이트는 같은 상한을 그대로 반영하고 전송 전에 검증하므로, 이 오류는 무언가 엔드포인트에 직접 전송하고 있거나 배치가 잘못 구성됐을 때 가장 중요해집니다.

코드메시지발생 조건
invalid_importA JSON object body is required.가져오기 본문이 객체가 아닌 경우
invalid_sourceAn import source of chatgpt or claude is required.source 필드가 없거나 허용된 두 소스 중 하나가 아닌 경우
empty_importAt least one conversation is required.conversations 배열이 없거나 비어 있는 경우
too_many_conversationsThis batch has {count} conversations, over the 25 per request limit.한 요청에 25개를 초과하는 대화가 있는 경우
too_many_messagesConversation {n} carries {count} messages, over the 400 per request limit. Send the rest as an append.한 요청 안의 한 대화에 400개를 초과하는 메시지가 있는 경우
invalid_importConversation {n} is not an object.conversations 배열의 항목이 객체가 아닌 경우
invalid_importConversation {n} has no messages array.대화에 messages 배열이 없는 경우
invalid_importConversation {n} has an invalid append target.appendTo 필드가 문자열도 null도 아닌 경우
invalid_messageConversation {n} message {m} is not an object.메시지 항목이 객체가 아닌 경우
invalid_messageConversation {n} message {m} needs a role of "user" or "assistant".메시지의 role이 그 둘 외의 값인 경우
invalid_messageConversation {n} message {m} has no text.메시지 content가 문자열이 아닌 경우
request_too_largeRequest is too large.JSON 본문이 라우트의 바이트 상한을 초과한 경우, 선언된 Content-Length 기준이든 실제로 읽은 바이트 기준이든

이 메시지들 뒤에 있는 상한은 다음과 같습니다: 요청당 대화 25개, 요청당 대화 하나에 메시지 400개, 요청 본문 최대 2,000,000바이트입니다. 웹사이트의 가져오기 도구는 정확히 25와 400에서 나누고 각 요청을 1,200,000바이트 이하로 유지하는데, 이는 요청 봉투에 여유를 남기기 위해 2,000,000바이트 상한보다 의도적으로 낮춘 값입니다. 400개를 넘는 메시지를 가진 대화는 거부되지 않고 잘립니다. 나머지는 첫 번째 조각이 만든 채팅에 append 조각으로 이어 붙여 전송됩니다.

대규모 가져오기는 한 번에 20초씩 멈춥니다

대화 가져오기는 사용자당 분당 20회 요청으로 속도가 제한됩니다. 대용량 내보내기는 이 상한에 부딪히는데, 이는 예상된 동작이지 고장이 아닙니다.

이 상황이 발생해도 오류는 보이지 않습니다. HTTP 429를 만난 가져오기는 화면에 표시되지 않습니다. 클라이언트가 20초를 기다렸다가 배치당 최대 4회까지 재시도하기 때문입니다. 그래서 대용량 내보내기에서 한 번에 20초씩 멈춘 것처럼 보이는 가져오기는 정확히 정상적으로 동작하고 있는 것입니다. 그대로 진행되도록 두세요.

그 4회 시도 후에도 배치가 계속 실패하면 {count} could not be imported. Run the import again to pick them up. 요약에 반영됩니다. 이때는 지원팀 문의가 아니라 가져오기를 한 번 더 실행하는 것이 해결책입니다.

가져오기가 의도적으로 제외하는 항목

일부 콘텐츠는 설계상 의도적으로 제외되며, 성공한 가져오기라도 원본 옆에 두면 불완전해 보일 수 있습니다.

ChatGPT 내보내기의 경우 화면에 표시되어 있던 분기만 가져옵니다. 재생성된 답변과 버려진 초안은 메시지로 재현되지 않습니다. 대화 기록이 아닌 콘텐츠도 제외됩니다: 숨겨진 추론 과정, 분석 도구의 코드와 출력, 브라우징 스크래치패드, 커스텀 지침 블록, 함수 호출입니다.

Claude 내보내기의 경우 thinking 블록, 도구 호출, 첨부 파일이 제외됩니다. 텍스트 블록만 가져옵니다.

파일 안에서 읽을 수 있는 텍스트가 전혀 없는 대화는 조용히 누락되는 대신 개수로 집계되어 건너뛴 항목으로 보고되므로, 건너뛴 개수는 실패가 아니라 정보입니다.

사용할 만한 제목이 없는 대화는 Imported chat이 되고, 120자를 넘는 제목은 잘립니다. 콘텐츠 상한을 넘는 가져온 메시지는 거부되지 않고 잘리므로, 메시지 하나가 너무 크다고 해서 그 대화의 나머지까지 잃지는 않습니다.

마지막으로 타임스탬프입니다. 2015년 1월 1일 이전이거나 미래로 표시된 메시지는 타임스탬프로 인정되지 않고 해당 행은 가져온 시각으로 대체됩니다. 원래 날짜가 아니라 가져오기를 실행한 날짜로 표시된 채팅이 있다면 이 규칙에 해당한 것입니다.

가져오기를 다시 실행해도 안전한 이유

짧은 답변에서 설명한 중복 방지 키에는 대체 방식이 있습니다. 내보내기가 안정적인 대화 id를 제공하지 않을 때는 그 키가 대화 내용 자체의 해시가 되므로, 다시 실행해도 사본을 추가하지 않고 같은 대화로 매칭됩니다.

알아둘 만한 한 가지 결과가 있습니다: 가져온 채팅을 삭제한 뒤 같은 내보내기를 다시 가져오면 중복이라고 보고하는 대신 그 채팅이 되살아납니다. 가져온 대화를 의도적으로 삭제했다면, 그것이 다시 돌아오길 원하지 않는 한 그 내보내기를 재실행하지 마세요.

체크리스트
  • 내보내기 zip 자체가 아니라 그 안의 conversations.json을 선택하세요
  • 원본 .json 내보내기는 300MB까지 허용되며, 이를 넘으면 .zip을 사용하세요
  • 세션과 연결 오류는 로그인하거나 재연결한 후 다시 실행하라는 뜻입니다
  • 가져올 수 없었던 개수가 나오면 가져오기를 다시 실행하세요
  • 가져온 채팅을 삭제한 뒤 다시 가져오면 되살아납니다
  • 대규모 가져오기가 한 번에 20초씩 멈추는 것은 속도 제한이지 오류가 아닙니다
  • ChatGPT의 재생성된 분기, Claude의 thinking 블록과 첨부 파일은 설계상 제외됩니다

자주 묻는 질문

Whizi가 제 ChatGPT 내보내기를 ChatGPT 내보내기가 아니라고 합니다. 왜 그런가요?

메시지는 That file is not a ChatGPT or Claude export. Look for conversations.json inside the export zip.이며, 선택한 파일에서 파서가 두 형식 중 어느 것도 식별하지 못했거나 zip이 인식할 수 없는 내용을 반환할 때 나타납니다. Whizi가 읽는 파일은 conversations.json이므로, 내보내기의 압축을 풀고 그 파일을 직접 선택하세요. zip을 선택해서 대신 There is no conversations.json inside that zip. Unzip it and pick the file directly.가 나왔다면, 그 zip에는 일치하는 항목이 전혀 없는 것이므로 내보내기를 다시 내려받아야 합니다.

가져오기가 도중에 멈췄습니다. 다시 실행하면 채팅이 중복되나요?

아니요. 다시 실행하는 것이 끊긴 연결, 종료된 세션, 실패한 배치에 대한 의도된 복구 방법입니다. 두 번째 실행은 같은 채팅을 한 번만 반영하고 빠진 부분만 처리합니다. 먼저 해야 할 정리 작업은 없습니다.

왜 일부 대화만 가져와졌나요?

서로 다른 두 종류의 개수가 나타날 수 있으며, 그중 하나만 실패를 뜻합니다. {count} could not be imported. Run the import again to pick them up.은 재시도를 모두 거치고도 실패한 배치의 개수이며, 가져오기를 다시 실행하는 것이 해결법입니다. 건너뛴 개수는 다른 것으로, 문제가 생긴 대화가 아니라 파일 안에서 읽을 수 있는 텍스트가 없는 대화를 나타냅니다.

가져오기가 한참 그대로 머물러 있습니다. 고장난 건가요?

얼마나 오래됐는지보다 다시 움직이는지를 보세요. 약 20초의 멈춤 후 진행이 이어지는 것은 속도 제한기 때문입니다. 클라이언트가 아무것도 보여주지 않고 20초를 기다렸다가 재시도하기 때문입니다. 실제로 끝난 가져오기는 이 페이지의 오류 문자열 중 하나이거나 {count} could not be imported. Run the import again to pick them up. 요약으로 그렇게 알려줍니다. 조용하면서 주기적으로 진행된다면 그대로 두세요.

제 ChatGPT나 Claude 내보내기 파일이 Whizi에 업로드되나요?

아니요. 내보내기 파일 자체는 서버에 도달하지 않습니다. 브라우저가 이를 읽고 파싱한 뒤 정규화된 대화만 전송하며, 이 때문에 이 페이지의 모든 형식 오류는 전송이 일어나기 전에 발생합니다. 데이터 처리에 대한 전체 내용은 Whizi가 데이터를 다루는 방식에서 확인할 수 있습니다.