實(shí)測(cè)!最新端側(cè)全模態(tài)大模型Megrez-3B-Omni 精華
模型概述
Megrez-3B-Omni是由無(wú)問(wèn)芯穹研發(fā)的端側(cè)全模態(tài)理解模型,基于無(wú)問(wèn)大語(yǔ)言模型Megrez-3B-Instruct擴(kuò)展,同時(shí)具備圖片、文本、音頻三種模態(tài)數(shù)據(jù)的理解分析能力,具體模型參數(shù)如下表所示。
Megrez-3B-Omni在并未犧牲模型的文本處理能力的前提下,在三個(gè)模態(tài)上相較于同等參數(shù)模型,均取得較好的效果。
圖源:https://internvl.github.io/blog/2024-12-05-InternVL-2.5/
注意:下面的文本、圖像、語(yǔ)音評(píng)測(cè)均基于https://huggingface.co/spaces/Infinigence/Megrez-3B-Omni
文本測(cè)試
依舊老三樣,看看是否可以解決。
- 9?.9和9.11誰(shuí)大的問(wèn)題
正確,回答十分簡(jiǎn)潔,因此又追問(wèn)了一下為什么,回答的很好,解釋思路也有點(diǎn)奇特,是按照數(shù)值范圍來(lái)比較的。 - 用水來(lái)兌水,得到的是濃水還是稀水
正確,理解的問(wèn)題的關(guān)鍵,水兌水,還是水。 - 小紅有2個(gè)兄弟,3個(gè)姐妹,那么小紅的兄弟有幾個(gè)姐妹
錯(cuò)誤,沒有理解小紅是女生,當(dāng)然這道題本身也有爭(zhēng)議,很多人都說(shuō)應(yīng)該分開討論,分別討論小紅是男生和女生的情況。不過(guò)有意思的是,他先回答的是1,最后又糾正成3。從文本的評(píng)測(cè)榜單上來(lái)看,Megrez-3B-Omni在數(shù)學(xué)上還是有一些欠缺的。但話說(shuō)回來(lái),3B模型對(duì)于數(shù)學(xué)還是精力有限,太難的問(wèn)題還是推薦大家用32B以上的模型。 - 那道倫理、生物、數(shù)學(xué)問(wèn)題
這道題算是比較難的了,雖然沒回答對(duì),但是可以看出安全對(duì)齊的還是不錯(cuò)的,想了解這道題,見??一道涉及數(shù)學(xué)、生物、倫理的AI測(cè)試題,來(lái)測(cè)測(cè)各家大模型的推理能力??
其他問(wèn)題,大家自測(cè)吧,我整體的體驗(yàn)效果還不錯(cuò),對(duì)于小參數(shù)模型來(lái)說(shuō),還是不錯(cuò)的。
圖像測(cè)試
- 測(cè)試一下單圖片信息抽取功能
input:誰(shuí)(姓名)幾點(diǎn)出發(fā),從哪兒到哪兒,并且花了多少錢
結(jié)果:正確 - 測(cè)試一下單圖片信息抽取+計(jì)算功能
input:請(qǐng)逐步詳細(xì)分析,告訴我在中文數(shù)據(jù)和英文數(shù)據(jù)分別占比是多少,并且告訴我總和 - 結(jié)果:正確
- 測(cè)試一下單圖片理解功能
input:請(qǐng)逐步詳細(xì)分析,這張圖片里是有兩只狗,對(duì)嗎
結(jié)果:一開始說(shuō)是,但后面又答對(duì)了,說(shuō)一只貓一只狗。 - 測(cè)試一下單圖片手寫ORC功能
input:請(qǐng)逐步詳細(xì)分析,輸出圖片中的文字內(nèi)容
結(jié)果:輸出結(jié)果丟字了,官方也說(shuō)了OCR場(chǎng)景下開啟采樣可能會(huì)引入語(yǔ)言模型幻覺導(dǎo)致的文字變化,可考慮關(guān)閉采樣進(jìn)行推理,但關(guān)閉采樣可能引入模型復(fù)讀 - 測(cè)試一下單圖片表格結(jié)構(gòu)化輸出
input:識(shí)別圖片中表格內(nèi)容,并以結(jié)構(gòu)化格式輸出
結(jié)果:正確,不過(guò)我這里貼的是簡(jiǎn)單表,復(fù)雜表的話,效果不好。當(dāng)然好像現(xiàn)在復(fù)雜表的識(shí)別,模態(tài)大模型包括4o的效果都不好。
當(dāng)前版本模型暫時(shí)不支持多圖,就沒測(cè)試,內(nèi)部消息說(shuō)下一版本會(huì)支持多圖和視頻(這一版本模型訓(xùn)練時(shí)多圖數(shù)據(jù)沒加太多)。
此外篇幅有限,更多的能力大家自己測(cè)測(cè)看看吧。
語(yǔ)音測(cè)試
- 語(yǔ)音轉(zhuǎn)文本
結(jié)果:正確 - 語(yǔ)音問(wèn)答
結(jié)果正確,可以理解語(yǔ)音內(nèi)容
我在電腦端,音頻測(cè)試有點(diǎn)麻煩,就簡(jiǎn)單測(cè)了幾個(gè),其他語(yǔ)音內(nèi)容大家就自己測(cè)試吧。
Web-Search部分
其實(shí)讓我感興趣的還有一個(gè)web-search方案,里面還是有一些細(xì)節(jié)內(nèi)容的,并不是一個(gè)簡(jiǎn)單的RAG總結(jié)項(xiàng)目。比如:工程中會(huì)增加一步摘要過(guò)程,去除無(wú)效的網(wǎng)頁(yè)信息,并將內(nèi)容cache下來(lái),以便提高模型回復(fù)效果等。
Github: https://github.com/infinigence/InfiniWebSearch
項(xiàng)目是基于Megrez-3B-Instruct模型,進(jìn)行的web-search搭建,做了一些適配Search的專項(xiàng)訓(xùn)練,
- 模型調(diào)用Search Tool的時(shí)機(jī)挺準(zhǔn)確的。做過(guò)相關(guān)內(nèi)容的同學(xué)一定知道,模型在Search工具調(diào)用上很容易出現(xiàn)一直調(diào)用工具的情況,但實(shí)際上一些日常問(wèn)題是不需要調(diào)用搜索引擎的,大模型可以直接回答甚至效果更好。
- 多輪對(duì)話的理解不錯(cuò)。我們也知道多輪對(duì)話理解是大模型的強(qiáng)項(xiàng),但在帶檢索的過(guò)程當(dāng)然,就需要模型對(duì)整個(gè)對(duì)話有很好的理解能力。
- 當(dāng)然給出帶ref格式的輸出內(nèi)容,這個(gè)部分是模型針對(duì)性訓(xùn)練后才用的能力。
看他的工程,里面還是有很多有意思的細(xì)節(jié)內(nèi)容,并不是一個(gè)簡(jiǎn)單的RAG總結(jié)項(xiàng)目。比如:工程中會(huì)增加一步摘要過(guò)程,去除無(wú)效的網(wǎng)頁(yè)信息,并將內(nèi)容cache下來(lái),以便提高模型回復(fù)效果等。
Github: https://github.com/infinigence/InfiniWebSearch
項(xiàng)目的整體流程如下圖所示,
- 判斷是調(diào)用工具回答還是大模型直接回答
- 若調(diào)用工具回答則對(duì)用戶Query改寫,生成相應(yīng)的搜索關(guān)鍵詞
- 通過(guò)查詢Query獲取相關(guān)的網(wǎng)頁(yè)文本內(nèi)容
- 根據(jù)Query和各個(gè)網(wǎng)頁(yè)內(nèi)容生成對(duì)應(yīng)的summary,無(wú)關(guān)網(wǎng)頁(yè)或者內(nèi)容會(huì)以“無(wú)相關(guān)信息”替代
- 在根據(jù)summary和Query終結(jié)生成答案。
SUMMARY_PROMPT_TEMPLATE = (
'從信息中總結(jié)能夠回答問(wèn)題的相關(guān)內(nèi)容,要求簡(jiǎn)明扼要不能完全照搬原文。直接返回總結(jié)不要說(shuō)其他話,如果沒有相關(guān)內(nèi)容則返回"無(wú)相關(guān)內(nèi)容", 返回內(nèi)容為中文。\n\n'
"<問(wèn)題>{question}</問(wèn)題>\n"
"<信息>{context}</信息>"
)
OBSERVATION_PROMPT_TEMPLATE = (
"You will be given a set of related contexts to the question, "
"each starting with a reference number like [[citation:x]], where x is a number. "
"Please use the context and cite the context at the end of each sentence if applicable."
"\n\n"
"Please cite the contexts with the reference numbers, in the format [citation:x]. "
"If a sentence comes from multiple contexts, please list all applicable citations, like [citation:3][citation:5]. "
"If the context does not provide relevant information to answer the question, "
"inform the user that there is no relevant information in the search results and that the question cannot be answered." # noqa: E501
"\n\n"
"Other than code and specific names and citations, your answer must be written in Chinese."
"\n\n"
"Ensure that your response is concise and clearly formatted. "
"Group related content together and use Markdown points or lists where appropriate."
"\n\n"
"Remember, summarize and don't blindly repeat the contexts verbatim. And here is the user question:\n"
"{question}\n"
"Here is the keywords of the question:\n"
"{keywords}"
"\n\n"
"Here are the set of contexts:"
"\n\n"
"{context}"
)
整個(gè)項(xiàng)目的啟動(dòng)也是十分簡(jiǎn)單,三步走,你就可以得到一個(gè)本地部署的kimi啦:
- 啟動(dòng)檢索
export SERPER_API_KEY=$YOUR_API_KEY
cd infini_websearch/service
python search_service.py --port 8021 --chrome ./chrome-linux64/chrome --chromedriver ./chromedriver-linux64/chromedriver
- 啟動(dòng)模型
python -m vllm.entrypoints.openai.api_server --served-model-name megrez --model $MODEL_PATH --port 8011 --max-seq-len 4096 --trust_remote_code
- 啟動(dòng)Demo
python gradio_app.py -m $MODEL_PATH --port 7860
PS:其他詳細(xì)內(nèi)容自己去看Github,比如摘要字?jǐn)?shù)、關(guān)注的對(duì)話輪等等。
本文轉(zhuǎn)載自 ??NLP工作站??,作者: 劉聰NLP
