開發個人Go-ChatGPT–6 OpenUI

開發個人Go-ChatGPT–6 OpenUI

Open-webui

open webui

Open WebUI 是一種可擴展、功能豐富且用戶友好的自托管 WebUI,旨在完全離線運行。它支持各種 LLM 運行器,包括 OllamaOpenAI 兼容的 API。

功能

由于總所周知的原由,OpenAI 的接口需要密鑰才能使用,然后中國區是無法正常申請到密鑰的,所以 OpenAIliteLLM 需要巧妙的跳過。

例如在 model相關接口時,需要在前端主動屏蔽掉,防止其他頁面無法正常加載。

const getModels = async () => {let models = await Promise.all([await getOllamaModels(localStorage.token).catch((error) => {console.log(error);return null;}),// await getOpenAIModels(localStorage.token).catch((error) => {// 	console.log(error);// 	return null;// }),// await getLiteLLMModels(localStorage.token).catch((error) => {// 	console.log(error);// 	return null;// })]);models = models.filter((models) => models).reduce((a, e, i, arr) => a.concat(e, ...(i < arr.length - 1 ? [{ name: 'hr' }] : [])), []);return models;};

本項目主要涉及 openwebui-backend-go 的開發與部署,不會對 前端 服務進行深入的講解。后續Open-webui的頁面,涉及到 OpenAIliteLLM 時,可以直接屏蔽掉,防止其他頁面無法正常加載。

項目地址

jackwillsmith/openui-svelte-build (github.com)

GitHub - jackwillsmith/openui-backend-go: openui-backend-go

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

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

相關文章

C#字符串操作:判斷一個字符串是否存在于另一個字符串按特定字符分割后的子字符串中的幾種方法

要判斷一個字符串是否存在于另一個字符串按特定字符分割后的子字符串中&#xff0c;可以使用以下幾種方法&#xff1a; 方法一&#xff1a;使用Split和Array.Exists 你可以使用 Split 方法將字符串分割成子字符串數組&#xff0c;然后使用 Exists方法檢查目標字符串是否在數組…

Elasticsearch詳細介紹

B站對應視頻&#xff1a; Elasticsearch01-01.為什么學習elasticsearch_嗶哩嗶哩_bilibili 大多數日常項目&#xff0c;搜索肯定是訪問頻率最高的頁面之一。目前搜索功能是基于數據庫的模糊搜索來實現的&#xff0c;存在很多問題。 首先&#xff0c;查詢效率較低。 由于數據…

Java面試題:三個線程交替打印ABC如何實現?

目錄 方法一&#xff1a;使用synchronized和wait/notify方法二&#xff1a;使用CompletableFuture實現 方法一&#xff1a;使用synchronized和wait/notify package com.demo;import java.util.concurrent.CompletableFuture;public class PrintABC {// 當前狀態private static…

數據結構 Java DS——鏈表部分經典題目 (1)

前言 筆者計劃在暑假啃完JavaDS,Mysql的內容當然也會繼續更 這次給讀者們分享的是鏈表的幾個比較典型的題目,關于如何手搓一個鏈表,筆者還在籌劃中, 畢竟鏈表的種類也有那么多,但是在下面的題目中,只有單向鏈表 題目一 : 反轉鏈表 206. 反轉鏈表 - 力扣&#xff08;LeetCode…

什么是 VueQuill(前端的富文本編輯器)?

什么是 VueQuill&#xff1f; 1. 簡介 VueQuill 是 Vue.js 的一個富文本編輯器插件&#xff0c;它基于 Quill 編輯器構建&#xff0c;提供了簡潔且功能強大的富文本編輯功能。Quill 是一個現代化的富文本編輯器&#xff0c;提供豐富的文本編輯能力&#xff0c;支持多種格式和…

paddlenlp cpu windows 下測試gpt

paddlenlp 安裝python3.11版本 conda create -n python311 python3.11 激活python conda activate python311 安裝paddlepaddle conda install paddlepaddle3.0.0b0 -c paddle pip install paddlenlp3.0.0b0 -U -i https://pypi.tuna.tsinghua.edu.cn/simple windows下…

RockYou2024 發布史上最大密碼憑證

參與 CTF 的每個人都至少使用過一次臭名昭著的rockyou.txt單詞表&#xff0c;主要是為了執行密碼破解活動。 該文件是一份包含1400 萬個唯一密碼的列表。 源自 2009 年的 RockYou 黑客攻擊&#xff0c;創造了計算機安全歷史。 多年來&#xff0c;“rockyou 系列”不斷發展。…

爬蟲怎么實現抓取的

1.4爬蟲工程師常用的庫通過圖1-3我們了解到&#xff0c;爬蟲程序的完整鏈條包括整理需求、分析目標、發出網絡請求、文本解析、數據入庫和數據出庫。其中與代碼緊密相關的有&#xff1a;發出網絡請求、文本解析、數據入庫和數據出庫&#xff0c;接下來我們將學習不同階段中爬蟲…

C++OCR API減輕人們文字錄入的負擔

曾幾何時&#xff0c;許多大企業會設立文字錄入專員的崗位。相信有不少人第一份實習工作就是錄入資料&#xff0c;文檔、發票、證件等形形色色的文件堆積如山&#xff0c;日積月累的敲擊鍵盤&#xff0c;一張一張的錄入電腦系統。這種工作是枯燥的&#xff0c;可以練就文字錄入…

實驗01 黑盒測試方法(等價類劃分、邊界值分析)

一 實驗目的&#xff1a; 1、理解黑盒測試的定義&#xff1b; 2、掌握等價類劃分法&#xff1b; 3、掌握邊界值分析法。 二 實驗環境 1、Windows操作系統計算機&#xff1b; 三 實驗準備 1、理解黑盒測試的定義&#xff1b; 2、等價類劃分法原則&#xff1b; 3、邊界值分…

Java反射與Fastjson的危險反序列化

什么是Java反射&#xff1f; 在前文中&#xff0c;我們有一行代碼 Computer macBookPro JSON.parseObject(preReceive,Computer.class); 這行代碼是什么意思呢&#xff1f;看起來好像就是我們聲明了一個名為 macBookPro 的 Computer 類&#xff0c;它由 fastjson 的 parseObje…

Java入門-Day7-面對對象基礎-構造器

&#xff08;1&#xff09;特點 創建對象時&#xff0c;對象會去調用構造器 &#xff08;2&#xff09;應用場景 創建對象時&#xff0c;同時完成對對象的成員變量&#xff08;屬性&#xff09;&#xff0c;的初始化 &#xff08;3&#xff09;注意事項 //Sutdent構造器 注…

Java 幼兒園(20240709)多來源列表映射多實現類

1、功能場景 對接多個外部廠商&#xff0c;比如多個銀行的賬單獲取&#xff0c;需要根據銀行信息執行對應的實現類。 2、功能代碼 &#xff08;1&#xff09;YAML配置來源列表 bank-source: bank_001, bank_002, bank_003 &#xff08;2&#xff09;外部來源枚舉 public …

《夢醒蝶飛:釋放Excel函數與公式的力量》10.2 COMPLEX函數

第二節 10.2 COMPLEX函數 10.2.1函數簡介 COMPLEX函數是Excel中的一個工程函數&#xff0c;用于將實部和虛部組合成一個復數。復數廣泛應用于工程、電氣、物理等領域&#xff0c;COMPLEX函數提供了方便的復數表示和計算方法。 10.2.2語法&#xff1a; COMPLEX(real_num, i_…

flex 填滿剩余空間

常見的flex屬性值&#xff1a; 1.flex:1,也就是flex-grow:1,也就是上面說的自動放大填充滿剩余空間&#xff0c;若有其他子盒子設置flex&#xff0c;則平分。 2.flex:0 0 auto,等同于flex:none,子元素的長度決定它的長度&#xff0c;當整體空間不足時&#xff0c;它也不會縮小&…

swift獲取app網絡和本地網絡權限

請求藍牙權限&#xff1a; //藍牙if #available(iOS 13.1, *) {let autostate CBManager.authorizationif(autostate .notDetermined){print("")self.manager CBCentralManager(delegate: nil, queue: DispatchQueue.main,options: [CBCentralManagerOptionShowPo…

JavaScript中的LHS和RHS

LHS和RHS之前我們先來回憶一下最簡單的賦值操作! var test100; console.log(test); 以上代碼的意思簡單我們理解為把右邊的值賦值給左邊的test變量,然后輸出打印結果。 可是我們要是深入理解你就會發現在這個過程當中&#xff0c;還發生了一些其他的事情 而這些事情就是今天…

C語言 printf函數緩沖機制

printf不立即打印到stdout的原因 printf函數使用了緩沖機制。當我們調用printf時,輸出通常不會立即顯示在屏幕上,而是先存儲在一個緩沖區中。這是為了提高I/O操作的效率。 緩存數據輸出的原理 stdio庫維護了一個緩沖區。當緩沖區滿了,或者在特定條件下,緩沖區的內容會被刷新…

前端如何讓網頁頁面完美適配不同大小和分辨率屏幕

推薦使用postcss插件&#xff0c;它會自動將項目所有的px單位統一轉換為vw等單位&#xff08;包括npm安裝的第三方組件&#xff09;&#xff0c;從而實現適配&#xff0c;具體配置規則可參考官網或npm網站介紹。 另外對于大屏的適配&#xff0c;需要縮放網頁&#xff0c;可使用…

歐姆龍安全PLC及周邊產品要點指南

電氣安全、自動化設備作業安全&#xff0c;向來是非常非常之重要的&#xff01;越來越多的客戶在規劃新產線、改造既有產線的過程中&#xff0c;明確要求設計方和施工方將安全考慮進整體方案中進行考慮和報價&#xff01;作為一名自動化電氣工程師&#xff0c;尤其是高級工程師…