最近准备学习一下 Semantic Kernel
, OpenAI
的 Api
申请麻烦,所以想通过 One-api
对接一下国内的在线大模型,先熟悉一下 Semantic Kernel
的基本用法,本篇文章重点记录一下OneApi
安装配置的过程。
讯飞星火有 3.5
模型的 200w
个人免费 token
,可以拿来学习。
通过标准的 OpenAI 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
盘符
浏览器打开http://localhost:3000/
root
账号one-api
提供了开箱即用的功能,有一个默认的root
账号,密码是123456
第一次登录后需要修改密码。
密钥这个地方需要注意格式: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
当然这也是我们后面要学习的内容。
参考文献