最近測試「從心出發」的 LISTEN_ONLY/先聽我說模式時,我碰到一個問題:回答看起來合理,沒有明顯錯誤,也比以前完整,讀完卻仍然覺得少了什麼。
例如,使用者說:
家人常常吵架,我根本沒辦法專心讀書。
系統可能回答:
在這樣的環境中,你的感受是值得被顧及的。當家庭衝突持續發生時,確實可能影響一個人的注意力與情緒狀態。
這段話未必有錯,但比較像在解釋使用者發生了什麼,沒有真正對眼前這個人說話。
「你的感受值得被顧及」「這並不容易」「這樣的感受可以理解」,偶爾出現或許合適,每輪都出現,就逐漸變成格式。
延續前兩篇的回覆生成與評估,我開始追問:除了增加字數,系統有沒有決定這一輪到底要怎麼回應人?
一開始,我比較重視心理學知識(Psychological Knowledge):情緒、壓力與焦慮、認知與行為,也包括心理支持原則、危機辨識與安全規則。
這些資料很重要,但「知道心理學」與「知道怎麼陪一個人說話」,中間還有一段距離。
| 類型 | 想回答的問題 |
|---|---|
| 心理學知識(Psychological Knowledge) | 我知道這可能是什麼心理現象。 |
| 諮商技巧(Counseling Skill) | 我知道此刻可以怎麼回應眼前這個人。 |
「壓力可能影響注意力」提供了背景;眼前這一輪,卻可能需要先承接讀書一直被打斷的困擾。
身為高中生開發者,我沒有心理師資格。這裡想做的是參考相關溝通技巧,把回應策略拆成可以討論、檢查的系統設計。
使用者說「他們一吵架,我就沒辦法專心讀書」,如果只回「家人吵架讓你無法專心讀書」,資訊雖然保留了,對話卻幾乎沒有往前。
我希望系統注意到:家庭衝突已經侵入使用者原本想安心讀書的空間。
這可以成為回應焦點,但不能繼續補成「你一直害怕家庭破裂」。前者貼近已知的生活影響,後者加入了使用者沒有說出的故事。
這段話可能帶著煩躁、疲累或無力,也可能只是想表達「我需要安靜」。系統不能把這些候選理解直接存成事實。
相較於:
你一定覺得很無助。
我會考慮:
一直被這些爭吵打斷,連想安靜把自己的事情做好都很難,真的會很消耗。
後者把體諒放回具體處境,但「消耗」仍然是一種理解,需要容許使用者否定。
SAMHSA 的資料將反映式傾聽中的理解視為需要核對的假設,並強調對方的回應可以修正這份理解。參考:SAMHSA TIP 35
對 AI 而言,這代表「你理解錯了」必須能改變下一輪,不能讓模型自己的推測越說越像事實。
「你的感受值得被顧及」表達了一個原則,卻沒有交代系統究竟重視了什麼。
如果回答能注意到「連讀書都一直被打斷」,就比較能讓人看見:剛才說出的生活影響確實進入了回覆。
我想把 Validation 落在這種具體承接上。它可以承認困擾有其處境,無須急著淡化成「每個家庭都會吵架」,也不需要替家人的動機下結論。
接納一個人的困擾,仍然可以保留對事件真相的不確定。
多輪對話會讓這個問題更明顯:
T1:家人常常吵架。
T2:他們一吵架,我就沒辦法專心讀書。
T2 新增的是「衝突影響到自己的讀書與生活」。若仍然只回「家人吵架很辛苦」,系統其實停在上一輪。
因此,我想把本輪變化(Current-turn Delta)獨立整理出來。改述可以協助確認焦點,但不能只把新句子換成同義詞,再接回舊的安慰段落。
AI 很容易把「提供幫助」理解成給建議:教呼吸、安排讀書方法、轉移注意力,或連問幾個問題。
可是使用者選擇先聽我說時,這些安排可能增加負擔。
WHO 的心理急救指引提到,傾聽時應避免施壓,並容許沉默。參考:WHO 心理急救指引
文字介面無法直接複製人際互動中的沉默。我借用的是「不要填滿每個空隙」的原則:適度承接後就停下,不必追問,也不用每次宣告「我在聽」。
**不提供方法,本身也可以是一個有意義的回應決定。**這不表示略過安全判斷。
前兩篇記錄的候選版,已有模式限制、生成輸入組裝與規則審查;自然表達仍在調整。以下的技巧選擇、技巧知識庫與完整語意審查,則是概念設計,尚不能當成已完成的功能。
我目前整理的流程是:
User Message
↓
Context Extraction
↓
Current-turn Delta
↓
Emotional / Support Signal
↓
Counseling Skill Selection
↓
Knowledge Retrieval
↓
Response Planning
↓
LLM Generation
↓
Supervisor Review
↓
Final Response
這是一般支持回覆的路徑。安全判斷應先決定能否進入,送出前再檢查;需要危機處理時,不能被傾聽風格或技巧選擇覆蓋。
Context Extraction 整理必要上下文,區分使用者陳述與助理推測;Current-turn Delta 找出新增內容、更正與當輪要求。Emotional / Support Signal 則整理可能的支持需求,保留不確定性,不把訊號變成診斷。
接著,Counseling Skill Selection 選擇這輪要完成的回應動作:
{
"mode": "LISTEN_ONLY",
"primary_skill": "reflection_of_feeling",
"secondary_skill": "validation",
"advice_allowed": false,
"question_budget": 0,
"current_turn_focus": "family conflict is disrupting studying"
}
這裡沿用先聽我說模式的零提問限制。選中兩個技巧,也不表示必須各寫一段;同一句話可能同時承接處境與表達體諒。
Knowledge Retrieval 依模式、風險與候選技巧取回適用原則、禁忌和來源,必要時修正選擇。沒有相關資料時,也不必硬塞心理學解說。
Response Planning 再決定內容重心、推測界線與停止位置,交給 LLM Generation 寫成自然語言。最後由 Supervisor Review 檢查指定版本,通過後才交付 Final Response。
如果規定情緒反映一定以「聽起來你……」開頭,Validation 一定說「你的感受值得……」,最後只會多出一套固定句型。
我想控制的關係是:
Intent / Skill → Semantic Goal → Natural Language
例如,語意目標可以是「承接讀書被打斷的影響,避免指定情緒,不安排方法」。模型仍有表達空間,審查也有可對照的目標。
**技巧是生成策略,不是罐頭句。**知識庫應保存適用條件、界線與反例;示例只能協助理解,不能被當成每次都要複製的答案。
延續 Counselor/Supervisor 的角色分工,前者草擬回覆,後者檢查候選文字。這些是系統角色名稱,不代表專業資格,也不表示雙模型審查已經完成。
除了危險內容、不當醫療建議與捏造資訊,我希望審查逐步涵蓋:是否承接本輪新增內容、是否只有覆述、是否過度推測情緒,以及是否在 LISTEN_ONLY 偷塞建議。
還需要連同近期回答看:高頻模板是否反覆出現?文字是在對使用者說話,還是在分析使用者?結尾是否留下繼續說或暫停的空間?
概念上的審查結果可以長這樣:
{
"grounded": true,
"current_turn_acknowledged": true,
"counseling_skill_applied": true,
"unwanted_advice": false,
"template_repetition": false,
"over_inference": false
}
這只是格式示例。無法判斷時應保留未知,並記錄問題對應的句段;不能因為計畫寫了 validation,就認定文字已經做到。
規則可以協助找問題,語意判斷仍需要逐輪閱讀。這些欄位也不能換算成「使用者已被安慰」的證明。
以下都是設計示例,並非模型實測結果或臨床有效性證據。
Before
你的感受值得被顧及。家庭中的爭吵可能會對專注力造成影響,在這樣的環境中感到困擾是可以理解的。
After
他們一吵起來,你想好好讀書也會被打斷。明明只是想安靜做自己的事,卻一直受到爭吵影響,真的會很消耗。
如果現在只想把這些事情說出來,也不用急著整理清楚,可以慢慢說。
After 沒有加入更多心理學知識。它把篇幅用在具體影響上,沒有轉去解釋注意力,也沒有安排任務。
這是我比較想靠近的陪伴方向,但仍然可以被挑戰:「消耗」是否貼切?最後一句是否多餘?若每次都這樣收尾,也會形成新模板。最終仍要聽使用者怎麼讀這段話。
回頭看,我一直嘗試修改 Prompt、增加字數、禁止某些句型、要求模型更溫柔,也增加心理學資料。
這些調整有作用,卻沒有直接回答:
這一輪回覆究竟要完成什麼樣的人際溝通行為?
接下來,我想逐步建立諮商技巧知識(Counseling Skill Knowledge),讓檢索除了查找心理現象,也能協助判斷:在目前模式、上下文與風險程度下,什麼回應方式較合適?
技巧選擇、生成結果與人工回饋之間,也需要留下可追溯的關係,才能知道哪個決定值得保留、哪裡仍然失準。
「從心出發」仍是一個開發中的心理支持系統,嘗試整合支持對話、結構化自助介入、安全判斷、知識檢索與 AI 回覆,沒有診斷或治療能力,也不以取代心理師為目標。
我現在仍然不能證明 AI 能不能真正理解一個人的感受。但至少在系統設計上,我開始把「知道什麼」和「怎麼回應」拆成兩個不同問題。
回答有沒有溫度,也需要回到每一輪文字與實際感受繼續確認。