做门窗的建网站怎么赚钱,徐州做网站的公司,网页设计是什么软件,怎样找回网站备案密码前言 当我们对接LangChain4j的时候#xff0c;面对复杂的各种各样的大模型的api的对接#xff0c;让很多开发者感到力不从心。在每个大模型的api都不一样的时候#xff1f;该如何快捷的切换模型的使用呢#xff1f; 这时#xff0c;One-API应运而生#xff0c;它以其简洁…前言 当我们对接LangChain4j的时候面对复杂的各种各样的大模型的api的对接让很多开发者感到力不从心。在每个大模型的api都不一样的时候该如何快捷的切换模型的使用呢 这时One-API应运而生它以其简洁高效的特性吸引了大量开发者的关注。那么究竟什么是One-API它有哪些应用场景又该如何尝试呢本文将为你一一解答。 One-API简介 One-API顾名思义即“一个API”它旨在通过统一的编程接口让开发者能够更轻松地应对不同硬件平台上的编程挑战。One-API将多种编程语言、库和框架整合在一起形成了一个强大的编程生态系统。在这个生态系统中开发者只需掌握一套统一的API就能在各种硬件平台上进行高效的开发。
官网One-API官网 基于 Docker 进行部署
# 使用 SQLite 的部署命令docker run --name one-api -d --restart always -p 3000:3000 -e TZAsia/Shanghai -v /usr/local/data/one-api:/data justsong/one-api
其中-p 3000:3000 中的第一个 3000 是宿主机的端口可以根据需要进行修改。
数据和日志将会保存在宿主机的 //usr/local/data/one-api 目录请确保该目录存在且具有写入权限或者更改为合适的目录。
如果启动失败请添加 --privilegedtrue具体参考 #482 。
如果上面的镜像无法拉取可以尝试使用 GitHub 的 Docker 镜像将上面的 justsong/one-api 替换为 ghcr.io/songquanpeng/one-api 即可。如下
docker run --name one-api -d --restart always -p 3000:3000 -e TZAsia/Shanghai -v /usr/local/data/one-api:/data ghcr.io/songquanpeng/one-api 如果想学习docker国内拉不了镜像该怎么办可以看我这篇博客Docker无法拉取镜像!如何解决?-CSDN博客
启动完之后访问http://localhost:3000/ 初始账号用户名为 root密码为 123456。
如何使用one-api
登录完后页面如下 此时我们需要配置渠道和令牌。
one-api支持的渠道如下
支持多种大模型 OpenAI ChatGPT 系列模型支持 Azure OpenAI API Anthropic Claude 系列模型 (支持 AWS Claude) Google PaLM2/Gemini 系列模型 Mistral 系列模型 字节跳动豆包大模型 百度文心一言系列模型 阿里通义千问系列模型 讯飞星火认知大模型 智谱 ChatGLM 系列模型 360 智脑 腾讯混元大模型 Moonshot AI 百川大模型 MINIMAX Groq Ollama 零一万物 阶跃星辰 Coze Cohere DeepSeek Cloudflare Workers AI DeepL together.ai novita.ai
添加渠道 添加令牌 使用方法
在渠道页面中添加你的 API Key之后在令牌页面中新增访问令牌。
之后就可以使用你的令牌访问 One API 了使用方式与 OpenAI API 一致。
你需要在各种用到 OpenAI API 的地方设置 API Base 为你的 One API 的部署地址例如http://localhost:3000API Key 则为你在 One API 中生成的令牌。
注意具体的 API Base 的格式取决于你所使用的客户端。
例如对于 OpenAI 的官方库
OPENAI_API_KEYsk-xxxxxx
OPENAI_API_BASEhttps://HOST:PORT/v1 可以通过在令牌后面添加渠道 ID 的方式指定使用哪一个渠道处理本次请求例如Authorization: Bearer ONE_API_KEY-CHANNEL_ID。 注意需要是管理员用户创建的令牌才能指定渠道 ID。不加的话将会使用负载均衡的方式使用多个渠道。
案例实战
对接-月之暗面Ai 以下的baseUrl使用的是我们one-api的访问地址加上/v1而apikey是在one-api中配置的月之暗面的令牌。modelName是其中的一个模型名称。 ChatLanguageModel model OpenAiChatModel.builder().baseUrl(http://localhost:3000/v1).apiKey(one-api月之暗面令牌).modelName(moonshot-v1-8k).build();String answer model.generate(你好你是谁);System.out.println(answer);
对接-智普Ai 当我们想切换其他的大模型的时候只需要把apikey和modelName改一下就可以了。很容易的实现大模型的切换。 ChatLanguageModel model OpenAiChatModel.builder().baseUrl(http://localhost:3000/v1).apiKey(one-api智普令牌).modelName(glm-4).build();String answer model.generate(你好你是谁);System.out.println(answer);