当前位置: 欣欣网 > 码农

一键接入大模型:One-Api本地安装配置实操

2024-05-08码农

前言

最近准备学习一下 Semantic Kernel , OpenAI Api 申请麻烦,所以想通过 One-api 对接一下国内的在线大模型,先熟悉一下 Semantic Kernel 的基本用法,本篇文章重点记录一下 OneApi 安装配置的过程。

讯飞星火有 3.5 模型的 200w 个人免费 token ,可以拿来学习。

讯飞星火申请链接 [1]

什么是 One-Api?

通过标准的 OpenAI API 格式访问所有的大模型

支持多种大模型:

  • OpenAI ChatGPT 系列模型(支持 Azure OpenAI API)

  • Anthropic Claude 系列模型 (支持 AWS Claude)

  • Google PaLM2/Gemini 系列模型

  • Mistral 系列模型

  • 百度文心一言系列模型

  • 阿里通义千问系列模型

  • 讯飞星火认知大模型

  • 智谱 ChatGLM 系列模型

  • 360 智脑

  • 腾讯混元大模型

  • Moonshot AI

  • 百川大模型

  • 字节云雀大模型 (WIP)

  • MINIMAX

  • Groq

  • Ollama

  • 零一万物

  • 阶跃星辰

  • Coze

  • Cohere

  • DeepSeek

  • Cloudflare Workers AI

  • DeepL

  • one-api github repo [2]

    本地 Docker Destop 安装 One-Api

  • 先拉取 one-api 镜像

  • docker pull justsong/one-api

    使用 SQLite 的部署命令:

  • 启动容器 默认宿主机端口为 3000

  • docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v C:/LLM/OneApi-V-Data:/data justsong/one-api

    因为我的宿主机是 Windows 的操作系统所以数据卷映射的宿主机盘需要注意是带 Windows 盘符

    one-api 配置界面

    浏览器打开 http://localhost:3000/

  • 默认 root 账号
    one-api 提供了开箱即用的功能,有一个默认的 root 账号,密码是 123456

  • 第一次登录后需要修改密码。

    配置渠道

  • 配置讯飞星火 3.5 模型!

  • 查看渠道列表

  • 密钥这个地方需要注意格式:APPID|APISecret|APIKey

  • 申请令牌

  • 拿到密钥就可以在我们项目中以 OpenAI 格式去请求我们的大模型接口

    测试

  • 在接口测试工具先看一下效果

  • 地址

    http://localhost:3000/v1/chat/completions

    请求头

    Authorization:Bearer {OneApiToken}

  • 接口管理工具查看效果

  • 接口入参

    {
    "model""SparkDesk-v3.5",
    "messages": [
    {
    "role""user",
    "content""给我讲个笑话吧。"
    }
    ],
    "temperature"0.7
    }

    接口回参

    {
    "id""chatcmpl-04025f1484c54770a8d854de360fd06e",
    "object""chat.completion",
    "created"1715000959,
    "choices": [
    {
    "index"0,
    "message": {
    "role""assistant",
    "content""当然可以,这是一个我最近听到的笑话:\n\n有一天,一只猫走进了一个酒吧,然后走到吧台前坐下,对酒保说:「我要一杯牛奶。」\n\n酒保惊讶地看着猫,然后说:「你是我见过的第一只会说话的猫。」\n\n猫看着酒保,回答说:「考虑到你的服务速度,我也没什么好惊讶的。」"
    },
    "finish_reason""stop"
    }
    ],
    "usage": {
    "prompt_tokens"6,
    "completion_tokens"75,
    "total_tokens"81
    }
    }

    最后

    到现在为止我们的 One-Api 对接讯飞星火已经成功了,后面就可以愉快的进入 Semantic Kernel 入门学习的教程啦,社区内也有大佬提供了星火大模型的 SDK( Sdcb.SparkDesk )通过 SK 的 CustomLLM 实现 ITextGenerationService 等接口也可以愉快的使用 SK 当然这也是我们后面要学习的内容。

    参考文献

    [3]

    参考资料

    [1]

    讯飞星火申请链接: https://xinghuo.xfyun.cn

    [2]

    one-api github repo: https://github.com/songquanpeng/one-api

    [3]