
什么是GPT-4?完整指南
最接近 GPTs 能力定位是智譜清言的智能體,普通用戶無代碼方式創建,可以上傳知識庫,調用模型繪畫、聯網和代碼能力,同時也支持具備開發能力的用戶接入自定義 API,完成度較高,有專門的智能體用于創建過程答疑,也可以根據需求描述一鍵生成智能體。
文心一言的插件其實更接近 ChatGPT 前期的插件功能,因為也是一種在基礎 Chat 上的能力擴展,所以將其放在類 GPTs 能力部分。上線自定義插件的門檻較高,需要先實名申請開發者權限[1],部署插件中的功能服務,然后定義 ai-plugin.json(元信息描述文件)和 openapi.yaml(API 描述文件),可選的 example.yaml(調用示例,提升插件調用正確率)、msg_content.yaml(插件動作消息注冊文件)、uj.json(插件的 UI 組件信息)5 種文件,再按照材料審核模板,并與官方人員進行企微溝通后[2],然后才能提交上線。
其他四家暫時未在客戶端產品上集成類 GPTs 能力
需要注意的是,OpenAI 官方已經計劃于 2024 年 4 月 9 日徹底停止 ChatGPT 插件測試版[3]。(2024 年 3 月 19 日將禁止使用插件創建新對話。在 2024 年 4 月 9 日之前,用戶還能夠繼續使用現有的插件對話),所以后面 ChatGPT 不再具備插件功能,因為官方認為 GPTs 已經覆蓋插件的能力了。
OpenAI 有自己的野心,力求減少對外部第三方服務的依賴。早期的插件測試版(plugin beta)充當了第三方平臺與 ChatGPT 之間的橋梁,但某些插件甚至需要用戶跳轉到外部平臺以完成體驗。相比之下,GPTs 完全在 GPT 的生態系統內構建智能體,使得 OpenAI 能夠更有效地控制和塑造其自有的技術生態。
不知道阿里和百度后續是否會跟隨調整相應功能,但當前官方文檔還沒看到相應說明。
內置插件
靈積模型服務當前內置支持 5 種插件,插件 API 使用需申請[4]并通過后才可使用。
自定義插件
對開發者來說,自定義插件才是剛需首先需要將包含自定義插件功能的 HTTP 服務部署好,同時將 HTTP 服務的功能匯總成 ai-plugin.json(元信息描述文件)和 openapi.yaml(API 描述文件),然后必須通過郵件?dashscope@alibabacloud.com?方式提交自定義插件,申請通過才能正常使用,描述文件的要求和規范可參考插件接入指引[5]。
ai-plugin.json 描述了插件的基本信息,下面是一個管理待辦事項的插件示例:
{
"schema_version": "v1",
"name_for_human": "待辦事項插件",
"name_for_model": "todo",
"description_for_human": "用于管理待辦事項列表的插件。您可以添加、刪除和查看您的待辦事項。",
"description_for_model": "用于管理待辦事項列表的插件。您可以添加、刪除和查看您的待辦事項。",
"auth": {
"type": "none"
},
"api": {
"type": "openapi",
},
"logo_url": "http://localhost:3333/logo.png",
"contact_email": "support@example.com"
}
內置插件
千帆大模型平臺同樣提供 5 種內置插件,無需申請,可以直接在進行插件編排[6]時引入,然后發布插件應用[7],即可通過 API 調用。
自定義插件
需要將包含自定義插件功能的域名服務部署好,同時配置好 ai-plugin.json(元信息描述文件)和 openapi.yaml(API 描述文件),描述文件的規范可參考插件開發者文檔[8],然后在進行插件編排時選擇自定義插件,根據下面流程[9]進行驗證,安裝插件即可,最后通過插件應用發布 API 進行調用。
下面是百度規范中 ai-plugin.json 定義示例:
{
"schema_version": "v1",
"name_for_human": "長文本理解工具",
"name_for_model": "LongtextSummary",
"description": "基于PDF/Doc格式文檔(不支持掃描件),可檢索知識點、對文檔進行摘要等,支持10MB以內文件",
"auth": {
"type": "none"
},
"api": {
"type": "openapi",
"url": "https://example.com/openapi.yaml"
},
"logo_url": "https://example.com/example-icon.png",
"contact_email": "example@baidu.com",
"legal_info_url": "https://example.com/legal"
}
其他四家暫時的 API 能力暫未支持插件調用。
這里需要統一說下插件規范,基本都是 ai-plugin.json、openapi.yaml 兩個文件,最初的定義來自 OpenAI,大家可以前往這里[10]自行查閱完整的字段說明,國內各廠商對字段有修改或者定義不同,但實質意義是一致的。還有插件標準不統一,增加額外工作量就十分惱火,比如我之前可以將為 OpenAI 開發的插件直接導入 Semantic Kernel (大模型時代軟件開發:吳恩達提到的Semantic Kernel是什么?)和 LangChain (從零開始學LangChain)使用,但是想直接導入國內平臺使用就需要調整文件中的定義字段。
通過 Assistants API 可以構建一個 Assistant,該 Assistant 可以遵從指令,使用大模型和工具調用來響應用戶的查詢, 這里需要明確一點 Assistants API 和 GPTs 能力的區別,來自?OpenAI 文檔[11]。
特性 | GPTs (ChatGPT) | Assistants (API) |
---|---|---|
創建過程 | 無需編碼,操作簡單 | 需要編碼以便集成 |
運行環境 | 位于 ChatGPT 內部,操作環境受限 | 可以集成到任何產品或服務中,環境靈活 |
定價 | ChatGPT Plus/企業計劃中包含 | 根據使用不同 Assistant 特性計費 |
用戶界面 | 與 ChatGPT 內置的用戶界面 | 為程序化使用設計;可以使用游樂場進行可視化 |
共享性 | 內置與他人共享 GPT 的能力 | 無內置共享功能 |
托管 | GPTs 由 OpenAI 托管 | OpenAI 不提供托管服務 |
工具 | 內置工具,如:瀏覽、DALLE、代碼解釋器、檢索、函數調用 | 內置工具,如:代碼解釋器、檢索和自定義操作 |
再說下函數調用功能(當調用函數時, API 將在運行過程中暫停執行,提供的函數調用結果返回時再繼續運行), 既可以通過 Chat Completions API 直接調用,也可以通過 Assistants API 方式調用,作用效果相似。OpenAI 的 assitant API 當前只包含三種工具,不包含搜索引擎工具,但是 MiniMax 包含,所以我把完整能力分為四種工具支持。
阿里沒有 Assistants API 的概念,但是插件起到相似作用,代碼解釋器能力可以由內置 Python 代碼解釋器插件代替,函數調用、知識庫檢索、搜索引擎功能均需要開發者通過插件的方式[12]自行實現,初次之外插件也具備執行預訂酒店任務,獲取實時股票、價格等實時信息能力。
百度同樣沒有 Assistants API 的概念,對應的也是由插件來支持這部分能力,內置的知識庫插件和百度搜索、網頁解析插件解決了知識庫庫檢索和搜索引擎能力接入,代碼解釋器可以通過定義插件[13]來實現,同時 Chat 接口支持函數調用功能。
沒條件看 OpenAI 文檔的朋友,這里強烈推薦閱讀 MiniMax 的?Assistans API 文檔[14]?,應該是國內這些大模型廠商中寫的最清晰的,而且還比 OpenAI 多支持了 Web Search(網絡搜索)工具,很不錯。
智譜的文檔也沒有 Assistants API 的概念,但是支持以 Chat Completions API 接口的形式進行函數調用[15]和知識庫檢索[16]、網絡搜索[17],暫不支持代碼解釋器功能,但是可以借助函數調用功能自定義實現。
MoonShot 當前的API 能力[18]還十分簡陋,只有一個文件內容識別的接口接近知識庫索引,其他能力均不支持,而且也無法通過間接方式實現,這也與他家聚焦長文本,long context 有關。
百川智能的 API 能力[19] 當前只支持網絡搜索和知識庫檢索,代碼解釋器和函數調用能力還不具備,也無法通過間接方式集成。
模型微調是指通過微調工具,加入企業獨有的場景數據,對平臺的基礎模型進行微調,可以幫助用戶快速定制出更符合業務場景需求的專屬大模型,它的優勢在于對基礎模型只需進行少量調整,就可以滿足特定的需求,相比訓練新模型高效且低成本。
什么場景下適用微調
可以先嘗試調整提示詞或者使用一些工具如函數調用 、檢索功能來獲得更好的效果,若目前的基礎模型及相關工具無法提供滿意答案或處理復雜推理任務時,可以使用微調獲得更好的效果。
微調可改善效果的典型場景:
微調方面,大廠支持的工具鏈豐富的多,創業公司就只有最基礎的微調接口,百川和 MoonShot 當前還不支持,這部分功能我沒有深入體驗,只試用了微調接口
測試
我的場景主要用于識別用戶意圖,比如用戶問到小程序,我想將用戶意圖指向什么是獨立小程序、什么是聯營小程序、獨立小程序怎么申請
等問題,我將用戶問題與預設問題的匹配相似度閾值設為 0.9(0.5 ~ 1.0,從容易匹配到精準匹配),基本可以命中 80%以上的用戶意圖,測試下來幾家向量模型在通用場景下的效果差不多。
向量模型的價格
向量模型百度的更貴一點,阿里更便宜,其他三家價格一樣。
下面是一個價格簡單比較,但是價格和模型能力強相關,后面會有個各模型能力側重點說明,可以綜合成本和效果進行選型。
智譜的通用大模型價格
百川智能的通用大模型價格,模型能力介紹:產品介紹[29]
文心的大語言模型價格
通義千問大語言模型價格
MiniMax 大語言模型定價
MoonShot 通用大模型定價
moonshot-v1-8k: 它是一個長度為 8k 的模型,適用于生成短文本。moonshot-v1-32k: 它是一個長度為 32k 的模型,適用于生成長文本。moonshot-v1-128k: 它是一個長度為 128k 的模型,適用于生成超長文本。以上模型的區別在于它們的最大上下文長度,這個長度包括了輸入消息和生成的輸出,在效果上并沒有什么區別。
針對小企業、創業公司和獨立開發,各家都有看到對應開發者扶持計劃,大家可以后臺回復「大模型API」獲取完整表格,里面有文章中提到的所有內容鏈接,這里不詳細展開了。
終于來到總結部分了,我最后選用的智譜 AI 和 阿里(用作備份服務),MoonShot 的 long context 能力比較強,但是目前 API 能力跟不上,無法在應用上接入使用,只能在客戶端 Kimi 上用用;智譜 AI 的模型,在同等數量級參數的模型中理解能力屬于前列,安全對齊方面做的也比較出色;MiniMax 和百川智能的 API 吞吐一上來,接口出錯率比較高,模型能力相比智譜還是差點;API 穩定性和并發支持方面大廠還是比較穩,基本沒有接口延遲和出錯情況出現,兩家模型能力都中規中矩,但是通義千問在我的測試場景下比文心效果好,所以選擇備份服務選了阿里的。
大廠只是把大模型服務作為整體云戰略的一部分,產品線很全,哪個環節都想做,但是哪部分做的都不太好,反正用起來不舒服,文檔入口的層級太深,文檔組織有些混亂,這也是我沒有去繼續測試騰訊和字節的原因。大模型創業公司反到沒有包袱,MiniMax 做的最好,文檔很清晰,一目了然;智譜 AI 的文檔也可以,能力也比較完整,百川和 MoonShot 當前能夠提供的 API 能力總體較弱,文檔也沒多少內容。
百度智能云—>產品—>人工智能開發平臺—>千帆大模型平臺[30]
阿里云—>產品—>人工智能與機器學習—>模型平臺與服務—>模型服務靈積 DashScope[31]
火山引擎—>產品—>人工智能與機器學習—>機器學習—>火山方舟[32]
自己看吧,我就不浪費時間了 ???吐槽下騰訊混元大模型的 API,不敢相信這是騰訊的水平[33]
實名申請開發者權限:?https://yiyan.baidu.com/developer[2]
按照材料審核模板,并與官方人員進行企微溝通后: https://yiyan.baidu.com/developer/doc#Klmytk20y[3]
OpenAI 官方已經計劃于 2024 年 4 月 9 日徹底停止 ChatGPT 插件測試版:?https://help.openai.com/en/articles/8988022-winding-down-the-chatgpt-plugins-beta[4]
申請: https://dashscope.console.aliyun.com/plugin?spm=a2c4g.11186623.0.0.47896570Cg5Klb[5]
插件接入指引: https://help.aliyun.com/zh/dashscope/developer-reference/model-plugin-developer-guidelines[6]
插件編排: https://console.bce.baidu.com/qianfan/plugin/service/list[7]
插件應用: https://console.bce.baidu.com/qianfan/ais/console/applicationConsole/application/create[8]
插件開發者文檔: https://cloud.baidu.com/doc/WENXINWORKSHOP/s/2lmuqfng8[9]
流程: https://cloud.baidu.com/doc/WENXINWORKSHOP/s/wlmufm7ou[10]
前往這里: https://platform.openai.com/docs/plugins/getting-started[11]
OpenAI 文檔: https://help.openai.com/en/articles/8673914-gpts-vs-assistants[12]
通過插件的方式: https://help.aliyun.com/zh/dashscope/developer-reference/model-plugin-quick-start[13]
定義插件: https://cloud.baidu.com/doc/WENXINWORKSHOP/s/2lmuqfng8[14]
Assistans API 文檔: https://www.minimaxi.com/document/guides/Assistants/operate?id=6586b8674da4834fd75906e7[15]
函數調用: https://open.bigmodel.cn/dev/howuse/functioncall[16]
知識庫檢索: https://open.bigmodel.cn/dev/howuse/retrieval[17]
網絡搜索: https://open.bigmodel.cn/dev/api#glm-3-turbo[18]
API 能力: https://platform.moonshot.cn/docs/api-reference[19]
API能力: https://platform.baichuan-ai.com/docs/api[20]
模型微調: https://open.bigmodel.cn/dev/howuse/finetuning[21]
微調操作指南: https://www.minimaxi.com/document/guides/Finetune/example?id=657c2bce24432923d556b455[22]
模型精調: https://cloud.baidu.com/doc/WENXINWORKSHOP/s/6lomkz7hw[23]
模型定制: https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-17?spm=a2c4g.11186623.0.i16[24]
向量模型Embedding-2: https://open.bigmodel.cn/dev/api#text_embedding[25]
向量模型Baichuan-Text-Embedding: https://platform.baichuan-ai.com/docs/text-Embedding[26]
向量模型embo-01: https://www.minimaxi.com/document/price?id=6433f32294878d408fc8293e[27]
向量模型Embedding-V1: https://cloud.baidu.com/doc/WENXINWORKSHOP/s/alj562vvu[28]
通用文本向量模型: https://help.aliyun.com/zh/dashscope/developer-reference/text-embedding-quick-start?spm=a2c4g.11186623.0.0.79c1696bpdIAHh[29]
產品介紹: https://www.baichuan-ai.com/home[30]
千帆大模型平臺: https://cloud.baidu.com/product/wenxinworkshop.html?track=1031b[31]
模型服務靈積DashScope: https://dashscope.aliyun.com/[32]
火山方舟: https://www.volcengine.com/product/ark[33]
吐槽下騰訊混元大模型的 API,不敢相信這是騰訊的水平:?https://www.v2ex.com/t/975832
文章轉自微信公眾號@莫爾索隨筆