iT邦幫忙

2025 iThome 鐵人賽

DAY 9
0
生成式 AI

「打造專屬小幫手:生成式 AI 的從零到一實戰」系列 第 9

讓小幫手記憶:基本上下文管理

  • 分享至 

  • xImage
  •  

到目前為止,我們做的小幫手大多是「一次性對話」,也就是說問一句,它就答一句,過去的訊息完全不記得。這樣雖然能用,但對話感覺就很「機器」,不像真的在聊天。那麼,怎麼讓 AI 變得更有「記憶力」呢?

最常見的方式就是上下文管理(Context Management)。我們只要在送給模型的時候,除了現在的問題,再把過去的對話一起傳進去,AI 就能「回想」之前說過的事。例如:

messages = [
{"role": "system", "content": "你是一個貼心小幫手"},
{"role": "user", "content": "嗨,我叫小明"},
{"role": "assistant", "content": "嗨小明,很高興認識你!"},
{"role": "user", "content": "記得我叫什麼嗎?"}
]

response = client.chat.completions.create(
model="gpt-4o-mini",
messages=messages
)

這樣 AI 就能回答「你叫小明」,因為我們把之前的對話歷史都帶進來。

不過要注意,模型不是「真的有腦袋」,它只是透過我們給的訊息來「假裝有記憶」。這叫做短期記憶。如果訊息太長超過 Token 限制,它就會「失憶」。

所以,真正的上下文管理常常要搭配資料庫或向量檢索(例如存歷史對話,必要時再丟給模型),才能做到比較長期的記憶。但今天先掌握這個基本的概念,就能讓你的 AI 小幫手更有「對話感」,不會每次都像初次見面。


上一篇
加入參數與控制(溫度、Top-p 等)
下一篇
串接外部資料來源(簡單範例)
系列文
「打造專屬小幫手:生成式 AI 的從零到一實戰」11
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言