当前位置: 首页 > article >正文

OneAPI开源大模型网关部署:支持国产数据库(达梦/人大金仓)存储用户与渠道数据

OneAPI开源大模型网关部署支持国产数据库达梦/人大金仓存储用户与渠道数据1. 引言为什么你需要一个统一的大模型网关如果你正在使用或者计划使用大模型大概率会遇到这样的烦恼每个厂商的API格式都不一样密钥管理起来一团糟费用统计更是让人头疼。今天要介绍的OneAPI就是来解决这些问题的。简单来说OneAPI是一个开源的LLM API管理和分发系统。它最大的价值在于让你可以用一套标准的OpenAI API格式去访问市面上几乎所有主流的大模型。无论是OpenAI的GPT、百度的文心一言还是阿里的通义千问你都不需要再去研究它们各自复杂的接口文档OneAPI帮你统一搞定。更棒的是它支持将用户数据和渠道数据存储到国产数据库里比如达梦DM和人大金仓Kingbase这对于有特定数据存储要求的团队来说是个非常实用的功能。这篇文章我会带你从零开始手把手完成OneAPI的部署并重点讲解如何配置国产数据库。整个过程非常简单基本上就是下载、配置、运行三步走开箱即用。2. 快速了解OneAPI的核心能力在动手部署之前我们先快速浏览一下OneAPI能为你做什么。了解它的能力你才能更好地判断它是否适合你的场景。2.1 广泛的模型支持这是OneAPI最强大的地方。它就像一个“万能转换器”把不同厂商的API都转换成了OpenAI的格式。目前支持的主流模型包括但远不止这些国际模型OpenAI GPT系列、Anthropic Claude系列、Google Gemini系列、xAI Grok等。国内模型百度文心一言、阿里通义千问、讯飞星火、智谱ChatGLM、字节豆包、腾讯混元、360智脑、DeepSeek等。其他服务Ollama本地模型、Together.ai、Novita.ai等第三方代理服务。这意味着你可以在一个界面里管理所有这些模型的访问密钥并用同一套代码调用它们。2.2 企业级管理功能如果你不只是自己用还需要给团队或客户提供API服务OneAPI的管理功能就派上用场了用户与令牌管理可以创建用户为其分配API令牌并设置额度、过期时间、访问频率限制和允许访问的模型列表。渠道管理与负载均衡可以为同一个模型配置多个供应商渠道比如多个OpenAI账号并设置负载均衡策略提升可用性和分摊额度。财务管理支持设置充值链接、生成兑换码、查看详细的额度消耗明细并以美元显示费用方便成本核算。自定义与扩展可以自定义系统名称、Logo、首页甚至通过管理API进行功能扩展无需修改源代码。2.3 部署与存储灵活性部署简单提供独立的可执行文件和Docker镜像基本上是一键部署。数据库支持默认使用SQLite方便轻量级使用。也支持MySQL、PostgreSQL等。最重要的是它支持达梦数据库和人大金仓数据库满足国产化需求。高可用支持多机部署构建高可用的API网关集群。接下来我们就进入实战环节看看如何把它跑起来。3. 环境准备与一键部署OneAPI的部署方式非常灵活你可以根据自身环境选择。这里我们以最常见的Docker部署为例这也是最推荐的方式能避免很多环境依赖问题。3.1 部署前提条件确保你的服务器或本地开发环境已经安装Docker和Docker Compose。这是运行容器的基础。一个顺手的终端工具比如Mac的Terminal或Windows的PowerShell。可选但推荐一个域名和SSL证书如果你计划对外提供服务。3.2 使用Docker Compose快速启动这是最快上手的方法。创建一个名为docker-compose.yml的文件内容如下version: 3.8 services: oneapi: image: justsong/one-api:latest container_name: one-api restart: always ports: - 3000:3000 # 将容器内的3000端口映射到宿主机的3000端口 volumes: - ./data:/data # 持久化存储数据包括SQLite数据库如果使用 environment: - SQL_DSNsqlite:///data/oneapi.db # 默认使用SQLite数据文件会保存在./data目录下 - SESSION_SECRETyour_strong_session_secret_here # 请务必修改为一个强随机字符串 - TZAsia/Shanghai # 设置时区保存这个文件后在同一个目录下打开终端执行一条命令docker-compose up -d等待命令执行完毕Docker会自动拉取镜像并启动容器。现在打开你的浏览器访问http://你的服务器IP:3000或http://localhost:3000就能看到OneAPI的登录界面了。首次登录重要提示 系统默认的管理员账号是root密码是123456。出于安全考虑登录后第一件事就是去修改这个默认密码3.3 直接使用可执行文件部署如果你不想用Docker也可以直接下载对应平台的可执行文件。去OneAPI的GitHub Releases页面下载最新版本。解压后你会得到一个名为one-api的可执行文件。在终端中运行它chmod x one-api # 如果是Linux/Mac需要添加执行权限 ./one-api --port 3000 --sql-dsn sqlite:///data/oneapi.db同样通过浏览器访问http://localhost:3000即可。至此一个最基本的OneAPI服务就已经跑起来了。但我们现在用的是默认的SQLite数据库。接下来我们看看如何切换到国产数据库。4. 配置国产数据库达梦/人大金仓OneAPI使用GORM作为ORM框架理论上支持GORM所支持的所有数据库。对于达梦和人大金仓需要通过自定义驱动来实现。4.1 使用达梦数据库DM前提你已经在服务器上安装并运行了达梦数据库并创建好了一个用于OneAPI的数据库例如oneapi。步骤一修改Docker Compose配置我们需要修改之前的docker-compose.yml文件主要是更新环境变量SQL_DSN并挂载达梦的驱动文件。version: 3.8 services: oneapi: image: justsong/one-api:latest container_name: one-api restart: always ports: - 3000:3000 volumes: - ./dm-driver:/dm-driver # 挂载达梦数据库驱动目录 # 注意我们不再挂载./data卷因为数据将存储在达梦数据库中 environment: # 达梦数据库连接字符串示例 # 格式dm://用户名:密码数据库地址:端口?schema模式名charsetutf8 - SQL_DSNdm://oneapi_user:YourPassword123192.168.1.100:5236?schemaONEAPIcharsetutf8 - SESSION_SECRETyour_strong_session_secret_here - TZAsia/Shanghai # 告诉OneAPI使用达梦驱动 - GORM_DRIVERdm # 指定达梦驱动jar包路径驱动需预先准备 - DM_DRIVER_PATH/dm-driver/dm-jdbc-driver.jar步骤二准备达梦数据库驱动从达梦官网下载对应版本的JDBC驱动通常是DmJdbcDriver18.jar之类的文件。在宿主机上创建一个目录如./dm-driver将驱动jar包放入。确保docker-compose.yml中volumes部分正确映射了这个目录。步骤三启动并初始化运行docker-compose up -d。OneAPI在首次启动时会自动根据SQL_DSN连接到达梦数据库并创建所需的表结构。4.2 使用人大金仓数据库Kingbase配置流程与达梦类似区别在于连接字符串和驱动。修改Docker Compose配置version: 3.8 services: oneapi: image: justsong/one-api:latest container_name: one-api restart: always ports: - 3000:3000 volumes: - ./kingbase-driver:/kingbase-driver # 挂载人大金仓驱动目录 environment: # 人大金仓数据库连接字符串示例基于PostgreSQL协议 # 格式host地址 port端口 user用户名 password密码 dbname数据库名 sslmodedisable - SQL_DSNhost192.168.1.101 port54321 useroneapi_user passwordYourPassword123 dbnameoneapi sslmodedisable - SESSION_SECRETyour_strong_session_secret_here - TZAsia/Shanghai # 人大金仓通常兼容PostgreSQL协议 - GORM_DRIVERpostgres # 指定驱动路径如果需要特定驱动 - KINGBASE_DRIVER_PATH/kingbase-driver/kingbase8-8.6.0.jar准备驱动从人大金仓官网下载对应的JDBC驱动jar包并放置到挂载目录中。4.3 验证数据库连接部署完成后如何确认OneAPI已经成功连接到了国产数据库呢查看日志使用命令docker logs one-api查看容器日志如果没有报数据库连接错误通常就是成功了。登录管理后台用root账号登录OneAPI后台。检查数据尝试创建一个用户或一个渠道然后到达梦或人大金仓的客户端中查询对应的表如users,channels看看是否有新数据插入。这是最直接的验证方式。切换到国产数据库后所有的用户信息、渠道配置、消费记录等数据都会安全地存储在你自己的数据库服务器中。5. 基础配置与使用指南服务跑起来数据库也连上了现在我们来让它真正工作起来添加模型渠道并测试API调用。5.1 添加你的第一个模型渠道我们以添加一个OpenAI渠道为例使用root账号登录OneAPI管理后台http://localhost:3000。在左侧菜单找到渠道-新建渠道。填写渠道信息渠道类型选择OpenAI。渠道名称起个容易识别的名字如我的GPT-4。密钥填入你的OpenAI API Key格式以sk-开头。代理可选如果你的网络需要可以填写代理地址例如http://your-proxy.com:8080。模型可选可以手动填写此渠道支持的模型如gpt-3.5-turbo, gpt-4不填则默认支持所有。点击提交。渠道状态显示为已启用绿色即表示添加成功。添加其他模型流程完全一样只是在“渠道类型”中选择对应的供应商如百度文心一言、阿里通义千问等然后填入该平台提供的API Key和相应的Base URL如果需要。5.2 创建用户并获取令牌渠道是“货源”用户是“买家”。接下来我们创建一个API用户。在左侧菜单进入令牌-新建令牌。填写令牌信息名称用于区分如测试用户A。过期时间设置令牌的有效期。剩余额度给这个令牌分配多少额度单位是美元。模型权限可以限制这个令牌只能访问哪些模型如只允许用gpt-3.5-turbo。点击提交。系统会生成一个以sk-开头的密钥这个密钥只会显示一次请务必妥善保存。这就是你的用户调用API时需要的凭证。5.3 像调用OpenAI一样调用所有模型这是最精彩的部分。假设你保存的令牌是sk-abc123...。以前你用Python调用OpenAI可能是这样的from openai import OpenAI client OpenAI(api_key你的-openai-key, base_urlhttps://api.openai.com/v1)现在你只需要把base_url改成你的OneAPI地址api_key换成刚才生成的OneAPI令牌from openai import OpenAI # 注意base_url 指向你自己的 OneAPI 服务地址 client OpenAI(api_keysk-abc123..., base_urlhttp://localhost:3000/v1) # 发起一个聊天请求模型名写你在OneAPI里看到的任意支持的模型 completion client.chat.completions.create( modelgpt-3.5-turbo, # 这里可以换成 qwen-max, ernie-bot, spark-v3 等等 messages[ {role: user, content: 你好请介绍一下你自己。} ] ) print(completion.choices[0].message.content)看到了吗代码几乎不用改。无论你想调用文心一言还是通义千问只需要修改model参数即可。OneAPI帮你完成了所有复杂的适配工作。5.4 关键功能体验查看消费在日志页面可以查看所有API调用的详细记录包括消耗的额度。负载均衡为同一个模型类型如gpt-3.5-turbo添加多个渠道后在渠道页面可以设置负载均衡模式如轮询、权重当一个渠道额度用完或故障时会自动切换到下一个。自定义模型名在模型页面你可以设置“模型映射”。比如用户请求gpt-4你可以实际让他使用qwen-max。这在做成本优化或A/B测试时很有用。6. 总结OneAPI带来的改变走完整个部署和配置流程你会发现OneAPI确实大大简化了多模型管理的复杂度。我们来总结一下它的核心价值1. 统一入口降低开发成本你再也不需要为每个大模型供应商编写不同的API调用代码。一套基于OpenAI格式的代码走遍天下。这对于需要快速切换或对比不同模型效果的应用来说效率提升是巨大的。2. 集中管理提升运营效率所有API密钥、用户、额度、消费记录都在一个后台管理。你可以清晰地看到每个模型、每个用户的费用情况方便进行成本控制和财务核算。3. 支持国产满足合规需求对国产数据库达梦、人大金仓的支持是OneAPI一个非常重要的特性。这使得它能够进入对数据存储有国产化要求的项目或单位拓宽了应用场景。4. 开源灵活可按需扩展作为开源项目你可以查看其全部代码并根据自己的业务需求进行定制化开发。通过它提供的管理API你甚至可以在不修改源码的情况下集成到自己的运维体系中。给初学者的最后建议先从Docker SQLite的方式体验最快几分钟就能看到效果。熟悉基本操作后如果确有需求再考虑迁移到达梦或人大金仓这类企业级数据库。无论你是个人开发者、小团队还是有一定规模的企业OneAPI都能为你管理大模型API带来极大的便利。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

相关文章:

OneAPI开源大模型网关部署:支持国产数据库(达梦/人大金仓)存储用户与渠道数据

OneAPI开源大模型网关部署:支持国产数据库(达梦/人大金仓)存储用户与渠道数据 1. 引言:为什么你需要一个统一的大模型网关? 如果你正在使用或者计划使用大模型,大概率会遇到这样的烦恼:每个厂…...

HG-ha/MTools生产环境部署:媒体公司后期处理提效案例

HG-ha/MTools生产环境部署:媒体公司后期处理提效案例 1. 项目概述与核心价值 HG-ha/MTools是一款开箱即用的现代化桌面工具集,专为媒体内容处理而设计。它集成了图片处理、音视频编辑、AI智能工具和开发辅助等多项功能,支持跨平台GPU加速&a…...

Phi-3-mini-4k-instruct-gguf GPU算力优化:q4 GGUF模型在消费级显卡上的表现

Phi-3-mini-4k-instruct-gguf GPU算力优化:q4 GGUF模型在消费级显卡上的表现 1. 模型概述 Phi-3-mini-4k-instruct-gguf 是微软Phi-3系列中的轻量级文本生成模型GGUF版本,专为问答、文本改写、摘要整理和简短创作等场景优化。这个经过量化的q4 GGUF模型…...

如何利用内部链接来提高网站排名_网站 UX 设计对 SEO 的重要性是什么

如何利用内部链接来提高网站排名 在现代的网络环境中,如何提高网站在搜索引擎中的排名成为了每一个网站运萈者的首要任务。其中,内部链接和网站用户体验(UX)设计在搜索引擎优化(SEO)中扮演了至关重要的角色…...

AutoGLM-Phone-9B环境搭建教程:双显卡配置详解,轻松启动模型服务

AutoGLM-Phone-9B环境搭建教程:双显卡配置详解,轻松启动模型服务 1. 环境准备与硬件要求 1.1 硬件配置要求 AutoGLM-Phone-9B作为一款多模态大语言模型,对硬件配置有特定要求: 显卡配置:至少需要2块NVIDIA RTX 409…...

阿姆智创15.6寸触摸工控一体机,工业智造终端解决方案,源头工厂ODM定制赋能自动化升级

在工业自动化与智能制造深度融合的当下,稳定可靠、适配性强、可定制化的工控终端,已成为SMT产线、MES/ESOP系统等场景高效运行的关键支撑。阿姆智创15.6寸触摸工控一体机,以硬核工业性能、丰富系统接口、灵活ODM定制服务,打造一站…...

IntelliJ IDEA 2019安装教程及下载

软件介绍: IntelliJ IDEA 是捷克 JetBrains 公司研发的集成开发环境(IDE),主打 Java 和 Kotlin 开发,被誉为 “最佳 Java IDE”,适配不同层级开发者需求;它具备智能代码补全、静态分析、一键重…...

老程序员重归CSDN:AI时代的五重叩问与一封给未来的信

深夜,我重新登录了那个尘封已久的CSDN账号。上一次更新还是三年前,记录的是某个深夜排查分布式锁问题的碎片。如今,当AI能一键生成完整模块、自动修复基础Bug时,我却在思考一个更本质的问题:我们这些与代码相伴近二十年…...

Flutter 响应式设计:适配各种设备尺寸

Flutter 响应式设计:适配各种设备尺寸让你的应用在手机、平板和桌面端都能完美呈现。一、响应式设计的重要性 作为一名追求像素级还原的 UI 匠人,我深知响应式设计的重要性。在当今多设备时代,用户可能在各种尺寸的屏幕上使用你的应用——从 …...

浙江清洁拖把这样选

随着现代生活节奏的加快和健康家居理念的普及,家庭清洁工具正经历着一场深刻的智能化、便捷化变革。在众多品类中,清洁拖把作为地面清洁的核心工具,其技术演进与产品创新直接关系到清洁效率和用户体验。本文将聚焦行业痛点、技术方案与应用效…...

如何用obs-multi-rtmp解决多平台直播重复编码问题?超高效方案分享

如何用obs-multi-rtmp解决多平台直播重复编码问题?超高效方案分享 【免费下载链接】obs-multi-rtmp OBS複数サイト同時配信プラグイン 项目地址: https://gitcode.com/gh_mirrors/ob/obs-multi-rtmp obs-multi-rtmp是一款开源的OBS插件,通过单次编…...

AI Agent在保险行业的应用:风险评估、理赔自动化与客服

AI Agent在保险行业的应用:风险评估、理赔自动化与客服 核心概念 什么是AI Agent AI Agent(人工智能代理)并非一个全新的概念,但在大语言模型(LLM,如GPT-4、Claude 3.5、通义千问、文心一言等&#xff09…...

mootdx完全指南:金融数据获取与分析的7个实战技巧

mootdx完全指南:金融数据获取与分析的7个实战技巧 【免费下载链接】mootdx 通达信数据读取的一个简便使用封装 项目地址: https://gitcode.com/GitHub_Trending/mo/mootdx 副标题:量化交易 | 数据接口 | Python工具 你是否曾在量化交易策略开发中…...

WinBtrfs实战指南:Windows系统上的专业级Btrfs文件系统管理

WinBtrfs实战指南:Windows系统上的专业级Btrfs文件系统管理 【免费下载链接】btrfs WinBtrfs - an open-source btrfs driver for Windows 项目地址: https://gitcode.com/gh_mirrors/bt/btrfs 还在为Windows与Linux双系统间的文件共享而烦恼吗?W…...

番茄小说下载器技术指南:从需求分析到高效应用

番茄小说下载器技术指南:从需求分析到高效应用 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 在数字阅读日益普及的今天,离线获取和管理小说内容成为许…...

黑马点评项目扩展:为本地生活平台集成AI人脸生成会员头像功能

黑马点评项目扩展:为本地生活平台集成AI人脸生成会员头像功能 不知道你有没有发现,现在很多本地生活类App,比如我们熟悉的“黑马点评”,用户头像区总是千篇一律。要么是默认的灰色头像,要么就是随手拍的生活照&#x…...

解锁Dell G15散热潜能:开源Thermal Control Center实战指南

解锁Dell G15散热潜能:开源Thermal Control Center实战指南 【免费下载链接】tcc-g15 Thermal Control Center for Dell G15 - open source alternative to AWCC 项目地址: https://gitcode.com/gh_mirrors/tc/tcc-g15 厌倦了官方AWCC的臃肿和迟缓&#xff1…...

猫抓:5分钟掌握浏览器资源嗅探神器,轻松下载网页视频和流媒体

猫抓:5分钟掌握浏览器资源嗅探神器,轻松下载网页视频和流媒体 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 还在为网页视…...

dp动规 - 水质检测

题目 题目分析 有两行水质检测器,每一行的长度皆为n,现在的目的就是要让检测器之间联通,求至少需要多添加几台水质检测器? 思路梳理 错误思路 看到有图的时候,这道题我第一个思路想到了用BFS,观察测试用…...

Linux上的哔哩哔哩终极指南:从零开始掌握B站客户端完整教程

Linux上的哔哩哔哩终极指南:从零开始掌握B站客户端完整教程 【免费下载链接】bilibili-linux 基于哔哩哔哩官方客户端移植的Linux版本 支持漫游 项目地址: https://gitcode.com/gh_mirrors/bi/bilibili-linux 想要在Linux系统上流畅观看B站视频吗&#xff1f…...

MTKClient实战指南:从环境搭建到故障排查的完整路径

MTKClient实战指南:从环境搭建到故障排查的完整路径 【免费下载链接】mtkclient MTK reverse engineering and flash tool 项目地址: https://gitcode.com/gh_mirrors/mt/mtkclient MTKClient作为一款专注于联发科芯片组设备的开源工具配置方案,提…...

ClearerVoice-Studio语音增强效果对比:FRCRN与MossFormer2在低SNR表现

ClearerVoice-Studio语音增强效果对比:FRCRN与MossFormer2在低SNR表现 1. 引言:语音增强的技术挑战与实际需求 在日常工作和生活中,我们经常遇到这样的场景:重要的线上会议录音充满键盘敲击声和空调噪音,电话采访的音…...

从零开始集成cv_resnet101_face-detection_cvpr22papermogface:Git版本控制与团队协作指南

从零开始集成cv_resnet101_face-detection_cvpr22papermogface:Git版本控制与团队协作指南 你是不是也遇到过这种情况?团队里几个人一起折腾一个AI项目,比如这个人脸检测模型。你刚在自己的电脑上把环境配好,代码跑通了&#xff…...

YOLO进化史:除了网络结构,那些改变游戏规则的‘小技巧’(Mish、CIoU、Mosaic)

YOLO进化史:那些改变游戏规则的"微创新"与底层设计哲学 在目标检测领域,YOLO系列算法以其独特的单阶段检测框架和实时性能,持续引领着技术发展方向。当我们聚焦于YOLO的演进历程,会发现真正推动性能突破的往往不是网络结…...

Qwen3.5推理模型应用实战:快速搭建你的智能学习与代码助手

Qwen3.5推理模型应用实战:快速搭建你的智能学习与代码助手 1. 引言:为什么选择Qwen3.5推理模型 在当今AI技术快速发展的时代,找到一个既轻量又强大的推理模型对于开发者来说至关重要。Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF…...

微信聊天记录导出革新:WeChatExporter突破iOS数据备份限制全指南

微信聊天记录导出革新:WeChatExporter突破iOS数据备份限制全指南 【免费下载链接】WeChatExporter 一个可以快速导出、查看你的微信聊天记录的工具 项目地址: https://gitcode.com/gh_mirrors/wec/WeChatExporter 在数字时代,微信聊天记录已成为个…...

零代码自动化:OpenClaw+Qwen3.5-9B处理Excel数据透视表

零代码自动化:OpenClawQwen3.5-9B处理Excel数据透视表 1. 为什么需要零代码Excel自动化 作为经常与数据打交道的分析师,我每周都要重复处理类似的Excel报表:数据清洗、透视分析、生成图表。这些操作虽然简单,但耗时且容易出错。…...

如何构建高效可扩展的实时数据处理系统:抖音直播弹幕采集架构深度解析

如何构建高效可扩展的实时数据处理系统:抖音直播弹幕采集架构深度解析 【免费下载链接】DouyinLiveWebFetcher 抖音直播间网页版的弹幕数据抓取(2025最新版本) 项目地址: https://gitcode.com/gh_mirrors/do/DouyinLiveWebFetcher 抖音…...

如何破解网易云音乐加密限制?ncmdump让音乐文件自由播放

如何破解网易云音乐加密限制?ncmdump让音乐文件自由播放 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 你是否遇到过这样的困扰:从网易云音乐下载的歌曲只能在特定客户端播放,无法在其他设备或播…...

G-Helper完整指南:华硕笔记本的终极轻量级控制工具

G-Helper完整指南:华硕笔记本的终极轻量级控制工具 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix, Scar,…...