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

ollama 运行gpt-oss 系列教程

ollama 运行gpt-oss 系列教程

  • 启动ollama
  • 下载模型
  • 启动模型
  • 导出模型配置文件
  • 修改配置文件
  • 创建新模型
  • 调用接口
    • 1. `POST /api/generate`
      • 1.1 基本参数
      • 1.2 高级可选参数
    • 2. `POST /api/chat`
      • 2.1 基本参数
        • `messages` 中的单条消息对象结构
      • 2.2 高级可选参数
    • 🛠 常用示例(cURL)
    • 📌 注意事项
  • 持久化API
  • Openai 格式(配置到new_api中)

启动ollama

docker run -d --gpus '"device=4"' --restart=always -v /data/linnannan/ollama:/root/.ollama -p 9089:11434 --name ollama ollama/ollama

进入容器

exec -it cec866ab58e8e9365 bash

下载模型

如果出现下载速度突然变慢的情况,直接ctrl c 退出重新pull,ollama有断点续传的功能

ollama pull gpt-oss:20b
ollama pull gpt-oss:120b

启动模型

ollama run gpt-oss:20b

导出模型配置文件

ollama show --modelfile  gpt-oss:20b >  model_config/gpt-oss-20b-Modelfile

修改配置文件

注意:如果上下文长度设置过大,会自动把超过的部分加载到CPU中,导致推理速度非常慢。

  • FROM gpt-oss:20b

  • PARAMETER num_ctx 48000

CONTEXT = 32K

CONTEXT = 56K

CONTEXT = 64K

创建新模型

ollama create gpt_oss_20b:v1 -f model_config/gpt-oss-20b-Modelfile

调用接口


1. POST /api/generate

功能:使用指定模型对给定的 prompt 生成响应。该端点默认 流式 返回(stream),最终会收到一个包含统计信息等的完整响应对象。

1.1 基本参数

参数必填类型说明
modelstring模型名称
promptstring用于生成响应的提示文本
suffixstring响应结束后要追加的文本
imagesstring[]base64 编码的图像列表(仅对多模态模型如 llava 有效)
thinkboolean对于思维模型,是否在生成前进行“思考”

1.2 高级可选参数

参数必填类型说明
formatstring返回数据的格式。可选 json(JSON 模式)
optionsobjectModelfile 中定义的其它模型参数,例如 temperaturetop_p
systemstring覆盖 Modelfile 中的系统消息
templatestring覆盖 Modelfile 中的提示模板
streambooleanfalse 时返回单个完整响应对象;true(默认)返回对象流
rawbooleantrue 时不做任何格式化;若请求已包含完整模板化提示,可使用此参数
keep_alivestring控制模型在请求结束后保持在内存中的时长(默认 5m

提示:如果 streamtrue,服务器会逐块推送响应;若想一次性获取全部结果,请将 stream 设置为 false


2. POST /api/chat

功能:使用指定模型生成聊天对话中的下一条消息。默认 流式 返回(stream),可通过 stream:false 改为单次返回。

2.1 基本参数

参数必填类型说明
modelstring模型名称
messagesobject[]聊天历史(每条消息对象,详见下表)
toolsobject[]若模型支持,列出模型可调用的工具(JSON 格式)
thinkboolean对于思维模型,是否在生成前进行“思考”
messages 中的单条消息对象结构
字段必填类型说明
rolestring消息角色:systemuserassistanttool
contentstring消息内容
thinkingstring(思维模型专用)模型的思考过程
imagesstring[]base64 编码的图像列表(仅对多模态模型如 llava 有效)
tool_callsobject[]模型想要调用的工具列表(JSON 格式)
tool_namestring若已执行工具,返回的工具名称(用于告知模型结果)

2.2 高级可选参数

参数必填类型说明
formatstring返回数据的格式。可选 json(JSON 模式)
optionsobjectModelfile 中定义的其它模型参数,例如 temperature
streambooleanfalse 时返回单个完整响应对象;true(默认)返回对象流
keep_alivestring控制模型在请求结束后保持在内存中的时长(默认 5m

提示:在使用多模态模型时,可在 messagesgenerate 请求中通过 images 字段传入 Base64 编码的图片;若模型不支持图片,则会返回错误。


🛠 常用示例(cURL)

# 1️⃣ generate(流式)
curl -X POST "http://127.0.0.1:9089/api/generate" \-H "Content-Type: application/json" \-d '{"model": "gpt_oss_20b:v1","prompt": "请用中文解释量子纠缠的概念。","stream": true}'# 2️⃣ chat(一次性返回)
curl -X POST "http://127.0.0.1:9089/api/chat" \-H "Content-Type: application/json" \-d '{"model": "gpt_oss_20b:v1","messages": [{"role":"system","content":"你是一个乐于助人的助手"},{"role":"user","content":"请帮我写一段 Python 代码实现快速排序。"}],"stream": false}'

📌 注意事项

  1. 必填参数 必须完整,否则会返回 400 Bad Request
  2. 流式(stream) 返回时,响应体使用 Server‑Sent Events(SSE) 或类似的分块传输方式。
  3. keep_alive 的时间格式支持 s(秒)、m(分钟)、h(小时),如 10m2h
  4. 如需 原始(未格式化)输出,请将 raw: true 与自定义模板一起使用。

持久化API

curl -X POST http://127.0.0.1:9089/api/generate \-H "Content-Type: application/json" \-d '{"model": "gpt_oss_20b:v1", "keep_alive": -1}'

Openai 格式(配置到new_api中)

http://www.dtcms.com/a/319932.html

相关文章:

  • Numpy科学计算与数据分析:Numpy数组创建与应用入门
  • DevOps简单教程应用
  • ⭐CVPR2025 RoboBrain:机器人操作的统一大脑模型[特殊字符]
  • Redis(八):Redis高并发高可用(哨兵Sentinel)
  • 上海一家机器人IPO核心零部件依赖外购, 募投计划频繁修改引疑
  • QDataStream入门
  • Redis实战(8) -- 分布式锁Redission底层机制
  • 如何解决用阿里云效流水线持续集成部署Nuxt静态应用时流程卡住,进行不下去的问题
  • 基于 MATLAB 的 QPSK 调制、解调、通过高斯信道的误码率计算,并绘制误码率图和眼图、星座图
  • 火山引擎接入豆包AI(纯前端调用api的方式)
  • Java 大视界 -- Java 大数据在智能教育在线课程互动优化与学习体验提升中的应用(386)
  • E频段芯片解决方案
  • npm 与 npx 区别详解。以及mcp中npx加载原理。
  • 2025年生成式大模型部署与推理优化全景解析
  • 14天搞定Excel公式:告别加班,效率翻倍!
  • 【YOLOv8改进 - 上采样】EUCB:(Efficient Up-convolution Block,高效上卷积块)实现特征图尺度匹配和高效上采样
  • 网络编程基石:域名系统与默认端口号详解
  • 文章采集发布Destoon网站技巧
  • C语言函数与预编译:模块化编程的精髓
  • 【AI论文】细胞锻造(CellForge):虚拟细胞模型的智能体化设计
  • 上岸AAAI 2025:自适应框架+前沿算法,顶会热点方向
  • 【VLLM篇】:原理-实现
  • 【论文阅读】基于元模型的体系知识图谱构建
  • spring boot学习计划
  • 什么是AI Agents
  • 机器学习算法篇(四)决策树算法
  • XCZU19EG-2FFVB1517I FPGA Xilinx AMD ZynqUltraScale+ MPSoC
  • 如何验证Go代理是否设置成功?
  • 深入探索C++模板实现的单例模式:通用与线程安全的完美结合
  • SpringBoot的优缺点