文心4.5開源模型部署實踐

文心4.5開源模型部署實踐

使用fastdeploy本地部署

執行命令:

python -m fastdeploy.entrypoints.openai.api_server \--model baidu/ERNIE-4.5-21B-A3B-Paddle \--port 8180 \--metrics-port 8181 \--engine-worker-queue-port 8182 \--max-model-len 32768 \--max-num-seqs 32

解釋一下部署命令

該命令用于通過 FastDeploy 框架部署百度 ERNIE-4.5 大模型服務,并兼容 OpenAI API 協議。以下是參數詳解:

1. ?核心模塊與模型?

  • fastdeploy.entrypoints.openai.api_server:FastDeploy 提供的服務入口模塊,用于啟動兼容 OpenAI API 的 HTTP 服務?12。
  • --model baidu/ERNIE-4.5-21B-A3B-Paddle:指定模型路徑,此處為百度 ERNIE-4.5-21B 的 PaddlePaddle 格式模型,支持 210 億參數規模?23。

2. ?端口配置?

  • --port 8180:主服務監聽端口,用于處理 API 請求(如文本生成、對話等)?14。
  • --metrics-port 8181:監控指標端口,提供 Prometheus 格式的模型性能數據(如吞吐量、延遲)?15。
  • --engine-worker-queue-port 8182:工作隊列通信端口,協調多個推理引擎實例的任務分配?15。

3. ?性能與資源控制?

  • --max-model-len 32768:限制模型單次處理的上下文最大長度(32K tokens),避免內存溢出?14。
  • --max-num-seqs 32:設置批量處理的最大序列數,平衡并發性能與顯存占用?15。

4. ?技術背景?

  • ?FastDeploy?:百度推出的高效推理框架,支持多硬件后端(如 GPU、NPU),優化了 PaddlePaddle 模型的部署效率?23。
  • ?ERNIE-4.5?:百度最新大語言模型,在代碼生成、邏輯推理等任務上表現優異,需通過此類服務化部署提供 API 調用能力?23。

5. ?典型應用場景?

  • 企業級 AI 中臺:通過標準化 OpenAI API 協議集成到現有系統?16。
  • 高并發推理:利用多端口設計實現負載均衡與監控?15。
  • 長文本處理:32K 上下文窗口適合文檔摘要、代碼分析等任務?34。

最近在實際工程中,發現32K上下文窗口實在太小了。怎么也要64K才好工作。

使用fastdeploy在星河社區部署

進入部署頁面:飛槳AI Studio星河社區-人工智能學習與實訓社區

點擊:新建部署

部署內部模型

在熱門模型庫里,選FastDeploy推理框架,然后選文心4.5模型即可。

比如這里選了21B模型。

部署完畢,點“詳情”,會提供api調用的測試代碼,直接在python里調用即可。

這個模型來自:ERNIE-4.5-21B-A3B-Paddle_文心大模型_大語言模型_文本生成-飛槳AI Studio星河社區

我在部署了21B模型后,使用Auto-Coder工具構建一個項目進行了測試,這個21B模型還是挺厲害的,正好處于幾乎符合Auto-Coder工具要求的那一檔,也就是略低于DeepSeek-v3模型,但是勉強能用。

但是由于只能提供32k的上下文,這個限制較大,導致無法在Auto-Coder中真實的使用。

部署外部模型(其實是用ollam部署)

選擇:外部部署,把部署鏈接cp過去

先嘗試了部署最大的模型:baidu/ERNIE-4.5-300B-A47B-PT · HF Mirror

部署失敗

再嘗試部署這個:

https://huggingface.cn/baidu/ERNIE-4.5-300B-A47B-W4A8C8-TP4-Paddle

還是失敗。證明300B的模型在星河是無法部署成功的。

也就是只有21B和28B等較小的模型才能部署成功。

星河官方已經設好了21B模型的部署,直接點一下就可以了。這里我們再從外部huggingface引入部署實踐一下:?

使用這個模型

https://huggingface.co/baidu/ERNIE-4.5-21B-A3B-Base-Paddle

失敗,再用這個試試

https://huggingface.co/baidu/ERNIE-4.5-21B-A3B-Base-PT

還是失敗?

測試了半天,才發現這行小字:

說明:平臺暫僅支持GGUF格式且不大于70B的公開模型部署,請遵守平臺規范(禁止涉黃、暴力等違規信息)

所以只要大于70B,且不是GGUF格式的,都不能部署。新發布的文心模型,還都沒有GGUF格式,所以都還不行。

有空再使用GGUF格式模型試試

在星河社區,看模型配置

{"architectures": ["Ernie4_5_MoeForCausalLM"],"bos_token_id": 1,"eos_token_id": 2,"hidden_act": "silu","hidden_size": 2560,"intermediate_size": 12288,"max_position_embeddings": 131072,"model_type": "ernie4_5_moe","num_attention_heads": 20,"num_key_value_heads": 4,"num_hidden_layers": 28,"pad_token_id": 0,"rms_norm_eps": 1e-05,"use_cache": false,"vocab_size": 103424,"rope_theta": 500000,"use_rmsnorm": true,"tie_word_embeddings": true,"use_bias": false,"moe_num_experts": 64,"moe_num_shared_experts": 2,"moe_layer_start_index": 1,"moe_intermediate_size": 1536,"moe_capacity": [64,64,64],"moe_gate": "topk","moe_k": 6,"moe_layer_interval": 1,"moe_use_aux_free": true,"dtype": "bfloat16","num_nextn_predict_layers": 1,"multi_token_pred_lambda": 0.3
}

這證明它是支持128K長文本的,那為什么使用中最大是32K呢?出現了這個報錯:

  File "/home/skywalk/minipy312/lib/python3.12/site-packages/openai/_base_client.py", line 1037, in requestraise self._make_status_error_from_response(err.response) from None
openai.BadRequestError: Error code: 400 - {'object': 'error', 'message': 'Input text is too long, input_ids_len (32767) + min_tokens(1) >= max_model_len(32768)', 'code': 400}
╭────────────────────────────────────────────────── 🔥 System Error ───────────────────────────────────────────────────╮
│ FATAL ERROR:                                                                                                         │
│ Error code: 400 - {'object': 'error', 'message': 'Input text is too long, input_ids_len (32767) + min_tokens(1) >=   │
│ max_model_len(32768)', 'code': 400}                                                                                  │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
──────────────────────────────────────────────── Agentic Edit Finished ─────────────────────────────────────────────────
An error occurred: BadRequestError - Error code: 400 - {'object': 'error', 'message': 'Input text is too long, input_ids_len (32767) + min_tokens(1) >= max_model_len(32768)', 'code': 400}

不知道是模型設置了32K的上下文限制,還是Auto-Coder的拆分出了問題。

找到了,默認設置是51200

/conf conversation_prune_safe_zone_tokens:51200

把它設置為

/conf conversation_prune_safe_zone_tokens:32767試試

測試glm4試試

https://hf-mirror.com/unsloth/GLM-4-32B-0414-GGUF
https://huggingface.co/unsloth/GLM-4-32B-0414-GGUF

部署成功!?

不過在Auto-Coder里面一直刷,有些問題

coding@auto-coder.chat:~$ 繼續
Successfully set configuration: event_file =
/home/skywalk/work/autocoder/.auto-coder/events/05ee5870-bcca-4f8f-b6a2-a10adb1fca8f_20250702-114604.jsonl
─────────────────────────────────────────── Starting Agentic Edit: autocoder ───────────────────────────────────────────
╭───────────────────────────────────────────────────── Objective ──────────────────────────────────────────────────────╮
│ User Query:                                                                                                          │
│ 繼續                                                                                                                 │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Conversation ID: 8c63e814-a349-414c-92e6-7be661ed09d3
當前會話總 tokens: 34624
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 34652
當前會話總 tokens: 34720
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 34749
當前會話總 tokens: 34817
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 34846
當前會話總 tokens: 34914
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 34943
當前會話總 tokens: 35011
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35040
當前會話總 tokens: 35108
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35137
當前會話總 tokens: 35205
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35234
當前會話總 tokens: 35302
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35331
當前會話總 tokens: 35399
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35428
當前會話總 tokens: 35496
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35525
當前會話總 tokens: 35593
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG當前會話總 tokens: 35622
當前會話總 tokens: 35690

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

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

相關文章

Python迭代器、生成器、閉包和裝飾器(三器一包)

return、continue、break區別: return只能用在函數里面,表示從函數中返回,函數體內的后續任何代碼都不執行continue只是跳出當前循環,進入下一循環break只是跳出全部循環,如果循環后面還有代碼,會進行執行…

【Java】Maven

一.Maven簡介 Maven的產生主要是為了解決Java項目中的兩個問題: 1.依賴管理: 傳統 Java 項目在引入第三方庫時,需要手動下載 JAR 包并維護復雜的依賴關系。Maven 提供了統一的依賴管理機制,通過簡單的配置即可自動從倉庫下載并引…

人臉活體識別3:C/C++實現人臉眨眼 張嘴 點頭 搖頭識別(可實時檢測)

人臉活體識別3:C/C實現人臉眨眼 張嘴 點頭 搖頭識別(可實時檢測) 目錄 人臉活體識別3:C/C實現人臉眨眼 張嘴 點頭 搖頭識別(可實時檢測) 1. 前言 2.人臉活體識別方法 (1)基于人臉動作的檢測?? (2)?…

【ABAP】 從無到有 新建一個Webdynpro程序

、新建WDA 可從SE80在web dynpro 組件下 創建 并按例以下操作 2、插入窗口 3、相關功能 3-1、展示消息 DATA:lo_api_controller TYPE REF TO if_wd_controller,lo_message_handler TYPE REF TO if_wd_message_manager.lo_api_controller ? wd_this->wd_get_api( ).lo_mess…

ALV常用設置(更新中一)

之前設置了checkbox,但是觸發不了單擊事件,且alv自帶的復選,鼠標移動單擊別處就會自動取消。 **增加多選框到fieldcat,**這一點很重要,然后設置 IF gs_fcat-fieldname sel.gs_fcat-checkbox X. gs_fcat-edit X. …

NumPy 或 PyTorch/TensorFlow 中的張量理解

(2, 2, 3) 形狀的 3D 數組(或張量)的結構。 個人理解: 2個2維數組(張量),2維數組(張量)里面有2個1維向量(張量),1維向量(張量&#x…

Linux環境下使用 C++ 與 OpenCV 實現 ONNX 分類模型推理

實驗環境:Ubuntu 20.0 推理模型:ONNX分類模型 1. 安裝依賴項 首先是需要安裝依賴庫,如g,cmake等,如果已經安裝的話可以忽略 sudo apt install -y g sudo apt install -y cmake sudo apt install -y make sudo apt i…

AJAX 安裝使用教程

一、AJAX 簡介 AJAX(Asynchronous JavaScript and XML)是一種在無需重新加載整個網頁的情況下,能夠與服務器交換數據并更新部分網頁內容的技術。它不是一種新語言,而是使用現有的標準組合:JavaScript XMLHttpRequest…

【牛客算法】牛客網編程題解:小紅拼圖

一、題目介紹 1.1. 題目鏈接 :小紅拼圖 https://www.nowcoder.com/questionTerminal/08b54686f0d14bd784d9d148c68a268a 1.2 題目介紹 小紅正在玩一個拼圖游戲,她有一些完全相同的拼圖組件: 小紅準備用這些組件來拼成一些圖案。這些組件可…

買賣股票的最佳時機--js 算法

一、買賣股票的最佳時機 給定一個數組 prices ,它的第 i 個元素 prices[i] 表示一支給定股票第 i 天的價格。你只能選擇 某一天 買入這只股票,并選擇在 未來的某一個不同的日子 賣出該股票。設計一個算法來計算你所能獲取的最大利潤。返回你可以從這筆交易中獲取的最大利潤。…

C#基礎(WndProc)

WndProc 是操作系統與你的程序“對話”的通道??。當用戶點擊鼠標、按下鍵盤,或系統事件(如窗口移動)發生時,Windows 會將這些事件打包成“消息”,發送給你的窗口,而 WndProc 就是接收和處理這些消息的函數…

記錄一個 Linux中腳本無法執行的問題

問題描述: 在本地的window系統傳的云服務器上一個.sh結尾的安裝Java環境的腳本 上傳到云服務器后,使用命令賦予執行權限 chmod x 文件名然后看一下這個腳本變綠了就可以了 然后開始嘗試執行 ./腳本名 然后就報錯了 然后開始排查問題 1.檢查并修復 She…

Iceberg在圖靈落地應用

導讀 百度MEG上一代大數據產品存在平臺分散、易用性差等問題,導致開發效率低下、學習成本高,業務需求響應遲緩。為了解決這些問題,百度MEG內部開發了圖靈3.0生態系統,包括Turing Data Engine(TDE)計算&存儲引擎、Turing Data…

FPGA設計的用戶約束

FPGA設計的用戶約束 文章目錄 FPGA設計的用戶約束FPGA設計的用戶約束綜合約束管腳約束位置約束時序約束小總結 FPGA設計的用戶約束 至此,HDL到門級網表的轉化已經完成,對于編譯器來說,下一步的任務就是要將門級網表轉換并映射到具體的FPGA硬…

Spring 生態創新應用:微服務架構設計與前沿技術融合實踐

在數字化轉型的深水區,企業級應用正面臨從 “單體架構” 向 “分布式智能架構” 的根本性躍遷。Spring 生態以其二十年技術沉淀形成的生態壁壘,已成為支撐這場變革的核心基礎設施。從 2002 年 Rod Johnson 發布《Expert One-on-One J2EE Design and Deve…

車牌識別與標注:基于百度OCR與OpenCV的實現(一)

車牌識別與標注:基于百度OCR與OpenCV的實現 在計算機視覺領域,車牌識別是一項極具實用價值的技術,廣泛應用于交通監控、智能停車場管理等領域。本文將介紹如何在macOS系統下,利用百度OCR API進行車牌識別,并結合OpenC…

【系統分析師】2021年真題:論文及解題思路

文章目錄 試題一:論面向對象的信息系統分析方法試題二:論靜態測試方法及其應用試題三:論富互聯網應用的客戶端開發技術試題四:論DevSecOps技術及其應用 試題一:論面向對象的信息系統分析方法 信息系統分析是信息系統生…

OFA-PT:統一多模態預訓練模型的Prompt微調

摘要 Prompt微調已成為模型微調的新范式,并在自然語言預訓練甚至視覺預訓練中取得了成功。參數高效的Prompt微調方法通過優化soft embedding并保持預訓練模型凍結,在計算成本低和幾乎無性能損失方面展現出優勢。在本研究中,我們探索了Prompt…

【硬核數學】2.5 “價值標尺”-損失函數:信息論如何設計深度學習的損失函數《從零構建機器學習、深度學習到LLM的數學認知》

歡迎來到本系列硬核數學之旅的第十篇,也是我們對經典數學領域進行深度學習“升級”的最后一站。我們已經擁有了強大的模型架構(基于張量)、高效的學習引擎(反向傳播)和智能的優化策略(Adam等)。…

雷卯針對靈眸科技EASY EAI nano RV1126 開發板防雷防靜電方案

一、應用場景 1. 人臉檢測 2. 人臉識別 3. 安全帽檢測 4. 人員檢測 5. OCR文字識別 6. 人頭檢測 7. 表情神態識別 8. 人體骨骼點識別 9. 火焰檢測 10. 人臉姿態估計 11. 人手檢測 12. 車輛檢測 13. 二維碼識別 二、 功能概述 1 CPU 四核ARM Cortex-A71.5GHz 2 …