在FreeBSD系統下使用llama-cpp運行飛槳開源大模型Ernie4.5 0.3B(失敗)

先上結論,截止到目前2025.7.25日,還不能用。也就是Ernie4.5模型無法在llama.cpp 和Ollama上進行推理,原因主要就llama是不支持Ernie4.5異構MoE架構。

不局限于FreeBSD系統,Windows也測試失敗,理論上Ubuntu下也是不行。

所做嘗試

安裝llama-cpp

首先pkg安裝llama-cpp

pkg install llama-cpp

也嘗試了編譯安裝

下載源代碼

git clone https://github.com/ggerganov/llama.cpp

進入llama.cpp目錄

編譯安裝

mkdir build
cd build
cmake ..
cmake --build . --config Release

?將編譯好的路徑加入PATH

export PATH=~/github/llama.cpp/build/bin:$PAT

這樣就可以執行llama.cpp了。

直接編譯,最后生成的可執行文件是main,執行起來是這樣:

main -m ~/work/model/chinesellama/ggml-model-f16.gguf  -p "Building a website can be done in 10 simple steps:\nStep 1:" -n 400 -e

下載模型

從這個網址下載:unsloth/ERNIE-4.5-0.3B-PT-GGUF at main

如果下載很慢,可以考慮從huggingface官網下載,當然需要科學上網。

下載完畢:

ls E*
ERNIE-4.5-0.3B-PT-F16.gguf	ERNIE-4.5-0.3B-PT-Q2_K.gguf

也可以下載普通的模型文件,然后用轉換程序,轉換為gguf格式模型

python convert.py ~/work/model/chinesellama/

運行

llama-cli -m ERNIE-4.5-0.3B-PT-Q2_K.gguf -p "hello"

如果編譯后的文件為main,那么執行:

main -m ERNIE-4.5-0.3B-PT-Q2_K.gguf -p "hello"

運行失敗。?

總結?

截止目前Ernie4.5還不能用llama推理。

說實話,這確實限制了Ernie4.5的普及。

調試

報錯Terminating due to uncaught exception 0x28323c45c340 of type std::runtime_error

main: chat template is available, enabling conversation mode (disable it with -no-cnv)
*** User-specified prompt will pre-start conversation, did you mean to set --system-prompt (-sys) instead?
[New LWP 112399 of process 29362]
[New LWP 112400 of process 29362]
[New LWP 112401 of process 29362]
[New LWP 112402 of process 29362]
0x0000000829dc1818 in _wait4 () from /lib/libc.so.7
#0 ?0x0000000829dc1818 in _wait4 () from /lib/libc.so.7
#1 ?0x0000000821b3993c in ?? () from /lib/libthr.so.3
#2 ?0x00000008231e6809 in ?? () from /usr/local/lib/libggml-base.so
#3 ?0x00000008281be199 in std::terminate() () from /lib/libcxxrt.so.1
#4 ?0x00000008281be674 in ?? () from /lib/libcxxrt.so.1
#5 ?0x00000008281be589 in __cxa_throw () from /lib/libcxxrt.so.1
#6 ?0x00000000002d8070 in ?? ()
#7 ?0x00000000002d8adc in ?? ()
#8 ?0x000000000025e8b8 in ?? ()
#9 ?0x0000000829d0dc3a in __libc_start1 () from /lib/libc.so.7
#10 0x000000000025e120 in ?? ()
[Inferior 1 (process 29362) detached]
Terminating due to uncaught exception 0x28323c45c340 of type std::runtime_error
終止陷阱(核心已轉儲)

大約是內存不足

后來在Windows下用llama.cpp,報錯:

print_info: file size   = 688.14 MiB (16.00 BPW)
llama_model_load: error loading model: error loading model architecture: unknown model architecture: 'ernie4_5'
llama_model_load_from_file_impl: failed to load model
common_init_from_params: failed to load model 'e:\360Downloads\ERNIE-4.5-0.3B-PT-F16.gguf'
main: error: unable to load model

證明確實無法用llama進行推理。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/90667.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/90667.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/90667.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

OpenCV圖像梯度、邊緣檢測、輪廓繪制、凸包檢測大合集

一、圖像梯度 在圖像處理中,「梯度(Gradient)」是一個非常基礎但又極其重要的概念。它是圖像邊緣檢測、特征提取、紋理分析等眾多任務的核心。梯度的本質是在空間上描述像素灰度值變化的快慢和方向。 但我們如何在圖像中計算梯度?…

GitHub 趨勢日報 (2025年07月25日)

📊 由 TrendForge 系統生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日報中的項目描述已自動翻譯為中文 📈 今日獲星趨勢圖 今日獲星趨勢圖1814Resume-Matcher985neko714Qwen3-Coder622OpenBB542BillionMail486hrms219hyper…

編程語言Java——核心技術篇(五)IO流:數據洪流中的航道設計

🌟 你好,我是 勵志成為糕手 ! 🌌 在代碼的宇宙中,我是那個追逐優雅與性能的星際旅人。 ? 每一行代碼都是我種下的星光,在邏輯的土壤里生長成璀璨的銀河; 🛠? 每一個算法都是我繪制…

基于FPGA的16QAM軟解調+卷積編碼Viterbi譯碼通信系統,包含幀同步,信道,誤碼統計,可設置SNR

目錄 1.引言 2.算法仿真效果 3.算法涉及理論知識概要 3.1 16QAM調制軟解調原理 3.2 幀同步 3.3 卷積編碼,維特比譯碼 4.Verilog程序接口 5.參考文獻 6.完整算法代碼文件獲得 1.引言 基于FPGA的16QAM軟解調卷積編碼Viterbi譯碼通信系統開發,包含幀同步,高斯…

Python數據分析基礎(二)

一、Numpy 常用函數分類概覽函數類別常用函數基本數學函數np.sum(x)、np.sqrt(x)、np.exp(x)、np.log(x)、np.sin(x)、np.abs(x)、np.power(a, b)、np.round(x, n) 等統計函數np.mean(x)、np.median(x)、np.std(x)、np.var(x)、np.min(x)、np.max(x)、np.percentile(x, q) 等比…

Colab中如何臨時使用udocker(以MinIO為例)

本文主要是想記錄一下自己在Colab中用udocker啟動一個MinIO的容器的過程。 1. 命令行配置環境 由于目前沒有用到GPU,所以我選擇的是CPU的環境。(內存12G)然后就可以在命令行里安裝udocker了,并配置minio的環境 # 由于minio需要做兩個端口映射&#xff0c…

rt-thread 5.2.1 基于at-start-f437開發過程記錄

基于rt-thread 5.2.1 bsp/at/at32f437-start進行開發,記錄詳細過程,包括中間遇到的各種坑。 at32f437-start原理圖 自己設計的電路板主要換了一塊小封裝的同系列芯片, 目標是移植opENer。 1. 開發環境 env長時間不用,有點忘了。這次新下載…

EMCCD相機與電可調變焦透鏡的同步控制系統設計與實現

EMCCD相機與電可調變焦透鏡的同步控制系統設計與實現 前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家,覺得好請收藏。點擊跳轉到網站。 摘要 本文詳細介紹了基于Python的EMCCD相機&#xff0…

前綴和-560.和為k的子數組-力扣(LeetCode)

一、題目解析1.子數組是數組中元素的連續非空序列2.nums[i]范圍為[-1000,1000],存在負數3.由于2的題目條件,該題不能用雙指針算法,不具備單調性 二、算法原理解法1:暴力解法->枚舉 O(N^2)固定一個值,向后枚舉數組和…

解決企業微信收集表沒有圖片、文件組件,不能收集圖片的問題

問題: 企業微信里面的收集表功能,有一個圖片收集的收集表,但是插入的組件沒有收集圖片的組件? 原因: 大概率是微盤未啟用 解決方法: 1、登陸企業微信管理后臺 企業微信 2、訪問微盤頁面,…

認識單片機

《認識單片機》課程內容 一、課程導入 在我們的日常生活中,有很多看似普通卻充滿智慧的小物件。比如家里的智能電飯煲,它能精準地控制煮飯的時間和溫度,讓米飯煮得香噴噴的;還有樓道里的聲控燈,當有人走過發出聲音時&a…

數據結構(2)順序表算法題

一、移除元素1、題目描述2、算法分析 思路1:查找val值對應的下標pos,執行刪除pos位置數據的操作。該方法時間復雜度為O(n^2),因此不建議使用。思路2:創建新數組(空間大小與原數組一致&#xff0…

汽車電子架構

本文試圖從Analog Devices官網中的汽車解決方案視角帶讀者構建起汽車電子的總體架構圖,為國內熱愛和從事汽車電子行業的伙伴們貢獻一份力量。 一 、汽車電子架構總覽 整個汽車電子包括四個部分:車身電子(Body Electronics)、座艙與…

pycharm 2025 專業版下載安裝教程【附安裝包】

安裝之前,請確保已經關閉所有安全軟件(如殺毒軟件、防火墻等)安裝包 👇鏈接:https://pan.xunlei.com/s/VOU-5_L1KOH5j3zDaaCh-Z28A1# 提取碼:6bjy下載 PyCharm2025專業版 安裝包 并 進行解壓運行 pycharm-2…

在 Java 世界里讓對象“旅行”:序列化與反序列化

Java 生態里關于 JSON 的序列化與反序列化(以下簡稱“序列化”)是一個久經考驗的話題,卻常因框架繁多、配置瑣碎而讓初學者望而卻步。本文將圍繞一段極簡的 JsonUtils 工具類展開,以 FastJSON 與 Jackson 兩大主流實現為例&#x…

High Speed SelectIO Wizard ip使用記錄

本次實驗的目的是通過VU9P開發板的6個TG接口,采用固定連接的方式,即X和X-維度互聯,其框圖如下所示:IP參數配置通過調用High Speed SelectIO Wizard來實現數據通路,High Speed SelectIO Wizard ip有24對數據通道&#x…

Execel文檔批量替換標簽實現方案

問題背景需求:俺現網班級作為維度,批量導出每個班級學員的數據,excel的個數在1k左右,每一張表的人數在90左右。導出總耗時在10小時左右。代碼編寫完成并導出現網數據后,發現導出的標題錯了。解決方案1.通過修改代碼&am…

SpringBoot配置多數據源多數據庫

Springboot支持配置多數據源。默認情況,在yml文件中只會配置一個數據庫。如果涉及到操作多個數據庫的情況,在同實例中(即同一個ip地址下的不同數據庫),可以采用數據庫名點數據庫表的方式,實現跨庫表的操作。…

Rocky9.4部署Zabbix7

一、配置安裝源 rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-7.0-5.el9.noarch.rpm ? yum clean all 二、安裝Zabbix server,Web前端,agent yum install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf z…

【Java】對象類型轉換(ClassCastException)異常:從底層原理到架構級防御,老司機的實戰經驗

在開發中,ClassCastException(類轉換異常)就像一顆隱藏的定時炸彈,常常在代碼運行到類型轉換邏輯時突然爆發。線上排查問題時,這類異常往往因為類型關系復雜而難以定位。多數開發者習慣于在轉換前加個instanceof判斷就…