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

Ollama API 详解(学习笔记)

1.API 详解

Ollama对客户端相关的命令也提供API操作的接口,方便在企业应用中通过程序类操作私有大模型。

1.1Apifox介绍与安装

Apifox 是一款集成了 API 文档、API 调试、API Mock、API 自动化测试于一体的协同工作平台。它的目标是成为 API 开发、测试、运维整个生命周期中的“一站式”解决方案。说白了就是一个API的“全能工作台”。

具体内容可以查看apifox的帮助文档:帮助中心 - Apifox 帮助文档

Apifox的安装,就是点开官网,找到自己的系统对应的版本就行

Apifox提供了桌面客户端和Web版两种方式,你可以按需选择:

选择方案优点适合人群
桌面版(推荐)功能最完整、性能最佳,支持离线工作和丰富的环境配置。所有用户,尤其是需要深度使用和高效工作的开发者。
Web版免安装,有浏览器就能用,方便快捷。偶尔使用、或无法安装软件的临时场景。

访问官网https://www.apifox.cn,或者直接去官网的下载页面,按照自己的操作系统选择对应版本就行:

  • Windows:选择 Windows 版本,下载Apifox-windows-latest.exe安装包(约 187MB)。

  • macOS:根据你的Mac芯片(Intel 或 Apple M1/M2),选择对应的.dmg安装包。

  • Linux:选择.AppImage.tar.gz格式的安装包。

下载完安装包后,双击默认下一步

目标文件夹可以自己找一个盘放(尽量不是C盘)

1.2导入Apifox文档

为了方便后续使用程序接入Ollama中的大模型,在此可以先通过Apifox进行Api的快速体验与学习。 《Ollama.apifox.json》文件提供了供Apifox软件导入的json内容,再此我们先导入到Apifox软件中,快速体验一下API相关功能(Apifox不只能读取JSON文件)。

Step 1:打开导入项目

Step 2:选择导入的文件

Step 3:输入项目名称

将《Ollama.apifox.json》文件导入,创建项目名称

1.3 配置环境地址

Oallma支持的API可以在API 参考文档 -- Ollama 中文文档|Ollama官方文档了解详解,双击打开查看:

配置测试环境地址:

  • IP 地址 = 酒店的地址

    • 127.0.0.1是一个特殊地址,它不指向外部街道,而是指向酒店的“自我中心控制室”。无论谁从楼里哪个房间往127.0.0.1发消息,消息都只在酒店内绕一圈,绝不走到大街上。

  • 端口号 = 酒店里的房间号

    • 11434就是第 11434 号房间

    • 每个房间(端口)只能住一个服务(比如 Ollama、MySQL、Nginx 等)。

    • 房间门上会清楚写着这个房间是干什么的(服务协议),但房间号本身只是编号,不负责开门(那是操作系统的活)。

  • http://127.0.0.1:11434= 完整的房间寻址指令

    • 意思就是:“去自我中心控制室(127.0.0.1),找到 11434 号房间,然后用 HTTP 协议跟里面的人(服务)说话。”

1.4 聊天对话接口说明

聊天对话接口,是实现类似ChatGPT、豆包、deepseek等网页对话功能的关键接口,请求的地址与参数如下:

POST /api/chat

{
"model": "qwen2.5:0.5b",
"messages": [
{
"role": "string",
"content": "string",
"images": "string"
}
],
"format": "string",
"stream": true

}

具体的请求参数可以看文档预览

🧠 Ollama API 请求参数

① 基础对话参数(每次请求几乎必填)

参数名 (位置:body)

类型

必选

🗣️ 大白话解释

💡 示例 / 取值范围

📌 小贴士

model

string

✅ 是

你想跟哪个模型聊天?

"llama3.2","qwen2.5","deepseek-r1:7b"

先用ollama list看你电脑上装了哪些模型,填一模一样的名字。

messages

array[object]

✅ 是

整个对话记录,就像微信聊天记录一样。

[{"role":"user","content":"嗨"}]

数组里每个对象是一条消息,按时间顺序从旧到新排列。

role

string

✅ 是

这句话是谁说的?

"system"(系统指令),"user"(你),"assistant"(AI)

system用来给 AI 设定“人设”,比如“你是一个懂 Linux 的专家”。

content

string

✅ 是

说话的具体内容。

"解释一下什么是端口"

支持纯文本,也支持多模态图片(配合images字段)。

images

string[]

❌ 否

你想让 AI “看”的图片。

["iVBORw0KGgoAAAANSUhEUgAA..."]

图片需转为 base64 字符串(不含data:image/前缀)。

② 生成控制参数(调整回答的风格和长度)

参数名 (位置:body)

类型

必选

🗣️ 大白话解释

💡 示例 / 取值范围

📌 小贴士

stream

boolean

❌ 否

回答是一次性全部蹦出来,还是一条一条往外冒?

false(一次性),true(流式)

流式体验更像 ChatGPT,但 Apifox 里建议先设false方便看完整结果。

keep_alive

string

❌ 否

模型这次聊完后,在内存里再待多久才“下机”?

"5m"(5分钟),"1h","-1"(永不卸载),"0"(立即卸)

频繁调用时设长一点(如10m)能加快响应;内存紧张就设0

format

string

❌ 否

强制 AI 按某种格式回答。

"json"

目前主要支持json,会让模型输出合法的 JSON。

stop

string[]

❌ 否

遇到这些词就立马停止生成,别再说下去了。

["\n", "用户:", "Observation:"]

常用语:换行符\n、特定的结束标记。

③ 高级生成参数(藏在options对象里,控制创造性和重复性)

参数名 (在options内)

类型

必选

🗣️ 大白话解释

💡 取值范围(默认值)

📌 小贴士

temperature

number

❌ 否

回答的“脑洞”有多大。越高越放飞,越低越老实。

0 ~ 2(默认 0.8)

讲段子用 1.2,写代码用 0.2。

top_p

number

❌ 否

词库的“保守选区”。越低越只挑最稳的词。

0 ~ 1(默认 0.9)

temperature二选一微调,一般调temperature就够了。

top_k

integer

❌ 否

每次只从可能性最高的前 K 个词里选。

正整数(默认 40)

值越小回答越单调,越大则越容易选到生僻词。

repeat_penalty

number

❌ 否

重复说话的惩罚力度。>1 会减少重复。

0 ~ 2(默认 1.1)

设成 1.2 能有效减少“车轱辘话”。

repeat_last_n

integer

❌ 否

往前回顾多少 token 来检查重复。

默认 64,0=禁用,-1=全部上下文

设小一点可以让模型不那么执着于复读刚说过的话。

seed

integer

❌ 否

随机数种子。相同种子 + 相同参数 → 相同回答。

随意(如 42)

用于调试或复现某个结果。

④ 扩展参数(工具调用,目前较高级)

参数名 (位置:body)

类型

必选

🗣️ 大白话解释

💡 示例

📌 小贴士

tools

array[object]

❌ 否

给 AI 一把“瑞士军刀”,让它能查询天气、算数学等。

[{"type":"function","function":{"name":"get_weather",...}}]

需要模型支持(如llama3.2及以上),目前属于进阶玩法。

还有一个简单方法,直接自动生成,修改时注意格式

1.5 聊天对话示例

自动合并就可以整条显示

Apifox 接口名称🛠️ Ollama CLI 命令 (原始层)🌐 Ollama REST API (接入层)核心API地址
POST 聊天对话接口ollama run <model_name>ollama run <model_name> <prompt>启动交互式对话POST /api/chathttp://127.0.0.1:11434/api/chat
POST 向量化接口需借助API或第三方库调用POST /api/embedhttp://127.0.0.1:11434/api/embed
GET 查询运行中的模型列表ollama psGET /api/pshttp://127.0.0.1:11434/api/ps
GET 查询可用的模型列表ollama listGET /api/tagshttp://127.0.0.1:11434/api/tags
POST 拉取模型ollama pull <model_name>POST /api/pullhttp://127.0.0.1:11434/api/pull
DEL 删除模型ollama rm <model_name>DELETE /api/deletehttp://127.0.0.1:11434/api/delete

2. Ollama快速搭建ChatBot

2.1 ChatBox是什么

ChatBox是一款多平台支持的AI客户端软件,凭借其强大的功能、简洁的界面设计以及对用户隐私的高度重视,迅速成为办公学习领域的热门工具。ChatBox不仅仅是一个简单的AI聊天工具,它是一款功能丰富、适用于多种场景的智能AI助手,涵盖从日常办公到专业开发的广泛需求。

核心功能

  1. 全平台支持:ChatBox支持Windows、MacOS、Linux、Android、iOS以及网页版,用户可以在任何设备上无缝切换使用,实现跨平台数据同步。

  2. 智能文档与图片交互:支持与各类文档(包括PDF文件、Word文档、Excel表格、TXT文本)和图片进行智能交互,AI可以理解内容并提供智能分析和响应。

  3. AI编程助手:提供智能代码生成与预览、代码审查与重构建议、程序调试与安全检查等功能,支持多种编程语言。

  4. 实时联网搜索:通过AI联网搜索功能,帮助用户获取最新的事实、新闻和数据,支持URL分析、内容摘要以及事实核查。

  5. AI生成的图表与可视化:能够生成清晰、可定制的图表,帮助用户理解复杂的概念和数据。

  6. 图像生成与渲染:支持用户通过描述生成高质量的图片,满足创意表达和设计需求。

  7. LaTeX与Markdown支持:内置LaTeX和Markdown渲染功能,帮助用户清晰表达复杂公式和想法。

  8. 数据隐私与安全:高度重视用户数据的隐私,所有数据默认存储在本地,确保用户完全掌控自己的信息。

版本区别

ChatBox提供了社区免费版(开源版)和收费专业版(官方版)两个主要选择,满足不同用户的需求。

  • 社区免费版(开源版):完全开源免费,用户可以自由下载和使用,特别适合开发者和技术爱好者。支持多种AI大模型的接入,但用户需自行配置API密钥。

  • 收费专业版(官方版):提供高级模型和标准模型的访问额度,用户无需自己接入模型API,适合开箱即用的使用场景。

使用示例

通过OpenRouter API接入DeepSeek-R1模型免费版的具体配置步骤如下:

  1. 注册OpenRouter账号并获取API密钥。

  2. 打开ChatBox客户端或网页版,进入“设置”页面。

  3. 在“API配置”中填写信息,并输入生成的API密钥。

优势

ChatBox在Mermaid流程图表渲染方面表现突出,能够快速生成流程图、时序图、甘特图等多种图表形式,满足用户的可视化需求。相比其他工具,ChatBox在这方面的支持更加完善。

ChatBox凭借其强大的AI对话功能、全平台支持和对用户隐私的高度重视,成为AI助手领域的优秀工具。无论是社区免费版还是收费专业版,ChatBox都能为用户提供卓越的AI使用体验。

2.2 安装ChatBox并集成ollama

官网:Chatbox AI官网:办公学习的AI好助手,全平台AI客户端,官方免费下载

安装和上面Apifox一样,安装完成后,打开chatbox软件,选择ollama服务器中大模型

2.3 ChatBox界面介绍

下面图标的gong

按钮图标功能名称功能描述
+添加内容点击后弹出菜单,提供三种选项:
添加图片:上传图片供AI识别或分析。
选择文件:上传本地文档(如PDF、TXT等)让AI阅读或处理。
添加链接:输入网页URL,让AI抓取网页内容进行分析。
🔨MCP 服务器用于连接和管理MCP服务器。MCP通常指“模型上下文协议”,允许AI访问外部工具或数据源。点击可添加您的第一个MCP服务器。
📖知识库用于创建和管理个人知识库。您可以将常用文档、笔记或资料存入知识库,让AI在对话中引用这些专属信息,提供更精准的回答。
🌐联网搜索开启或关闭AI的联网功能。开启后,AI可以实时访问互联网,获取最新资讯、数据或事实,增强回答的时效性。
📄新话题用于开启一个全新的对话。点击后,当前对话历史将被清空,AI会以“空白状态”开始与您交流,适合开启一个与之前无关的新主题。
⚙️对话设置用于调整当前对话的参数。您可以设置模型温度、回复风格、最大回复长度等,以优化AI的输出效果,使其更符合您的需求。

然后我们进入对话:

3. 个人总结

最后总结一下,首先感谢能看到这里的同学和大佬们。

以上就是我从零开始折腾本地大模型的全过程了。作为一个大二学生,刚开始接触这些东西的时候也是一头雾水。但真正动手去试了之后才发现,其实门槛没有想象中那么高。当然,过程中也踩了不少坑,这里就不一一列举了,跟着视频和老师讲的做与自己做完全不一样。千里之行,始于足下

另外也想说,本地部署确实有它的局限性。我的笔记本显卡也就那样,跑个7B的模型已经有点吃力了,想跑更大的模型或者同时跑多个任务,风扇呼呼转。但我平时基本不太需要用本地模型。

最后,我也是一个小白,很多地方理解得不一定准确。如果大家发现问题,欢迎在评论区指出,我会认真修正的!也希望能和同样对 AI 感兴趣的同学多多交流~ 🤝

祝大家都能跑通自己的第一个本地大模型~🚀

http://www.jsqmd.com/news/868571/

相关文章:

  • 到底什么是 AI 测试?AI 测试与传统测试的区别?
  • 量子计算与人工智能融合:技术原理与应用前景
  • 魔兽争霸3终极兼容方案:5分钟解决Win10/Win11运行问题
  • Python __slots__ 入门指南
  • 北光恒电:安捷伦DSOS系列示波器(DSOS104/254/404/804)不开机、输出不正常故障排查
  • 2026新疆电力铁塔厂家全梳理:电力铁塔生产厂家+高压铁塔定制厂家+高压输变电塔厂家推荐 - 栗子测评
  • BarrageGrab:构建企业级直播弹幕实时采集系统的技术架构与实践指南
  • 从对话框到具身:AI 交互方式的深层变化
  • A51汇编器Error 21解析与8051开发实践
  • Hermes agent 部署安装windows+D盘超详细步骤
  • 第1章:AI Agent 架构与核心组件
  • CANN 加速库实战:FlashAttention 让大模型推理吞吐翻 3 倍
  • 2026年评价高的惠州短视频剪辑/惠州短视频运营专业公司推荐 - 品牌宣传支持者
  • AgentScope Harness
  • 2026年4月牛市坎推荐,牛市坎,牛市坎有前景吗 - 品牌推荐师
  • CANN内存优化实战:为什么HBM带宽总是第一个打满的
  • RIS辅助MA系统的近场DM设计与优化
  • 2026新疆导线厂家推荐:新疆钢绞线厂家+架空绝缘导线厂家+钢芯铝绞线厂家推荐 - 栗子测评
  • AXI总线协议详解:从核心特性到工程实践
  • 8051单片机Keil C51浮点数输入优化问题解析
  • CTF流量分析入门:10种数字犯罪现场建模与逆向思维框架
  • Keil调试中局部变量修改限制的解决方案
  • Agent热潮下的冷思考 用友付建华:大模型的落地,远没有想象中的快 | 数据猿专访
  • 量子纠错码与硬件定制逻辑门的优化实现
  • 机器人视觉修复与动作映射技术解析
  • OAuthlib错误诊断实战:从invalid_grant到temporarily_unavailable根因定位
  • ARMv8硬件翻译表更新(HTTU)原理与性能优化实践
  • Spring Boot 集成阿里云 OSS 实现文件上传下载的完整指南(从概念到代码)
  • 联想集团第一季营收216亿美元:净利5.9亿美元 股价上涨19% 市值近2000亿港元
  • 分布式锁与事务配合:为什么锁要在事务提交后释放