# 【生成式AI導論 2024】第16講:可以加速所有語言模型生成速度的神奇外掛 — Speculative Decoding ## Speculative Decoding * Speculative字義是投機、猜測 * 透過小模型猜測+平行運算的方式加速 ## 運作原理 * AG的缺點就是要依序預測 * 因此如果有個預言家,這個預言家的預言速度很快,可以預測接下來的生成結果,就可以把原本的輸入跟預測結果同時去做生成,速度會變兩倍![image](https://hackmd.io/_uploads/BJngYO7-el.png) * 外人看到的結果,是使用一樣的時間,卻有更多的結果產生![image](https://hackmd.io/_uploads/Ski_Y_7Zge.png) * 但是預言家可能會出錯,但只要拿對的預測所產生出來的結果就好,就算部分有錯,速度還是會比較快。![image](https://hackmd.io/_uploads/B1hfqd7Wxl.png) * 即使預言家的預測全錯,時間也不會增加。(預言家本身速度快,可以不計) ## 如何挑選預言家 因此我們需要一個擔任預言家的角色,要求快,可以犯錯沒關係![image](https://hackmd.io/_uploads/SJBMs_mZlx.png) * 可以用NAG作為預言家 * 可以用壓縮模型作為預言家 * 不一定要語言模型,像是也[有人拿搜尋引擎當預言家](https://arxiv.org/abs/2304.04487),透過常見的關鍵字(詞)來做為預測 * 不一定只有第一個預言家,也可以有[多個預言家](https://arxiv.org/abs/2305.09781)同時工作