项目简介
本项目基于Ollama本地大模型,利用streamlit实现前端界面,实现聊天对话机器人。
整体界面如下:

源码地址
连接地址: https://github.com/secondtonone1/python_ai
Ollama简介
Ollama:是一款旨在简化大型语言模型本地部署和运行过程的开源软件。
中文名:羊驼
Ollama 是一款开源、跨平台的本地大语言模型(LLM)运行与管理工具,采用 MIT 许可,核心目标是让用户在个人设备上零门槛部署、管理和运行各类开源大模型,被称为 “大模型领域的 Docker”。
核心定位
- 本地化优先:所有数据与计算在本机完成,不上云,保障隐私安全与离线可用。
- 极简部署:封装底层环境、格式转换、硬件适配等复杂细节,实现一条命令安装、一条命令拉取 / 运行模型。
- 模型管家:统一管理主流开源模型,支持一键下载、删除、更新与版本控制。
主要特点
- 跨平台:支持 Windows、macOS、Linux,也可通过 Docker 部署。
- 硬件友好:自动识别并调用 NVIDIA/AMD GPU、Apple Silicon 加速;支持 GGUF 量化,降低显存门槛,普通电脑也能运行 7B–70B 模型。
- 丰富模型库:内置 Llama 3、Qwen、DeepSeek、Mistral、Gemma 等主流开源模型,支持社区自定义模型。
- 标准 REST API:默认提供
http://localhost:11434接口,涵盖模型管理、对话、生成、流式输出等,兼容 OpenAI 接口格式,便于集成到 Apifox、Postman 或自研应用。 - 开发者友好:提供 Python/JS/Go 等 SDK,支持多轮对话、上下文记忆、思考链输出与工具调用。
典型用途
- 隐私敏感场景(企业内部文档、个人数据处理)
- 离线环境(无网 / 弱网)智能助手开发
- 快速本地调试与原型验证(无需云端账号)
- 构建私有知识库与 RAG 应用Ollama
Ollama部署安装
环境说明
- 支持系统:Windows / macOS / Linux
- 默认服务端口:11434
- 安装后默认本地接口地址:
http://localhost:11434 - 自动后台常驻运行,开机自启
Windows 安装
- 官网下载安装包:https://ollama.com/download/windows
- 双击
OllamaSetup.exe默认下一步安装即可 - 安装完成自动启动后台服务
- 验证安装(CMD/PowerShell 执行)
安装好后重新开cmd测试
1 | ollama --version |
macOS 安装
方式 1:官网安装包
下载:https://ollama.com/download/mac
拖拽到应用程序,打开即自动部署后台服务。
方式 2:Homebrew 安装
1 | brew install ollama |
启动服务:
1 | ollama serve |
Linux 安装(推荐一键脚本)
一键安装(通用)
运行
1 | curl -fsSL https://ollama.com/install.sh | sh |
- 自动配置系统服务、开机自启、后台守护进程
- 安装完成直接可用
手动启停服务
运行
1 | # 启动 |
Docker 容器安装(服务器 / 隔离环境推荐)
1. 拉取镜像并启动
运行
1 | docker run -d \ |
2. 容器内操作模型
运行
1 | # 进入容器 |
安装后基础验证(全平台通用)
- 命令行测试拉取模型运行
1 | ollama run deepseek-r1:1.5b |
- API 接口连通性测试
运行
1 | curl http://localhost:11434/api/tags |
能返回本地模型列表即安装部署正常。
Ollama命令
基础版本与服务命令
运行
1 | # 查看版本 |
模型拉取与运行
运行
1 | # 拉取模型 |
模型管理命令
运行
1 | # 查看本地已安装所有模型 |
进阶常用命令
运行
1 | # 停止正在运行的模型 |
编程代码助手(适合 IT 教学)
新建文件命名 Modelfile,内容:
1 | FROM llama3:latest |
创建命令:
1 | ollama create code-teacher -f Modelfile |
运行
1 | ollama run code-teacher |
HTTP协议基础
Ollama启动后将作为本地HTTP接口服务运行,所有模型管理、对话生成等操作均需通过HTTP请求完成。因此,掌握HTTP基础是实现Ollama对接的前提。
HTTP协议定义
HTTP(超文本传输协议)是客户端与服务端之间进行数据通信的通用网络协议,规定了客户端发起请求、服务端返回响应的标准格式与交互规则。在Ollama对接场景中,客户端(Apifox、代码、浏览器等)通过HTTP请求与Ollama服务端进行交互,获取模型服务。
核心角色
- 客户端:主动发起HTTP请求的主体,包括Apifox、Python/Java代码、浏览器、嵌入式程序等。
- 服务端:被动接收并响应HTTP请求的主体,即本地启动的Ollama服务,默认占用11434端口。
核心请求方式
Ollama接口仅涉及两种HTTP请求方式,根据业务场景选择使用:
GET请求
用途:从Ollama服务端获取已存在的数据,不修改服务端数据。
特点:无请求体,请求参数可拼接在URL末尾,适用于查询类操作。
POST请求
用途:向Ollama服务端提交数据、发起业务请求,如对话交互、文本生成、模型拉取等。
特点:支持请求体,常用JSON格式传递参数,数据传输安全、可承载内容量大,适用于提交类、指令类操作。
HTTP接口三要素
调用任何HTTP接口,需明确以下三要素,Ollama接口也遵循此规则:
- 请求地址(URL):Ollama服务的基础地址固定为 http://localhost:11434,接口路径拼接在基础地址后。
- 请求方法(GET/POST):根据接口功能选择,查询用GET,提交/指令用POST。
- 请求体/参数:POST请求通过JSON格式传递参数(如模型名、提问内容);GET请求参数可省略或拼接在URL后。
地址区分


浏览器访问Ollama服务

数据交互格式
Ollama所有接口的请求参数与响应数据均采用JSON格式。JSON为键值对结构,具有易读性强、跨编程语言兼容的特点,可被Python、Java、嵌入式开发相关编程语言直接解析。
Ollama的核心运行机制是启动本地HTTP服务,监听11434端口。开发者通过客户端发起HTTP请求,向Ollama服务端传递指令(如查询模型、发起对话),Ollama服务端执行对应操作后,以JSON格式返回响应数据。掌握HTTP基础后,即可通过标准HTTP请求实现Ollama接口的调用。
Ollama核心API接口
以下为Ollama常用核心API接口,结合前文HTTP基础知识点,明确接口调用细节,可直接用于实操调试。
查看本地模型列表
用途:查询本地已安装的所有Ollama模型信息,包括模型名、修改时间、大小等。
- 请求方式:GET
- 接口地址:http://localhost:11434/api/tags
- 实操说明:使用Apifox或浏览器,选择GET请求,输入接口地址,发起请求后,将返回JSON格式的本地模型列表。
大模型对话接口
用途:与Ollama模型进行多轮对话交互,适用于智能助手、聊天类功能开发。
- 请求方式:POST
- 接口地址:http://localhost:11434/api/chat
- 请求体(JSON格式):
客户端发送请求
1 | { |
服务器回复
1 | { |
让模型有记忆
客户端追问问题,需要在原有的请求和回答的基础上,继续追问才可以
将客户端和ollama服务器回复的结果,做成列表,放入messages中
1 | { |
文本生成接口
用途:根据指定提示词,让Ollama模型生成文本内容(非对话场景,如文案、代码生成)。
- 请求方式:POST
- 接口地址:http://localhost:11434/api/generate
- 请求体(JSON格式):
1 | { |
接口通用注意事项
- 调用接口前,需确保Ollama服务已启动,且端口11434未被占用。
- POST请求必须指定请求头Content-Type: application/json,否则会导致请求失败。
- 请求体中model参数需填写本地已安装的模型名称,否则会返回模型不存在错误。
- stream参数设为true时,将采用流式输出(实时返回响应内容),适合前端展示;false为一次性返回完整响应。
ApiFox对接Ollama
ApiFox官网

ApiFox测试HTTP
创建项目

选择空白项目

输入请求连接和内容

请求内容
1 | { |
请求链接
1 | http://localhost:11434/api/chat |
回复内容
1 | { |
使用Ollama规则构建apifox的请求项目
我用豆包生成了一个Ollama.apifox.json文件,放入资料包了,大家可以去源码中查看
可以再次新建一个项目,这次导入json文件即可






接口环境配置



调试
调试内容和之前一致,无需修改
1 | { |
