一鍵接入大模型:One-Api本地安裝配置實操

董瑞鹏發表於2024-05-07

前言

最近準備學習一下 Semantic Kernel, OpenAIApi 申請麻煩,所以想透過 One-api 對接一下國內的線上大模型,先熟悉一下 Semantic Kernel 的基本用法,本篇文章重點記錄一下OneApi安裝配置的過程。

訊飛星火有 3.5 模型的 200w 個人免費 token,可以拿來學習。

訊飛星火申請連結

什麼是 One-Api?

透過標準的 OpenAI API 格式訪問所有的大模型

image

支援多種大模型:

  • 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

本地 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 磁碟機代號

image

one-api 配置介面

瀏覽器開啟http://localhost:3000/

  • 預設 root 賬號
    one-api 提供了開箱即用的功能,有一個預設的root賬號,密碼是123456

image

第一次登入後需要修改密碼。

配置渠道

  • 配置訊飛星火 3.5 模型!

image

  • 檢視渠道列表
    image

金鑰這個地方需要注意格式:APPID|APISecret|APIKey

  • 申請令牌

image

image

拿到金鑰就可以在我們專案中以 OpenAI 格式去請求我們的大模型介面

測試

  • 在介面測試工具先看一下效果

地址

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

請求頭

Authorization:Bearer {OneApiToken}
  • 介面管理工具檢視效果

image

介面入參

{
  "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當然這也是我們後面要學習的內容。

參考文獻

實戰教學:用 Semantic Kernel 框架整合騰訊混元大模型應用

相關文章