Sdcb Chats:一個全新的開源大語言模型前端
當(dāng)前位置:點晴教程→知識管理交流
→『 技術(shù)文檔交流 』
在當(dāng)前大語言模型(LLM)蓬勃發(fā)展的時代,各類 LLM 前端層出不窮。那么,為什么我們還需要另一個 LLM 前端呢? 最初的原因在于質(zhì)感的追求。市面上已有的開源或不開源的大語言模型前端在用戶體驗上都缺少了一些類似 ChatGPT 那樣的質(zhì)感。因此,我們打造了 Sdcb Chats——一個基于 Apache 2.0 協(xié)議開源的項目,旨在為用戶提供更優(yōu)質(zhì)的交互體驗。 另一個原因是市場上幾乎沒有基于 .NET 實現(xiàn)的 LLM 前端,這讓我個人感到非常遺憾和不滿。Sdcb Chats 旨在填補(bǔ)這個空白,不僅為 .NET 社區(qū)帶來一個功能強(qiáng)大的大語言模型前端,同時也展示 .NET 在現(xiàn)代 AI 應(yīng)用中的潛力和優(yōu)勢。 消息內(nèi)容即是一棵樹在與大語言模型交互時,傳統(tǒng)的對話形式可能會導(dǎo)致用戶與模型“爭吵”。Sdcb Chats 引入了樹狀消息結(jié)構(gòu),即在同一位置,用戶消息可以有多個回復(fù),LLM 的響應(yīng)也可以有多個。 這種設(shè)計的優(yōu)勢在于:
(動圖1:Sdcb Chats 的主界面展示) 如圖,與其在聊完之后再與LLM爭吵,不如修改Prompt。 遺憾的是,在我開發(fā)Chats之前,并沒有一個開源的LLM前端支持這個功能,這也是促成我要重新再做一個的根本原因。 大語言模型功能篇多語言支持(動圖2:通過修改瀏覽器語言,Chats 支持多語言顯示) Sdcb Chats 支持多語言界面。您只需修改瀏覽器的語言設(shè)置,Chats 就會自動適配您的語言偏好,為全球用戶提供便捷。 聊天性能統(tǒng)計(動圖3:詳細(xì)的聊天性能統(tǒng)計) 每次與 LLM 的對話,Chats 都會進(jìn)行詳盡的統(tǒng)計,包括:
這些數(shù)據(jù)有助于您日后進(jìn)行分析和優(yōu)化。 多種大語言模型支持(動圖4:支持多種模型提供商,內(nèi)置超過 100 款模型) Sdcb Chats 內(nèi)置了對 9 種模型提供商的支持,包括 OpenAI 兼容協(xié)議在內(nèi)。此外,還預(yù)置了超過 100 款模型的信息,方便您快速使用。 支持配置新的大語言模型(動圖5:演示如何新增 DeepSeek 和零一萬物模型) 如果預(yù)置的模型不能滿足您的需求,您可以自行添加新的模型配置。在上述動圖中,我們演示了如何添加 DeepSeek 和零一萬物模型。 視覺模型支持(動圖6:支持多模態(tài)視覺模型與圖床功能) 為了增強(qiáng)用戶體驗,Chats 支持視覺模型。我們?yōu)?Chats 添加了一層圖床,方便上傳和管理圖片。支持的圖床形式包括:
API 網(wǎng)關(guān)功能(動圖7:強(qiáng)大的 API 網(wǎng)關(guān)功能) 很多開源項目聲稱兼容 OpenAI API 協(xié)議的 API 網(wǎng)關(guān)功能,但可能僅僅是 HTTP 協(xié)議的轉(zhuǎn)發(fā)。Chats 的 API 網(wǎng)關(guān)不僅支持按用戶權(quán)限配置模型、限制模型量,還支持目的地為非 OpenAI 協(xié)議的模型提供商,進(jìn)行透明代理。 API 網(wǎng)關(guān)支持參數(shù)(動圖8:全面支持 OpenAI API 的參數(shù)和功能) Chats 的 API 網(wǎng)關(guān)全面支持 OpenAI API 的所有參數(shù),包括最新的 部署與兼容性簡單部署:Docker 支持(圖片9:復(fù)雜的 GitHub Actions CICD 流程) Sdcb Chats 提供了便捷的 Docker 部署方式。我們在 GitHub Actions 中編寫了復(fù)雜的 CICD 流程,會自動編譯包括 Windows、Linux 等 4 種不同操作系統(tǒng)的原生支持 Docker 鏡像。 動態(tài)選擇合適的 Docker 鏡像(圖片10:通過 manifest 部署的 Docker 標(biāo)簽) 通過使用
說明:
因此,用戶在使用 請注意, 簡單部署——Linux 容器演示(動圖11:在 Linux 上部署 Chats,雖然圖片是在Windows pwsh中演示,但我Docker Desktop啟用的是Linux容器) 在 Linux 上,您可以按照以下步驟輕松部署 Chats:
創(chuàng)建之后,默認(rèn)的用戶名為 簡單部署——Windows 容器演示(動圖12:在 Windows 上部署 Chats) 許多朋友可能不知道,Windows 也有原生的 Docker。Chats 支持在 Windows 上以進(jìn)程隔離的方式部署 Docker,這與 Linux 的部署方式類似,但映射的目錄變?yōu)榱?nbsp; 簡單部署——可運行文件安裝(圖片13:GitHub Actions 的 Summary 頁面) 對于不方便使用 Docker 的用戶,Sdcb Chats 提供了可直接運行的二進(jìn)制文件。我們通過 GitHub Actions 的 Matrix strategy,自動編譯了 8 種不同操作系統(tǒng)或平臺的 Native AOT 編譯版本。對于不便使用 Docker 部署的環(huán)境,Chats 提供了 8 種操作系統(tǒng)或架構(gòu)的直接部署選項,您可以從以下鏈接獲取相應(yīng)的編譯包:
(圖片14:上傳到 GitHub Release 和個人 Minio 服務(wù)器的編譯文件) 考慮到國內(nèi)用戶訪問 GitHub 速度較慢,我們將編譯文件同時上傳到了個人的 Minio 服務(wù)器,方便快速下載。 (動圖15:演示如何下載和部署 Windows 版 Chats) 直接下載適合您操作系統(tǒng)的壓縮包,解壓后雙擊 版本和下載說明
執(zhí)行文件目錄結(jié)構(gòu)和運行說明解壓AOT可執(zhí)行文件后的目錄結(jié)構(gòu)如下:
特殊說明
多數(shù)據(jù)庫支持(感謝 EF Core)(圖片16:支持多種數(shù)據(jù)庫類型) Chats 的后端使用 Entity Framework Core 訪問數(shù)據(jù)庫,支持:
在程序首次運行且數(shù)據(jù)庫不存在時,Chats 會嘗試自動創(chuàng)建數(shù)據(jù)庫、相關(guān)表并插入基礎(chǔ)數(shù)據(jù)。 多文件服務(wù)支持(圖片17:支持多種圖床形式) Chats 支持本地文件、Minio/AWS S3、阿里云 OSS 和 Azure Blob Storage 五種圖床形式,您可以根據(jù)需要進(jìn)行配置。 我們創(chuàng)新性地使用了云服務(wù)廠商提供的 Presigned URL 或 SAS URL,這樣可以節(jié)省 Chats 服務(wù)器的帶寬,并提高圖片的訪問速度,增強(qiáng)用戶體驗,比如:
此外,我們引入了 用戶管理與安全完善的用戶管理功能(圖片19:管理員的用戶管理界面) 作為一款面向企業(yè)應(yīng)用的軟件,Sdcb Chats 提供了強(qiáng)大的用戶管理功能。管理員可以:
用戶有余額概念,模型的價格可配置。余額通過記賬表實現(xiàn),每一筆開銷或收入都會記錄,賬戶余額通過記賬表統(tǒng)計,確保并發(fā)請求下余額計算的準(zhǔn)確性。 支持 Keycloak SSO 登錄(動圖20:使用 Keycloak SSO 登錄) 企業(yè)通常有自己的身份認(rèn)證系統(tǒng),如 Keycloak SSO。Chats 支持集成這些系統(tǒng),登錄時如果用戶不存在,會自動創(chuàng)建。只需配置相應(yīng)的 手機(jī)號碼驗證碼登錄(圖片21:手機(jī)驗證碼登錄界面) 為方便國內(nèi)用戶,Chats 支持手機(jī)號碼驗證碼登錄,提升用戶體驗和安全性。 邀請碼與注冊(圖片22:邀請碼配置界面) 如果您不想開放注冊,可以使用邀請碼機(jī)制。邀請碼可以限制邀請次數(shù),初始贈送金額,以及模型、token 數(shù)、使用次數(shù)和過期時間等。 (圖片23:通過邀請碼注冊的新用戶初始權(quán)限設(shè)置) 當(dāng) token 數(shù)和聊天次數(shù)都為 0 時,將使用余額,按照模型配置的價格扣費。 Sdcb Chats 現(xiàn)已開源!項目地址:https://github.com/sdcb/chats
Sdcb 的含義Sdcb:Serving dotNet, Constructing Brilliance(服務(wù) .NET,構(gòu)建卓越) 我們致力于為 .NET 社區(qū)和廣大開發(fā)者提供高質(zhì)量的開源項目。 開源協(xié)議Apache 2.0 開源協(xié)議(可免費商用) 您可以自由地使用、修改和分發(fā) Sdcb Chats,無需商用授權(quán)。 歡迎 Star ?如果您覺得這個項目對您有幫助,請在 GitHub 上給我們一個 Star!您的支持是我們前進(jìn)的最大動力。 感謝您的閱讀和支持!讓我們一起用 Sdcb Chats 探索大語言模型的無限可能! 轉(zhuǎn)自https://www.cnblogs.com/sdcb/p/18597030/sdcb-chats-intro 該文章在 2024/12/16 9:58:07 編輯過 |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |