作者 gino0717 (gino0717)標題 [閒聊] 用deepseek-r1試作npc行為決策模擬時間 Sun Jan 26 02:46:17 2025
啊就
聽說這個這幾天出的玩意兒挺屌
趁著放假來玩玩看
我有在玩unity啊
我一直心底有個缺憾就是遊戲npc的行為決策都是一堆if else堆起來的東西
我更希望的是有個模型裡面已經有個小小的世界觀
transformer模型理論上是這樣的東西
但是真的能用的模型都太大了
塞到遊戲裡面實在是不太現實
我用ollama在筆電上當後端跑deepseek-r1 1.5b 、7b、8b模型
因為這三個模型是我能接受的容量夠小的模型
再大就太大了
顯卡是NVIDIA GeFore MX150 (2GB VRAM)
給定下列條件來模擬遊戲中npc用來做決策需要的參數:
prompt中提供npc的狀態:
1.飽食度
2.睡眠度
3.口渴程度
npc週遭的物體和座標
1.npc的位置
2.蘋果
3.門口
4.刀子
5.床
6.桌子
7.水
能夠進行的動作
1.移動
2.拾取
3.使用
然後我期望當飽食度低的時候,
npc會輸出:移動到刀子->拾取刀子->移動到蘋果>使用蘋果
當睡眠值低的時候
npc會輸出:移動到床->使用床
最後以json格式呈現
deepseek-r1 1.5b的模型會有合理的推論過程但是錯誤的結論
7b和8b的模型可以做出符合預期的動作順序
同樣容量(~5GB)的llama3 8b模型常會在結論中產生不存在的物體和座標或是動作
相比之下deepseek的答案可說是相當穩健
7b模型4.7GB 8b模型4.9GB
還是很大但是已經算相對小的了
但是有個問題
就是這個模型會先輸出一大堆他的思考的過程(碎碎唸)
然後這過程實在太久了
他會寫一大篇論文來分析你到底下那堆指令啥意思
然後會看他一直在那邊wait...我少考慮了什麼....wait....我少考慮了什麼....
你加了prompt他會花更多篇幅在那邊思考你寫啥意思
你就看他在那邊到底要分析到什麼時候 到底
我的提示詞大概長這樣:
you are a game's npc , decide the next 6 (or more) series action based on your
status and enviroment objects .
If the status is low(<50) then need to do some action to raise it,
your status : Saturation:100,awake:10,water:90.
The environment: npc's position(0,0), apple(20,5),knife(10,3),table(40,8),
bed(40,3),water(10,5) .
The actions you can do: walk,pick,use.
if npc's coordinate not match the object it must walk to there first.
the output should be in json formats so I can feed the results to program as:
[{"action":"someAction","coordinate": [(some x),(some y)]}]
我希望以後碎碎唸那段可能會是一個可以存下來的東西
不要每次更新狀態都重新碎碎唸一次
= =
南無阿彌陀佛
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.162.12 (臺灣)
※ 作者: gino0717 2025-01-26 02:46:17
※ 文章代碼(AID): #1dbJ5yWT (C_Chat)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1737830780.A.81D.html
※ 編輯: gino0717 (123.194.162.12 臺灣), 01/26/2025 02:48:00
※ 編輯: gino0717 (123.194.162.12 臺灣), 01/26/2025 02:50:58
推 ZMTL: 換個大VRAM顯卡看看能不能變快先?理論上這個思考過程才是他準確度的依據1F 01/26 02:56
推 driftcreator: 這塊去年有廠商放過Demo, 看起來很讚但是太吃算力然後你可以不要用Cot模型、減少思考過程啊
但Cot模型就是因為嚼兩次, 品質才比同尺寸的模型好3F 01/26 02:57
推 Mareeta: 算太久會不會出現龍叫2卡npc的事6F 01/26 03:34
推 guogu: 忘記在哪看過影片 有過程AI做出正確答案的機率會大幅提升7F 01/26 03:42
→ GGkaki: 這種東西不是chatGPT出現的時候就有人去用api做過了嗎8F 01/26 05:44
--