| 作者:Mike Croucher,MathWorks 總部 &技術(shù)小哥,MathWorks中國
(下文翻譯自 MATLAB Central 博客系列 The MATLAB Blog,點(diǎn)擊文末“閱讀原文”可以直接跳轉(zhuǎn)至該原文。)
在 DeepSeek-R1(https://github.com/deepseek-ai/DeepSeek-R1) AI 模型橫空出世后,人們幾乎就立馬開始詢問如何在 MATLAB 中使用這些模型。上周末,MathWorks 的軟件測試工程師 Vasileios Papanastasiou 在 LinkedIn 上發(fā)了指南帖,今天上午我第一次在自己的機(jī)子上根據(jù)他的指導(dǎo)嘗試了下。
在本地運(yùn)行 deepseek-r1:1.5b
我將使用附加功能 “Large Language Models (LLMS) with MATLAB” 以及 ollama,在我的本地機(jī)子上運(yùn)行一個(gè)較小的 DeepSeek 模型,并在 MATLAB 中與之交互。按照 Vasileios 的指導(dǎo),我做的第一件事是:
下載并安裝 Ollama: https://ollama.com/download
我在 Windows 上進(jìn)行了此操作。安裝完成后,我打開操作系統(tǒng)的命令行并運(yùn)行了該命令:
ollama run deepseek-r1:1.5b
這將安裝一個(gè) 15 億參數(shù)的模型,雖然模型很小,但希望這意味著我不需要擔(dān)心計(jì)算資源的限制。以后我還可以嘗試更大的模型。
現(xiàn)在來看看 MATLAB。Vasileios 建議我們從 GitHub(https://github.com/matlab-deep-learning/llms-with-matlab) 獲取附加功能 “Large Language Models (LLMS) with MATLAB”,但我采取了不同的方法。我點(diǎn)擊了 MATLAB R2024b 的“環(huán)境”中的“附加功能”。
我在附加功能資源瀏覽器中搜索 “Large Language Models”,找到后點(diǎn)擊 “添加”。這樣就完成了下載和安裝。
安裝就這樣完成了。現(xiàn)在讓我們在 MATLAB 中開始使用它!
首先,創(chuàng)建一個(gè) ollamaChat 對(duì)象
chat = ollamaChat("deepseek-r1:1.5b")
終于,我們可以嘗試與 AI 對(duì)話
txt = generate(chat,"What is the speed of light?")
我覺得像這樣的 LLM 模型有趣的一點(diǎn)是,你可以反復(fù)問同一個(gè)問題,每次都會(huì)得到不同的答案,這反映了它們的隨機(jī)性。有時(shí)結(jié)果只是略有不同
txt = generate(chat,"What is the speed of light?")
而有時(shí)回復(fù)確實(shí)會(huì)非常冗長,包含很多“思考”的內(nèi)容。
txt = generate(chat,"What is the speed of light?")
哇太多字了!
我想這是許多人所說的 AI 冗余(https://en.wikipedia.org/wiki/AI_slop)的一個(gè)例子。不過,不管它還說了什么,這個(gè)模型似乎相當(dāng)確定光速是299,792,458米每秒,根據(jù)維基百科,這是正確的。這是 DeepSeek 模型的一個(gè)非常小的版本,但它仍然可以做一些有用的事情,而且是了解基于 LLM 的 AI 技術(shù)優(yōu)缺點(diǎn)的一種有趣且有意義的方式。
您也不妨試試看,然后告訴我們你的想法!
技術(shù)小哥本地測評(píng)
在本地部署 DeepSeek,并用 MATLAB 調(diào)用,是非常容易的,我并未遇到太多困難就成功了,全過程可以總結(jié)為以下步驟:
MATLAB 調(diào)用大語言模型的優(yōu)勢之一是,容易對(duì)大預(yù)言模型的返回結(jié)果進(jìn)行處理。
這里給出兩個(gè)玩法:
1. 利用字符處理能力,對(duì)大語言模型結(jié)果的關(guān)鍵信息進(jìn)行提取。這里我問 DeepSeek 光速是多少 m/s,并反復(fù)提問 10 次,對(duì)回答結(jié)果中的數(shù)字進(jìn)行提取,從而獲得更為可靠的結(jié)果,代碼如下:
chat = ollamaChat("deepseek-r1:32b"); raws = {}; for i=1:10 raws{i} = generate(chat,"光速是多少m/s"); end %對(duì) DeepSeek 詢問10次 processed=[]; for i=1:10 temp=char(raws{i}); [a,b] = regexp(temp,''); temp=temp(b:end); [a,b] = regexp(temp,'[0123456789,(?s)]{2,}'); temp=temp([a(1):b(1)]); temp=replace(temp,',',''); processed(i)=str2num(temp); end %對(duì)每次回答中的數(shù)字進(jìn)行提取 median(processed) %求取中位數(shù)2. 基于 Text Analytics Toolbox 工具箱的文字處理能力,對(duì) DeepSeek 的回答進(jìn)行進(jìn)一步分析,例如我讓 DeepSeek 寫一些新春祝福,然后對(duì)回答進(jìn)行詞云處理,獲得了這樣的結(jié)果。
-
matlab
+關(guān)注
關(guān)注
188文章
2990瀏覽量
232929 -
模型
+關(guān)注
關(guān)注
1文章
3471瀏覽量
49869 -
DeepSeek
+關(guān)注
關(guān)注
1文章
759瀏覽量
1134
原文標(biāo)題:2月代碼共享 | 如何運(yùn)行本地 DeepSeek 模型并在 MATLAB 中使用?
文章出處:【微信號(hào):MATLAB,微信公眾號(hào):MATLAB】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
在龍芯3a6000上部署DeepSeek 和 Gemma2大模型
了解DeepSeek-V3 和 DeepSeek-R1兩個(gè)大模型的不同定位和應(yīng)用選擇
添越智創(chuàng)基于 RK3588 開發(fā)板部署測試 DeepSeek 模型全攻略
鴻蒙原生應(yīng)用開發(fā)也可以使用DeepSeek了
RK3588開發(fā)板上部署DeepSeek-R1大模型的完整指南
聆思CSK6大模型語音開發(fā)板接入DeepSeek資料匯總(包含深度求索/火山引擎/硅基流動(dòng)華為昇騰滿血版)
HarmonyOS NEXT開發(fā)實(shí)戰(zhàn):DevEco Studio中DeepSeek的使用
如何在最新版本的Genesys中使用ADS模型?
如何在Matlab中建立四旋翼飛行模型
如何在Simulink中使用Matlab Function創(chuàng)建一個(gè)全局變量?
如何在STM32cube中使用最終模型?
如何在Saber中使用模塊
如何在MATLAB圖形用戶界面設(shè)計(jì)中使用ActiveX控件

如何在MATLAB中使用藍(lán)牙進(jìn)行無線通信

評(píng)論