开发个人Go-ChatGPT–6 OpenUI

开发个人Go-ChatGPT--6 OpenUI

Open-webui

Open WebUI 是一种可扩展、功能丰富且用户友好的自托管 WebUI,旨在完全离线运行。它支持各种 LLM 运行器,包括 OllamaOpenAI 兼容的 API。

功能

由于总所周知的原由,OpenAI 的接口需要密钥才能使用,然后中国区是无法正常申请到密钥的,所以 OpenAIliteLLM 需要巧妙的跳过。

例如在 model相关接口时,需要在前端主动屏蔽掉,防止其他页面无法正常加载。

svelte 复制代码
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

相关推荐
时来天地皆同力.1 小时前
Java面试基础:概念
java·开发语言·jvm
hackchen1 小时前
Go与JS无缝协作:Goja引擎实战之错误处理最佳实践
开发语言·javascript·golang
铲子Zzz3 小时前
Java使用接口AES进行加密+微信小程序接收解密
java·开发语言·微信小程序
小小小新人121233 小时前
C语言 ATM (4)
c语言·开发语言·算法
Two_brushes.3 小时前
【linux网络】网络编程全流程详解:从套接字基础到 UDP/TCP 通信实战
linux·开发语言·网络·tcp/udp
小白学大数据3 小时前
R语言爬虫实战:如何爬取分页链接并批量保存
开发语言·爬虫·信息可视化·r语言
争不过朝夕,又念着往昔3 小时前
Go语言反射机制详解
开发语言·后端·golang
Jerry Lau3 小时前
go go go 出发咯 - go web开发入门系列(二) Gin 框架实战指南
前端·golang·gin
Azxcc03 小时前
C++异步编程入门
开发语言·c++
Biaobiaone4 小时前
Java中的生产消费模型解析
java·开发语言