# 匯入聊天紀錄

> 把 SillyTavern、Character.AI、ChatGPT、Claude 和 RisuAI 的對話搬過來，在 Reverie 繼續聊下去。

Source: https://reverie.im/zh-TW/docs/getting-started/importing-your-history
Language: zh-TW

Reverie 可以讀取其他平台匯出的聊天紀錄，並把它重播成這裡的一場對話，讓你在別處累積的紀錄能接續下去，而不必從頭開始。

> 這一頁說的是**對話**。把角色搬過來——Tavern 角色卡、從 CharacterHub 下載的檔案——是另一個工具，有自己的頁面：[匯入角色](https://reverie.im/zh-TW/docs/characters/import-characters)。

## 開始之前 \[#before-you-start]

你必須先登入，而且需要一個與這段紀錄所屬角色的**空白聊天**：只要對話裡已經有訊息，匯入就會被拒絕，所以它絕不會覆蓋任何對話。如果這個角色在 Reverie 上還不存在，請先匯入角色，再和它開始一場聊天，並保持空白。

## 匯入一場對話 \[#import-a-conversation]

### 開啟空白聊天 \[#open-an-empty-chat]

和角色開始一場新對話，什麼都不要傳。角色在新聊天中顯示給你的開場白並不是儲存下來的訊息，所以在你回覆之前，這場對話仍算是空白的。

### 開啟「匯入聊天」 \[#open-import-chat]

開啟側邊欄，進入**設定**分頁，展開**聊天管理**，再選擇**匯入聊天**。這一列只會在聊天是空白時出現。

### 把檔案拖進來 \[#drop-the-file-in]

把匯出檔拖曳到拖放區，或點擊瀏覽選取檔案。Reverie 會自行偵測格式——你什麼都不用選。

### 檢查預覽，然後匯入 \[#check-the-preview-then-import]

預覽會列出它辨識出的格式、訊息數、其中你和角色各占多少，以及它找到的日期範圍。任何必須略過的內容都會列在**請注意**底下。按下標示著訊息數的**匯入**按鈕確認後，聊天會重新載入，你的紀錄就在其中。

## Reverie 能讀取什麼 \[#what-reverie-reads]

| 來源               | 要準備的檔案                        |
| ---------------- | ----------------------------- |
| **SillyTavern**  | 該聊天的 `.jsonl` 檔案              |
| **Character.AI** | 資料匯出中的那場對話（`.json`）           |
| **RisuAI**       | 匯出的聊天（`.json`）                |
| **ChatGPT**      | 資料匯出中的那場對話（`.json`）           |
| **Claude**       | 資料匯出中的那場對話（`.json`）           |
| 通用 JSON          | 任何標明發言身分（role）的 OpenAI 格式訊息清單 |
| 文字或 Markdown     | `Name: message` 格式的對話文字紀錄     |

Chub 和 JanitorAI 另存為 SillyTavern JSONL 的匯出檔，可以透過 SillyTavern 這條路徑匯入。

| 限制       | 數值                             |
| -------- | ------------------------------ |
| 檔案類型     | `.jsonl`、`.json`、`.txt`、`.md`  |
| 檔案大小     | 10 MB                          |
| 每個檔案的訊息數 | 10,000——更長的紀錄請拆成數個檔案，分別匯入不同的聊天 |
| 目標       | 一次一個空白聊天、一個檔案                  |

## 哪些會帶過來，哪些不會 \[#what-carries-over-and-what-doesnt]

會帶過來的：每則訊息的文字、發言者、原本的順序，以及匯出檔中有的原始時間戳記。沒有可用時間戳記的訊息會維持相對順序。如果匯出檔為對話取了名稱，新建立的聊天就會沿用那個名稱。在群組聊天中，與聊天室裡某個角色相符的發言者名稱會歸給該角色；無法辨識的則一律歸給主要角色。

不會帶過來的：圖片和附件、系統訊息和工具訊息，以及其他備選回覆（swipe）——只有在原平台上被選中的那則回覆會帶過來。聊天匯出檔也完全不包含角色本身的資料，所以角色定義、世界書、人設和記憶都不在其中。

訊息匯入後，Reverie 會為它們產生摘要，讓記憶和上下文從你的下一輪起就能發揮作用。這份摘要不收費，但如果你的點數餘額不足以支付它所需的 Token，就會略過——匯入本身仍會成功。

## 遭到拒絕時 \[#when-it-refuses]

| 訊息         | 處理方式                                        |
| ---------- | ------------------------------------------- |
| 不支援的檔案類型   | 把匯出檔另存為 `.jsonl`、`.json`、`.txt` 或 `.md`     |
| 檔案太大了      | 拆分檔案；上限是 10 MB                              |
| 這個檔案是空的    | 確認你匯出的是那場對話，而不是一個空殼                         |
| 無法讀取這個檔案   | 這不是 Reverie 能辨識的聊天匯出檔——試試通用 JSON 或對話文字紀錄的格式 |
| 這個檔案的訊息太多了 | 拆分到 10,000 則訊息以下                            |
| 這段聊天已經有訊息了 | 開始一場新對話，匯入到那裡                               |
| 這段聊天屬於其他帳號 | 你登入的是別人的帳號                                  |

## 把對話匯出去 \[#taking-your-conversations-out]

對話有訊息之後，同一個**聊天管理**區塊裡就會出現**匯出聊天**。共有四種格式：**JSONL**（與 SillyTavern 相容；如果你以後想再匯入回來，就選這個）、**Markdown**、**純文字**和 **HTML**。Reverie 自己匯出的 JSONL 就是有效的匯入檔，所以你可以把對話搬到其他角色，或是備份後再還原。

## 相關內容 \[#related]

* [匯入角色](https://reverie.im/zh-TW/docs/characters/import-characters)——角色卡，而不是對話
* [管理對話](https://reverie.im/zh-TW/docs/chatting/managing-conversations)——重新命名、封存和刪除聊天
* [記憶](https://reverie.im/zh-TW/docs/chatting/memory)——摘要會用在哪裡
* [群組聊天](https://reverie.im/zh-TW/docs/chatting/group-chats)——匯入的發言者如何對應到角色名單
* [Reverie 上的匯入與匯出](https://reverie.im/zh-TW/blog/your-data-your-choice)——這項功能存在的原因
