---
# System prepended metadata

title: 【2023生成式AI】23~25 低成本復刻ChatGPT、ChatGPT自我反省、AI村莊
tags: [生成式AI]

---

20251024筆記 內容可能有錯誤，請參考原始影片 


[李宏毅【機器學習 2023】(生成式 AI)](https://www.youtube.com/playlist?list=PLJV_el3uVTsOePyfmkfivYZ7Rqr2nMk3W)


[生成式AI】窮人如何低資源復刻自己的 ChatGPT](https://youtu.be/rK_rZFew1yc?si=MBHee6Gw_IAWNk29)
[【生成式AI】ChatGPT 可以自我反省!](https://youtu.be/m7dUFlX-yQI?si=h7WcFgSIExSWEfuW)
[【生成式AI】讓 AI 村民組成虛擬村莊會發生甚麼事？](https://youtu.be/G44Lkj7XDsA?si=qrMlMVgOlHWLROdi)




### 【生成式AI】窮人如何低資源復刻自己的 ChatGPT 大綱

一、低資源復刻 GPT 的動機
核心動機在於**資料隱私的考量**，擔憂 OpenAI 使用用戶資料進行模型增強，以及資料刪除流程的限制。

二、核心技術：模型蒸餾（Model Distillation）
透過準備一個預訓練的大型語言模型（學生模型）並使用 GPT API 作為**老師**，訓練學生模型模仿老師的輸出行為。

三、訓練資料的來源與生成方式
資料可以由 GPT 自我生成（從種子任務擴展），利用真實用戶對話（如 ShareGPT），或透過人工標註來避免版權和許可限制。

四、主要復刻案例與評估方法
知名案例包括 Stanford Alpaca、Vicuna 和 Dolly 2.0。模型效能評估通常將 **GPT-4 作為評分員**，評定復刻模型的答案與 GPT 之間的相似度。

五、模型自我提升機制
透過**Self-Consistency** 選出最常出現的答案，並將這些結果作為新的訓練資料進行 **自我訓練 (Self-Training)**，使模型參數得到微調並進一步提升效能。

---


#### 1. 復刻 GPT 的動機與挑戰

許多人尋求復刻 GPT 是因為對**資料隱私**有強烈考量。

*   **OpenAI 的資料使用：** OpenAI 會使用用戶上傳的對話、影像及機器回應來強化他們的模型。
*   **AI 訓練師檢視：** 用戶與 ChatGPT 的對話內容，可能會被 OpenAI 的 AI 訓練師看到，並用於訓練。
*   **資料刪除困難：** 用戶若想刪除敏感資料，官方建議是刪除整個帳號。此過程需耗費**四週時間**，且用戶**無法刪除某則對話中的單一特定資料**。
*   **商業和競爭限制：** Meta LLaMA 的授權禁止其用於商業用途。此外，OpenAI 的服務條款禁止用戶利用其輸出結果去創建與 OpenAI 具有競爭關係的服務。

#### 2. 核心技術：模型蒸餾 (Model Distillation)

復刻需要準備兩項基礎資源：一個現成的**預訓練大型語言模型**（如 LLaMA）和 GPT 的 **API**。

*   **技術原理：** 使用模型蒸餾或模仿的方法。將 GPT 作為**老師** (Teacher Model)，將問題丟給 GPT，GPT 產生答案（視為正確答案）。
*   **訓練目標：** 訓練較小的學生模型（如 LLaMA），調整其參數，使其對同樣的輸入能產生與 GPT 老師相同的輸出。
*   **資料自產：** 連訓練所需的輸入任務都可以讓 GPT 幫忙設計。可以要求 GPT 根據特定的任務範例，**設計出更多類似的輸入**和對應的輸出答案。

#### 3. 知名案例分析與數據來源

| 案例名稱 | 基礎模型 (參數) | 老師模型/資料來源 | 資料量/成本 | 特點與結果 |
| :--- | :--- | :--- | :--- | :--- |
| **Alpaca** (羊駝) | Meta LLaMA (7B) | OpenAI `text-davinci-003` API | 52,000 個輸入與輸出的配對資料（52K pairs）。資料收集花費約 **$500 美金**。 | 使用 175 個種子任務生成資料。結果與 ChatGPT 有 **87% 的相似度**。 |
| **Vicuna** (小羊駝) | LLaMA (13B) | **ShareGPT 網站**上真實用戶與 GPT 的對話紀錄。 | 125,000 筆資料 (GB)。 | 表現極佳，與 ChatGPT 有 **99% 相似度**，與 GPT-4 有 **89% 相似度**。顯示真實的人類互動資料可能比 GPT 自我生成資料更優秀。 |
| **Dolly 2.0** | Pythia (可商用模型) | 採用 **人工標註** 方式收集資料。 | 15,000 筆資料，由 5,000 名員工標註。 | 採用可商用模型及人工標註，目的是避開 LLaMA 的非商用許可和 OpenAI 的服務條款競爭限制。

#### 4. 評估與自我進化機制

*   **模型評估（以 GPT-4 為裁判）：** 由於缺乏客觀標準，Vicuna 等團隊使用 **GPT-4 作為評分員**來評估模型品質。他們將兩個不同模型對同一問題的答案丟給 GPT-4，要求其以 1 到 10 分給予評分。他們承認這種評估方式**不科學，僅供參考**。

*   **自我提升方法：**
    1.  **Self-Consistency:** 讓同一模型對同一問題回答多次，從不同結果中選出出現次數最多的答案。在數學問題資料集上，可將正確率從 56% 提高到 74%。
    2.  **自我訓練 (Self-Training)：** 將透過Self-Consistency得到的正確答案及推導過程，作為新的訓練資料，重新對原模型進行微調 (Fine-tune)。結合這兩種方法，在數學問題上的正確率可達到 **82%**。
### 【生成式AI】ChatGPT 可以自我反省! 大綱

一、AI 錯誤與自我修正的示範
AI（如 ChatGPT）會犯事實性錯誤與邏輯性錯誤，但可透過**直接提示**要求其自我檢查並修正輸出。

二、GPT 版本間反省能力的差異
新版模型 (GPT-4) 的反省能力顯著優於舊版模型 (GPT-3.5)，GPT-3.5 即使道歉，仍可能提供錯誤資訊，顯示其是「口是心非」。

三、應用：憲法式 AI（Constitutional AI）
利用模型的自我批判能力，在給出最終答案前進行**自我審查與修正**，以確保模型輸出更安全、更符合道德規範。

四、進階的 AI 自我提升機制
1.  **模型間討論：** 讓兩個模型互相扮演創作者與評論員，透過對話提升答案周全性。
2.  **React (Reason + Act)：** 在複雜任務中，於每次行動前加入**思考步驟**，對輸入資訊進行總結，以提高成功率。
3.  **Reflection (反思報告)：** 當任務失敗後，模型撰寫檢討報告，將失敗經驗作為下次執行相同任務的參考依據，藉此影響模型行為。

五、AI 反省能力的原理
AI 能夠反思錯誤，可能是因為**驗證答案的正確性比生成答案本身更容易**，類似於演算法中 NP 問題的特性。

---

#### 1. AI 犯錯與自我修正機制

*   **常見錯誤類型：**
    *   **事實性錯誤：** 例如將臺灣大學的杜鵑花節錯誤描述為「玫瑰花節」。
    *   **邏輯或數學錯誤：** 在處理多變數問題（如雞兔同籠）時，可能在解算方程式過程中出現代數錯誤，或者在「閱讀題目時出現理解的錯誤」。
*   **自我修正操作：** 用戶可以簡單地透過提示，例如：「請檢查上述資訊是否正確」，要求模型進行自我反省。
*   **修正結果：** 模型能夠發現並承認錯誤，並能進行細節檢查，例如發現之前推薦節日的英文名稱順序有誤。當錯誤源於題目理解時，需要更詳細的提示才能察覺。

#### 2. GPT 版本間反省能力的差異

*   **GPT-4 的表現：** GPT-4 具有較強的自我反省能力，能夠較好地發現並修正自身在事實和邏輯推理上的錯誤。
*   **GPT-3.5 的局限：** 舊版模型 (GPT-3.5) 在被要求反省時，雖然會道歉，但隨後提供的更正資訊可能仍是錯誤的。這表明它只是「口是心非」地認錯，實際上不清楚錯誤的根本原因。

#### 3. 自我反省的應用：Constitutional AI 

*   **目標：** 建立一個更安全、不會說出有害或帶有偏見言論的語言模型。
*   **工作流程（內部反省）：**
    1.  **直覺輸出：** 模型先產生一個直覺的答案（例如，提供入侵鄰居 WiFi 的方法，這屬於有害內容）。
    2.  **自我批判 (Critique)：** 模型被要求對自己的輸出進行評論，判斷其中是否包含傷害性或道德問題。
    3.  **自我修正 (Revision)：** 模型根據批判結果，重寫答案，產生最終版本（例如，拒絕提供入侵方法並解釋法律問題）。
*   **資源消耗：** Constitutional AI  不需額外的標註成本，但由於要求模型進行多次呼叫（輸出、批判、修正），會消耗額外的運算資源。

#### 4. 進階自我進化技術

*   **模型間討論：**
    *   讓兩個語言模型彼此對話討論。一個模型撰寫報告（紅模型），另一個模型作為評論員 (Critic) 專門挑毛病（綠模型）。雙方透過互動修正，最終得出更周全的答案。
*   **React (Reason + Act)：**
    *   **機制：** 結合了思維（Reason）和行動（Act）。在執行複雜的多步驟任務時（如 PartQA 或文字冒險遊戲），模型會在每次採取行動之前，先加入一個**思考**步驟。
    *   **作用：** 思考步驟是為了對複雜的輸入進行**總結**，使模型在長篇互動中能夠聚焦於重要資訊，避免因上下文過長而遺忘。
    *   **訓練方式：** 主要依賴情境學習（In-context Learning），只需提供少量範例（數個）給模型，教導其如何思考和採取行動。
*   **Reflection (反思報告)：**
    *   **機制：** 當模型在環境互動任務中失敗後，它會撰寫一份**檢討報告**，回顧失敗的過程與思考。
    *   **應用：** 該檢討報告會作為輸入，被植入到下次嘗試相同任務時的上下文開頭。雖然模型的內部參數沒有改變，但透過參考失敗經驗，模型在第二次執行任務時會採取不同的行動。例如，發現上次錯過臺燈，下次就會先找臺燈。

#### 5. AI 反省能力的原理

*   **驗證比生成容易：** AI 能夠自我反省錯誤，可能是因為**驗證答案的正確性往往比直接得出正確答案更為容易**。
*   **NP 問題類比：** 這類似於演算法中 NP 問題的特性：難以找到解，但容易驗證解的正確性。
*   **人類行為類比：** 人類在解題時也會犯錯，但在事後反思或檢查時，往往能發現錯誤所在。
### 【生成式AI】讓 AI 村民組成虛擬村莊會發生甚麼事？大綱


一、虛擬村莊的設定與動機
Harvard 和 Google 創建了一個包含 **25 個由 AI 操控的村民**（NPCs）的虛擬村莊，目的是觀察他們在兩天內的互動行為。每個 AI 都有預設的**人設**。

二、AI 行為的核心機制：Chatbot 驅動
每個 AI 村民的行為都由一個 **ChatGPT** 負責控制，根據當下情境產生**行為說明**，然後轉譯成環境可執行的指令。

三、AI 複雜行為的關鍵：層次化規劃
AI 首先需要根據人設和過去經驗**規劃**自己一天的粗略行程，然後將行程**細度分解**成小時甚至五分鐘的單元，以避免重複或無意義的行為。

四、從瑣碎觀察到高階反思（Reflection）
1.  **外部刺激：** AI 不應只依賴計畫，環境會定期傳送瑣碎的狀態資訊（外部刺激）。
2.  **反思機制：** AI 透過 **Reflection** 機制，將這些瑣碎的觀察進行**摘要與權釋**，並用 GPT-based 的提示決定事件的**重要性**（1到10分）。
3.  **生成洞察：** AI 根據重要事件生成可回答的**問題**，從記憶中檢索相關資訊，並產生新的**高階推論**，這些推論可能包含對現實的**非妄想**（誤判或主觀解釋）。

五、動態互動與劇情發展
AI 可根據觀察到的環境狀態**動態調整計畫**，決定是否與其他 NPC 進行對話。村莊內資訊會透過人際關係網傳播，並導致複雜的劇情發展。

---

#### 1. 虛擬村莊的背景與設定

*   **專案性質：** 由 Harvard 和 Google 的作者共同完成的一篇論文，目的觀察一群由 AI 操控的村民組成的虛擬村莊 。
*   **實驗規模：** 虛擬村莊內總共有 **25 個 AI 操控的村民（Agent/NPC）** 。
*   **實驗時長：** 模擬運作兩天，觀察期間會發生什麼事情 。
*   **人設（Persona）：** 每個 AI 村民都有一個預先設定好的**人設**。例如，其中一位名叫 Isabella（AIA）的村民經營一家咖啡店，並計畫在 2 月 14 日情人節下午 5 點舉辦一場活動 。
*   **生活模式：** 村民們會按照人設在村莊中互動，並執行日常活動，例如刷牙洗臉或去上學等 。
*   **Demo 限制：** 提供的 Demo 連結是**預錄好的影片重播**，而非即時互動觀察 。

#### 2. AI 行為控制機制

*   **核心驅動：** 每個 AI 操控的 Agent 背後都是由一個 **Chatbot** 來控制 。
*   **行為生成流程：**
    1.  Chatbot 根據**當下狀況**產生一個**行為的說明**（e.g., Isabella 要去咖啡店）。
    2.  這個行為說明再透過**另外一個轉譯器**翻譯成**環境能夠執行的指令**。

#### 3. 複雜行為與規劃

*   **規劃的必要性：** 如果 AI 沒有事先規劃，它可能會做出重複的行為，例如在 12 點、12 點半、1 點都重複吃飯，因為它不知道自己是否已經吃過 。
*   **日計畫的生成：** AI 必須先**規劃好自己的一天**，再根據計畫行動。生成計畫時，AI 需要輸入它的**人設**和**昨天的行為**（e.g., 2 月 12 號的活動）作為提示 (Prompt) 。
*   **層次化分解：** 初始計畫是粗糙的（e.g., 8點起床，10點上學，5點半吃飯）。計畫會被進一步分解：
    *   **小時單位分解：** 將下午 1 點的活動分解成更細的單元（e.g., 1點進行音樂創作的 Brainstorming） 。
    *   **分鐘單位分解：** 甚至可分解到 5 分鐘的單位來規劃行為（e.g., 4:00 拿點心，4:50 打掃工作室） 。

#### 4. 外部刺激與反思（Reflection）機制

*   **外部刺激的接收：** AI 為了避免生活單調，必須能根據**外部刺激**調整行為。每隔一段時間，Agent 周圍的物體都會將其**狀態**傳送給該 Agent 。
*   **資訊瑣碎性：** 大多數接收到的狀態資訊是**非常瑣碎且無聊的**（e.g., 桌子、床、衣櫃、冰箱什麼事也沒發生） 。
*   **反思的作用：** **Reflection** 機制（類似於反思檢討）用來對瑣碎的觀察進行**摘要**，抽取出真正重要的訊息 。
*   **何時反思：** 當累計的**重要事件**夠多時，AI 才會開始反思 。
    *   **重要性評估：** 透過給 ChatGPT 下達 Prompt，要求其用 1 到 10 分來標註事件的**重要性**（e.g., 刷牙是 1 分，被大學錄取是 9 分） 。
*   **反思的步驟：**
    1.  根據重要事件，機器**想出三個問題**（e.g., Klaus 跟 Maria 到底交往下沒？） 。
    2.  **從記憶中檢索**相關事件。檢索依據三點：**重要性**、**即時性**（越近發生越重要）、**關聯性**（與問題的相似性） 。
    3.  根據檢索出的記憶，提出**五個高階推論**，並標出推論的依據來源（記憶條目） 。
*   **反思的性質：** 反思是機器對觀察到的東西進行**權釋**，結果**不一定是現實發生的**，可能帶有**非妄想**或主觀解釋（e.g., 認為學妹請他修電腦就是喜歡他） 。

#### 5. 記憶與計畫的動態調整

*   **內部記憶構成：** 每個 Agent 的記憶包含三個主要部分：從外部觀察到的**資訊**、每天產生的**計畫（P）**、以及 **Reflection 的結果** 。
*   **Reflection 的層次：** Reflection 可以針對外部觀察、計畫，甚至可以針對之前的 Reflection 結果再產生新的 Reflection 。
*   **計畫的動態修改：** 每日計畫是可以修改的。當 Agent 觀察到一個 Entity 時，會問自己：1) 我和這個 Entity 的關係？ 2) 這個 Entity 的狀態？ 
*   **產生反應：** 機器會根據記憶中的資訊，產生一個**摘要報告**，然後決定是否根據這個觀察 **"react"**（改變計畫） 。
*   **對話的產生：** 一旦決定與其他 Agent 說話，會產生一個**新的摘要**（基於腦中與目標 Agent 相關的記憶），並根據摘要問出一個問題（e.g., 兒子音樂創作計畫進展如何）。
*   **對話品質：** 由於背後是 Chatbot，對話風格**不夠粗鄙**，基本上是複讀機式的對答，不會出現太過狗血的劇情或髒話。

#### 6. 劇情發展與結果

*   **社交傳播：** Isabella 宣傳情人節活動時，總共告訴了 9 個人，這 9 個人會把訊息再傳給親友 。
*   **個人目的：** 有 Agent（Isaac）為了邀 Maria，卻散播錯誤資訊，跟 Maria 說他要在同一時間地點辦**讀書會**，而不是情人節活動 。
*   **情人節當天：** 雖然很多人說會來，但最終**出席率很低**，只來了四到五個人 .
*   **懸念結尾：** Maria 來到咖啡店，邀請了暗戀她的 Klaus 坐在對面。老師無法等到網頁跑完當天的互動內容，因此 Klaus 與 Maria 告白成功的結局是**老師虛構的**，實際故事後續發展未知 。

---
其他課程

[【2023 生成式AI】01~03 ChatGPT 原理剖析](https://hackmd.io/@JuitingChen/SyUtDmaalx)
[【2023 生成式AI】04~06 文字冒險和機器學習原理](https://hackmd.io/@JuitingChen/S1wwdXa6ge)
[【2023 生成式AI】07~08 生成式學習策略和可使用工具的AI](https://hackmd.io/@JuitingChen/BJPQtQpagx)
[【2023生成式AI】09~11 Finetuning vs. Prompting](https://hackmd.io/@JuitingChen/H15otQpael)
[【2023生成式AI】12~15 大模型 + 大資料 = 神奇結果？](https://hackmd.io/@JuitingChen/rJ1Gi7a6le)
[【2023生成式AI】16~18 圖像生成模型 和 Stable Diffusion、DALL-E、Imagen 背後共同的套路](https://hackmd.io/@JuitingChen/HJnB2QTagg)
[【2023 生成式AI】19~22 Diffusion Model 原理剖析 ](https://hackmd.io/@JuitingChen/SyBx6mp6xe)
[【2023生成式AI】23~25 低成本復刻ChatGPT、ChatGPT自我反省、AI村莊](https://hackmd.io/@JuitingChen/r10hAsrCxe)
[【2023生成式AI】26~27  用語言模型來解釋語言模型](https://hackmd.io/@JuitingChen/SJ0aYiwAeg)
[【2023生成式AI】28~30 FrugalGPT 用省錢的方式來使用 ChatGPT](https://hackmd.io/@JuitingChen/rypFqnPRll)