ChatGPT에서 내 데이터를 요청하면 OpenAI가 거대한 conversations.json과 HTML, 첨부 파일이 담긴 ZIP을 보내 줍니다. 이 JSON은 사람이 읽도록 만든 파일이 아닙니다. 대화 하나가 부모 노드를 가리키는 트리이고, 시각은 에포크 초이며 메시지 본문은 중첩 배열에 들어 있습니다. ChatGPT 내보내기 뷰어는 ZIP이나 conversations.json 하나만 열어 대화를 읽는 순서로 복원하고, 검색과 내보내기를 할 수 있게 해 줍니다.
중요한 대화를 노트 앱에 보관하거나, 한 대화만 PDF로 동료에게 넘기거나, 기억나는 코드 조각을 내 기록에서 찾고 싶을 때, 또는 ChatGPT를 떠나면서 내가 쓴 내용을 가져가고 싶을 때 쓰면 됩니다. 파일은 브라우저 안에서만 읽으므로 업무 자료나 개인 대화가 들어 있는 내보내기 파일이 어디에도 업로드되지 않습니다. 이 도구는 독립 서비스이며 OpenAI 제품이 아닙니다.
사용 방법
ChatGPT에서 내보내기 요청
ChatGPT 설정의 데이터 제어에서 데이터 내보내기를 선택하면 OpenAI가 ZIP 다운로드 링크를 이메일로 보냅니다. 이 원본 파일은 따로 보관하세요. 가장 확실한 사본입니다.
ZIP 또는 conversations.json 올리기
ZIP이나 압축을 푼
conversations.json을 선택합니다. 파일은 512MB까지, 압축 해제한 대화 JSON은 256MB 이하이고 대화는 최대 100,000개까지 열 수 있습니다.목록 검색
검색창에 입력하면 제목이나 메시지 속 단어로 대화를 걸러 줍니다. 대소문자를 구분하지 않고 일부 글자만 입력해도 찾습니다. 대화를 열면 You와 Assistant 메시지, 접힌 추론 블록, 도구 이름이 붙은 접힌 도구 블록을 읽고 ChatGPT가 숨긴 메시지도 선택해서 볼 수 있습니다. 메시지 수와 내보내기도 숨김 스위치를 따릅니다.
내보낼 대화 선택
불러오면 모든 대화가 선택된 상태입니다. 필요 없는 대화는 체크를 풀거나, 먼저 검색으로 걸러서 일치하는 것만 남기세요.
형식 고르기
마크다운, 단독으로 열 수 있는 HTML, 구조화된 JSON으로 저장하거나 인쇄 옵션으로 브라우저 인쇄 창에서 PDF를 만듭니다. 대화 하나는 파일 하나로, 여러 개는 ZIP으로 내려받습니다. 열어 둔 대화에는 자체 다운로드 버튼도 있습니다. 대화 인덱스(CSV) 탭에서는 대화당 한 줄씩 정리한 스프레드시트를 받을 수 있습니다.
필요하면 첨부 파일 복구
선택한 대화가 가리키는 업로드 파일이 ZIP 안에 있으면 첨부 파일만 모은 ZIP을 만들 수 있습니다. 찾지 못한 참조는 개수로 알려 줍니다. 64 MiB를 넘는 파일이나 합계 256 MiB를 넘는 분량은 브라우저 메모리를 지키기 위해 건너뛰며 README에 개수가 기록됩니다.
작동 원리
conversations.json이 트리인 이유
ChatGPT에서는 프롬프트를 수정하거나 답변을 다시 생성할 수 있어서 대화가 mapping이라는 노드 모음으로 저장되고, 각 노드는 parent를 가집니다. current_node는 내가 마지막으로 보던 분기의 끝 메시지를 가리킵니다. 뷰어는 current_node에서 부모를 따라 올라간 뒤 순서를 뒤집어 최종 분기를 읽는 순서로 만듭니다. 예전에 수정한 프롬프트와 다시 생성한 답변 같은 버려진 분기는 내보내지 않습니다.
current_node가 없는 대화는 모든 노드를 create_time 순으로 정렬합니다. 이 순서는 최선의 추정이라 분기가 섞일 수 있으니 중요한 대화는 원본 ZIP도 함께 보관하세요.
{ "title": "Trip plan", "current_node": "a1",
"mapping": {
"u1": { "parent": "root", "message": { "author": { "role": "user" }, "content": { "parts": ["Plan 3 days"] } } },
"a1": { "parent": "u1", "message": { "author": { "role": "assistant" }, "content": { "parts": ["Day 1: ..."] } } } } }결과물에 담기는 내용
읽을 수 있는 텍스트가 있는 메시지만 남습니다. 한 메시지의 여러 부분은 빈 줄로 이어 붙이고, 이름이 있는 부분은 [Attachment: 이름], 에셋 포인터만 있는 부분은 [Attachment]로 바뀝니다. ChatGPT가 숨김으로 표시한 시스템 프롬프트와 보조 메시지는 숨긴 메시지 표시를 켜야 나오며, 메시지 수와 내보내기도 이 스위치를 따릅니다. 모델의 추론은 Thought for Ns 줄이 붙은 접힌 추론 블록으로, 도구 호출과 결과는 도구 이름이 붙은 접힌 도구 블록으로 나옵니다. 텍스트가 없는 메시지는 계속 건너뜁니다.
마크다운은 제목, ISO 8601 UTC 형식의 생성·수정 시각, 그리고 메시지마다 2단계 제목을 쓰고 가로줄로 구분합니다. HTML은 모든 메시지를 이스케이프하고 줄바꿈만 유지하며 마크다운을 렌더링하지는 않습니다. JSON은 아이디, 역할, 본문, 시각을 담고 내부 포인터 대신 첨부 파일 이름 목록을 넣습니다.
| 형식 | 대화 하나 | 대화 여러 개 |
|---|---|---|
| 마크다운 | 제목.md | 제목-아이디 앞 8자.md가 담긴 ZIP |
| HTML | 제목.html | HTML 파일 ZIP |
| JSON | 제목.json | JSON 파일 ZIP |
| 브라우저 인쇄 창 | 대화마다 쪽 나눔이 있는 인쇄 작업 하나 |
분할된 내보내기와 첨부 파일 매칭
내보내기가 크면 conversations-000.json, conversations-001.json처럼 여러 파일로 나뉩니다. 뷰어는 conversations 뒤에 선택적으로 대시나 밑줄과 숫자가 붙은 모든 파일을 읽고 대화 아이디를 기준으로 합칩니다. 같은 대화가 두 번 나오면 update_time이 더 최신인 쪽을 씁니다.
첨부 파일은 이름이나 아이디로 찾습니다. ZIP 안 파일 이름이 참조와 정확히 같거나, 8자 이상인 참조를 포함하면 일치로 봅니다. OpenAI가 파일 이름 앞에 file-과 아이디를 붙이는 방식에 맞춘 규칙입니다. 추정 방식이라 못 찾은 참조는 개수로 보고합니다.
대화 인덱스(CSV)
대화 인덱스(CSV) 탭은 선택 여부와 관계없이 불러온 모든 대화를 한 줄씩 보여 주고, 같은 표를 CSV로 내려받게 해 줍니다. 파일 앞에 BOM을 붙인 UTF-8이라 엑셀에서도 한글이 깨지지 않습니다. 주소 끝에 ?mode=conversation-index를 붙여 열면 이 탭이 바로 열립니다. 불러온 파일 정보는 주소에 들어가지 않습니다.
모든 칸은 따옴표로 감쌉니다. 제목이 =, +, -, @로 시작하면(숫자나 전화번호 형태는 제외) 앞에 작은따옴표를 붙여, 스프레드시트가 수식으로 실행하지 않고 문자로 보여 주게 합니다.
| 열 | 내용 |
|---|---|
| id | 내보내기 파일의 대화 아이디 |
| title | 제목, 비어 있으면 Untitled conversation N |
| created_at / updated_at | ISO 8601 UTC, 알 수 없으면 빈 칸 |
| messages | 현재 분기에서 읽을 수 있는 메시지 수 |
| attachment_refs | 그 메시지들에서 찾은 첨부 참조 수 |
실제 예시
제목 "Trip: Seoul/Busan?", 사용자 "Plan 3 days", 어시스턴트 "Day 1: Gyeongbokgung", current_node 밖의 분기에 예전 어시스턴트 답변 "discarded"# Trip: Seoul/Busan?
- Created: 2023-11-14T22:13:20.000Z
- Updated: 2023-11-14T22:15:00.000Z
## You
Plan 3 days
---
## Assistant
Day 1: Gyeongbokgung파일 이름에서 : / ? 는 공백으로 바뀌므로 Trip Seoul Busan.md로 저장됩니다.
conversations.json(대화 객체의 JSON 배열), ZIP 없음대화 목록과 내보내기는 되고 첨부 파일 복구는 쓸 수 없음JSON만 읽으므로 매칭할 첨부 파일이 없습니다.
conversations-1.json에는 아이디 c1, update_time 100, 제목 "Older title", conversations-2.json에는 아이디 c1, update_time 200, 제목 "Newer title"대화 한 개가 Newer title이라는 제목으로 표시됨중복은 update_time으로 가리고, 같으면 메시지 수가 더 많은 쪽을 씁니다.
메시지 부분의 asset_pointer file-service://file-ab12cd34ef, name logo.png, ZIP 안에는 file-ab12cd34ef-logo.png본문에는 [Attachment: logo.png]가 나오고 첨부 ZIP에는 attachments/1-file-ab12cd34ef-logo.png가 담김첨부 ZIP에는 일치한 참조와 일치하지 못한 참조 수를 적은 README.txt도 함께 들어갑니다.
대화 c-001, 제목 =SUM(A1) "Q3", plan, 메시지 2개, 첨부 참조 1개, 생성 1700000000, 수정 1700000100id,title,created_at,updated_at,messages,attachment_refs
"c-001","'=SUM(A1) ""Q3"", plan","2023-11-14T22:13:20.000Z","2023-11-14T22:15:00.000Z","2","1"작은따옴표 덕분에 제목이 수식으로 실행되지 않고, 겹따옴표는 CSV 이스케이프입니다. 실제 파일에서는 머리글을 포함한 모든 칸이 따옴표로 감싸집니다.
자주 하는 실수
수정한 대화는 마지막 분기만 나옵니다
프롬프트를 고치거나 답변을 다시 생성했다면 이전 버전은 의도적으로 빠집니다. 예전 버전이 필요하면 원본 ZIP과 다른 도구가 있어야 합니다.
숨긴 메시지는 뷰어 스위치를 따릅니다
ChatGPT가 숨김으로 표시한 시스템 프롬프트와 보조 메시지는 기본적으로 빠집니다. 숨긴 메시지 표시를 켜면 읽기 화면, 메시지 수, 내보내기에 함께 포함됩니다. 추론과 도구 활동은 접힌 블록으로 남고, 텍스트가 없는 메시지만 건너뜁니다.
HTML 내보내기는 렌더링된 마크다운이 아닙니다
답변 속 제목, 목록, 코드 블록이 서식 없이 입력된 글자 그대로 줄바꿈과 함께 나옵니다. 서식이 필요하면 마크다운으로 저장해 마크다운 편집기에서 열거나 미리보기에서 PDF로 인쇄하세요.
너무 큰 내보내기는 브라우저 메모리를 넘길 수 있습니다
512MB를 넘는 파일, 압축 해제 시 256MB를 넘는 JSON, 대화가 100,000개를 넘는 아카이브는 거절합니다. 한계에 가깝다면 ZIP을 풀어
conversations-NNN.json을 하나씩 여세요.시각은 UTC입니다
생성·수정 시각은 내 시간대가 아니라 끝에 Z가 붙는 ISO 8601 UTC로 적힙니다. 날짜를 알 수 없으면 Unknown으로 표시합니다.
자주 묻는 질문
conversations.json은 어떻게 여나요?
이 페이지에 파일이나 내보내기 ZIP 전체를 끌어다 놓으면 됩니다. 뷰어가 대화를 읽는 순서로 복원해 검색 가능한 목록으로 보여 줍니다. 텍스트 편집기로도 열 수 있지만 노드 트리 원본이 그대로 나와 읽기 어렵습니다.
내보내기 파일이 업로드되나요?
아니요. 파일은 브라우저 안에서 읽고 변환하며 내용이 서버로 전송되지 않습니다.
전체를 한 번에 내보낼 수 있나요?
가능합니다. 불러오면 모든 대화가 선택되어 있어서 내보내기 버튼을 누르면 전체가 처리됩니다. 여러 대화는 대화당 파일 하나씩 담긴 ZIP 하나로 묶입니다.
이미지와 업로드한 파일도 들어가나요?
본문에는 첨부 표시가 나옵니다. 일치하는 파일이 내보내기 ZIP 안에 있으면 그것들로 별도의 첨부 ZIP을 만들 수 있고, 못 찾은 참조는 개수로 알려 줍니다.
PDF는 어떻게 만드나요?
대화를 선택하고 PDF 옵션을 누르면 대화마다 쪽이 나뉜 인쇄 화면이 열리고, 브라우저 인쇄 창에서 PDF로 저장을 고르면 됩니다. 창이 막히면 팝업을 허용하세요.
기억하는 메시지가 빠져 있는 이유는 무엇인가요?
프롬프트를 고치거나 답변을 다시 만들면서 벗어난 분기에 있었거나 ChatGPT가 숨김으로 표시했을 수 있습니다. 후자라면 숨긴 메시지 표시를 켜세요. 읽을 수 있는 추론과 도구 활동은 접힌 블록으로 남지만 텍스트가 없는 메시지는 건너뜁니다.
대화 전체를 스프레드시트로 받을 수 있나요?
네. 대화 인덱스(CSV) 탭에서 파일을 내려받으세요. 모든 대화의 아이디, 제목, 생성·수정 시각, 메시지 수, 첨부 참조 수가 한 줄씩 담겨 있어 스프레드시트에서 바로 정렬할 수 있습니다.
OpenAI 공식 도구인가요?
아니요. 내보내기 파일 형식을 읽는 독립 뷰어이며 OpenAI와 제휴하지 않았습니다.
더 깊이 읽기
마지막 업데이트:
