匯入聊天紀錄
把 SillyTavern、Character.AI、ChatGPT、Claude 和 RisuAI 的對話搬過來,在 Reverie 繼續聊下去。
Reverie 可以讀取其他平台匯出的聊天紀錄,並把它重播成這裡的一場對話,讓你在別處累積的紀錄能接續下去,而不必從頭開始。
這一頁說的是對話。把角色搬過來——Tavern 角色卡、從 CharacterHub 下載的檔案——是另一個工具,有自己的頁面:匯入角色。
開始之前
你必須先登入,而且需要一個與這段紀錄所屬角色的空白聊天:只要對話裡已經有訊息,匯入就會被拒絕,所以它絕不會覆蓋任何對話。如果這個角色在 Reverie 上還不存在,請先匯入角色,再和它開始一場聊天,並保持空白。
匯入一場對話
開啟空白聊天
和角色開始一場新對話,什麼都不要傳。角色在新聊天中顯示給你的開場白並不是儲存下來的訊息,所以在你回覆之前,這場對話仍算是空白的。
開啟「匯入聊天」
開啟側邊欄,進入設定分頁,展開聊天管理,再選擇匯入聊天。這一列只會在聊天是空白時出現。
把檔案拖進來
把匯出檔拖曳到拖放區,或點擊瀏覽選取檔案。Reverie 會自行偵測格式——你什麼都不用選。
檢查預覽,然後匯入
預覽會列出它辨識出的格式、訊息數、其中你和角色各占多少,以及它找到的日期範圍。任何必須略過的內容都會列在請注意底下。按下標示著訊息數的匯入按鈕確認後,聊天會重新載入,你的紀錄就在其中。
Reverie 能讀取什麼
| 來源 | 要準備的檔案 |
|---|---|
| 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——更長的紀錄請拆成數個檔案,分別匯入不同的聊天 |
| 目標 | 一次一個空白聊天、一個檔案 |
哪些會帶過來,哪些不會
會帶過來的:每則訊息的文字、發言者、原本的順序,以及匯出檔中有的原始時間戳記。沒有可用時間戳記的訊息會維持相對順序。如果匯出檔為對話取了名稱,新建立的聊天就會沿用那個名稱。在群組聊天中,與聊天室裡某個角色相符的發言者名稱會歸給該角色;無法辨識的則一律歸給主要角色。
不會帶過來的:圖片和附件、系統訊息和工具訊息,以及其他備選回覆(swipe)——只有在原平台上被選中的那則回覆會帶過來。聊天匯出檔也完全不包含角色本身的資料,所以角色定義、世界書、人設和記憶都不在其中。
訊息匯入後,Reverie 會為它們產生摘要,讓記憶和上下文從你的下一輪起就能發揮作用。這份摘要不收費,但如果你的點數餘額不足以支付它所需的 Token,就會略過——匯入本身仍會成功。
遭到拒絕時
| 訊息 | 處理方式 |
|---|---|
| 不支援的檔案類型 | 把匯出檔另存為 .jsonl、.json、.txt 或 .md |
| 檔案太大了 | 拆分檔案;上限是 10 MB |
| 這個檔案是空的 | 確認你匯出的是那場對話,而不是一個空殼 |
| 無法讀取這個檔案 | 這不是 Reverie 能辨識的聊天匯出檔——試試通用 JSON 或對話文字紀錄的格式 |
| 這個檔案的訊息太多了 | 拆分到 10,000 則訊息以下 |
| 這段聊天已經有訊息了 | 開始一場新對話,匯入到那裡 |
| 這段聊天屬於其他帳號 | 你登入的是別人的帳號 |
把對話匯出去
對話有訊息之後,同一個聊天管理區塊裡就會出現匯出聊天。共有四種格式:JSONL(與 SillyTavern 相容;如果你以後想再匯入回來,就選這個)、Markdown、純文字和 HTML。Reverie 自己匯出的 JSONL 就是有效的匯入檔,所以你可以把對話搬到其他角色,或是備份後再還原。
相關內容
- 匯入角色——角色卡,而不是對話
- 管理對話——重新命名、封存和刪除聊天
- 記憶——摘要會用在哪裡
- 群組聊天——匯入的發言者如何對應到角色名單
- Reverie 上的匯入與匯出——這項功能存在的原因