4、环境准备与依赖安装:Python环境配置、requests库安装、openai库安装、Ollama服务启动与验证

说实话,很多同学在学API对接时,最容易卡住的反而不是代码逻辑,而是环境没搭好。我见过太多人花了两小时调代码,最后发现是Python版本不对,或者Ollama服务根本没起来。所以这一章,咱们把地基打牢。

本章核心目标:在你的机器上搭建一套完整的开发环境,让Python能顺利调用Ollama的API,并且验证整个链路是通的。

4.1 Python环境配置

我个人习惯用Python 3.10以上版本。为什么?因为新版本的openai库对3.8以下的支持已经逐渐弱化了。你在项目中如果遇到SSL证书报错或者某些异步方法找不到,八成是Python版本太老。

第一步:检查当前Python版本

打开你的终端(Windows用CMD或PowerShell,Mac/Linux用Terminal),输入:

python --version

如果显示的是 Python 3.8.x 或更低,我建议你升级。如果你机器上同时有Python2和Python3,可能需要用 python3 --version 来确认。

第二步:创建虚拟环境(强烈推荐)

嗯,这里要注意。千万别把依赖直接装到全局环境里。我曾经有一次把项目A的依赖和项目B的依赖混在一起,结果两个项目都跑不起来,排查了一下午才发现是某个库版本冲突。从那以后,我每个项目都老老实实用虚拟环境。

# 创建虚拟环境
python -m venv ollama_env

# 激活虚拟环境
# Windows:
ollama_env\Scripts\activate

# Mac/Linux:
source ollama_env/bin/activate

激活成功后,你的终端前面会出现 (ollama_env) 字样,这就对了。

小技巧:如果你用的是VS Code,可以直接在项目根目录下创建虚拟环境,VS Code会自动识别并提示你切换解释器。省得每次手动激活。

4.2 安装requests库

requests库是Python世界里最常用的HTTP请求库。虽然openai库内部也封装了请求,但我们在调试时经常需要直接用requests来测试接口通不通。说白了,它就是你的“网络探针”。

安装命令很简单:

pip install requests

验证是否安装成功:

python -c "import requests; print(requests.__version__)"

如果输出版本号,比如 2.31.0,那就没问题。如果报错说找不到模块,检查一下你是不是在虚拟环境里。

避坑指南:我曾经遇到过pip install成功了,但Python里import却报错。后来发现是因为系统里同时装了Python 3.9和3.11,pip默认装到了3.9,而我的虚拟环境用的是3.11。所以安装前一定要确认你激活了正确的虚拟环境。

4.3 安装openai库

openai库是官方提供的Python SDK。但这里有个关键点:Ollama兼容的是OpenAI的接口格式,所以我们直接用openai库,把base_url指向Ollama的地址就行。你想想看,这多方便——代码几乎不用改,换个base_url就能在本地跑大模型。

安装命令:

pip install openai

验证安装:

python -c "import openai; print(openai.__version__)"

目前我推荐使用 openai >= 1.0.0 的版本。1.0版本之后,API的调用方式有了较大变化,更简洁也更统一。如果你用的是旧版本,建议升级:

pip install --upgrade openai

4.4 Ollama服务启动与验证

这是整个环境准备中最关键的一步。Ollama服务没起来,后面所有代码都是白搭。

第一步:启动Ollama服务

如果你是在本地安装的Ollama,通常服务会自动启动。但为了保险起见,我建议手动确认一下:

# 启动Ollama服务(Mac/Linux)
ollama serve

# Windows用户可以在开始菜单找到Ollama,或者用命令行
ollama serve

启动成功后,你会看到类似这样的日志:

INFO[0000] Listening on 127.0.0.1:11434

端口11434就是Ollama的默认监听端口。记住这个端口号,后面配置base_url时会用到。

第二步:拉取一个模型

Ollama本身只是一个框架,你需要拉取具体的模型才能用。我个人习惯先用 llama3.2qwen2.5 这类小模型做测试,速度快,资源占用低。

# 拉取模型(以qwen2.5:1.5b为例)
ollama pull qwen2.5:1.5b

下载完成后,你可以直接测试一下:

ollama run qwen2.5:1.5b "你好,请用一句话介绍自己"

如果模型能正常回复,说明Ollama本身没问题。

第三步:用Python验证接口兼容性

这才是我们这节课的重点。我们要确认openai库能通过Ollama的接口调用模型。写一个简单的测试脚本:

from openai import OpenAI

# 初始化客户端,指向Ollama的地址
client = OpenAI(
    base_url="http://localhost:11434/v1",
    api_key="ollama"  # Ollama不验证api_key,但openai库要求必填,随便填一个
)

# 发送请求
response = client.chat.completions.create(
    model="qwen2.5:1.5b",
    messages=[
        {"role": "user", "content": "你好,请用一句话介绍自己"}
    ]
)

# 打印回复
print(response.choices[0].message.content)

运行这个脚本,如果能看到模型返回的内容,恭喜你——环境搭建成功!

验证成功的标志:终端输出了模型的回复,且没有报错。如果报错,99%的情况是Ollama服务没启动,或者端口写错了。

4.5 知识体系总览

为了让你对整个环境准备有个全局认识,我画了一张流程图。你看一眼就明白各个组件之间的关系了:

环境准备与依赖关系图 Python 3.10+ 虚拟环境 ollama_env 依赖库安装 requests + openai Ollama 服务 监听 localhost:11434 已拉取的模型 如 qwen2.5:1.5b 验证脚本 test_ollama.py 调用 openai 库 → 指向 Ollama 接口 ✅ 成功输出模型回复

这张图其实就说明了一件事:你的Python代码(通过openai库)向Ollama服务发请求,Ollama调用本地模型返回结果。整个链路中,任何一个环节断了,验证脚本都会报错。

4.6 常见问题与排查

问题现象 可能原因 解决办法
Connection refused Ollama服务未启动 运行 ollama serve 启动服务
ModuleNotFoundError 依赖未安装或虚拟环境未激活 检查终端是否有 (ollama_env) 前缀
模型返回乱码 模型未正确拉取或版本不兼容 重新 ollama pull 指定模型
openai报错404 base_url路径写错 确认是 http://localhost:11434/v1 末尾有 /v1

我的经验:如果你在Windows上遇到端口被占用,可以用 netstat -ano | findstr :11434 查看是谁占用了端口。有时候WSL或者Docker也会占用这个端口,改一下Ollama的监听端口就行。

好了,环境准备就到这里。你现在应该已经跑通了第一个测试脚本。记住这个感觉——后面所有的API调用,都是在这个基础上展开的。

专注资料整理