認為 Python "會為你管理記憶體"的迷思,正是你的代理在運行4小時後OOM的原因


上個月並行運行了24個多代理,消耗的tokens是單一會話的10倍,卻沒有產生任何有用的輸出
真正的問題並不是tokens,而是沒有人在監控的記憶體
Python使用引用計數加上循環垃圾回收器。聽起來沒問題,直到你透過C擴展載入numpy陣列,這些擴展沒有正確遞減引用。那些物件永遠不會被回收,它們就那樣存在,逐漸增長,默默無聲
每處理100個tokens的上下文,你的長期運行代理就會進行一次tensor分配,可能不會釋放。將這個乘以24個並行會話,你每天就會漏掉約400MB的記憶體
> 只要增加更多RAM
是的,這需要每月3萬美元的計算費用,來彌補tracemalloc在10分鐘內就能捕捉到的問題
查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 留言
  • 轉發
  • 分享
留言
0/400
暫無留言