openai-python

官方 SDK,几行代码调用大模型接口

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开发框架 🍴 复刻 7423 🐛 待处理 121 👀 关注 383
GitHub ↗
GitHub 星标 ★ 31946
维护状态 活跃
是否开源 开源
定价模式 🏷️完全免费 开源库免费使用,调用 API 按 OpenAI 用量计费

项目预览

openai-python 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类开发框架
开发团队openai
定价模式🏷️完全免费
价格说明开源库免费使用,调用 API 按 OpenAI 用量计费
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议Apache-2.0
主要语言Python
技术栈/模型openai,python
GitHub 星标★ 31946
上线时间2020-10-25 00:00:00
代码更新2026-10-25
仓库体积23.1 MB
本站数据更新2026-10-26
维护状态活跃
收录时间2026-10-26
浏览次数0

项目介绍

openai-python 是 OpenAI 官方维护的 Python SDK,把 OpenAI API 的 HTTP 调用封装成类型安全、使用直观的 Python 接口。它解决开发者手写请求、拼接 URL、处理重试与流式响应等重复劳动的问题,让调用对话、嵌入、图像等模型只需几行代码。核心能力包括:完整的同步与异步客户端、基于 Pydantic 的请求与响应类型校验、自动重试与超时控制、流式输出(SSE)支持、文件上传与分页结果迭代,以及可配置的 base_url 和 http_client,便于对接兼容 OpenAI 协议的自建或第三方服务。项目随官方 API 同步更新,文档与示例齐全,是 Python 生态接入大模型能力的事实标准入口。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-10-26 · 当前星标 ★ 31946

技术标签

使用教程

难度:入门 约 10 分钟 部署方式:库/依赖 6 步

环境要求

  • Python 3.10 或更高版本
  • 可用 pip 包管理器的 Python 环境
  • 一个可用的 OPENAI_API_KEY(从平台后台获取)

安装与启动步骤

  1. 1确认 Python 版本

    README 要求 Python 3.10+,先确认本机解释器版本,低于 3.10 需先升级

    python3 --version
  2. 2安装 SDK

    从 PyPI 安装官方包,全程只有一条命令,无需拉取源码编译

    pip install openai
  3. 3设置 API Key

    把密钥放到环境变量,避免写死在源码里被提交到版本库

    export OPENAI_API_KEY="sk-xxxxxxxx"
  4. 4编写调用脚本

    新建 quickstart.py,用 OpenAI 客户端调用 Responses API 并打印文本结果

    cat > quickstart.py <<'EOF'
    import os
    from openai import OpenAI
    
    client = OpenAI(
        api_key=os.environ.get("OPENAI_API_KEY"),
    )
    
    response = client.responses.create(
        model="gpt-5.5",
        instructions="You are a coding assistant that talks like a pirate.",
        input="How do I check if a Python object is an instance of a class?",
    )
    
    print(response.output_text)
    EOF
  5. 5运行脚本

    执行脚本,正常时会直接打印模型返回的文本内容

    python3 quickstart.py
  6. 6核对已安装版本

    若升级后功能没变化,多半是环境仍用旧版本,用该命令确认运行时版本

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

关键配置

配置项必填说明示例
OPENAI_API_KEY是接口调用凭证,客户端默认从该环境变量读取sk-xxxxxxxx
model是指定调用的模型名称,示例中为 gpt-5.5gpt-5.5
api_key否也可作为构造参数传入客户端,覆盖环境变量取值sk-xxxxxxxx

如何确认成功

运行脚本后终端打印出模型生成的文本,且 openai.__version__ 能输出版本号,即安装与调用都正常。

常见问题

Q:装了新版却看不到新功能怎么办?

A:先运行 python3 -c "import openai; print(openai.__version__)" 查看运行时实际版本,若偏旧说明当前 Python 环境还装着旧包,重新安装即可。

Q:异步调用怎么写?

A:把 OpenAI 换成 AsyncOpenAI,每个接口调用前加 await,并在 asyncio.run(main()) 中执行,其余功能与同步客户端一致。

Q:不想把密钥写在代码里怎么办?

A:README 推荐用 python-dotenv,把 OPENAI_API_KEY="My API Key" 写入 .env 文件,代码通过 os.environ 读取,避免密钥进入源码管理。

Q:能换成更底层的异步 HTTP 实现吗?

A:可以,执行 pip install openai[aiohttp],然后用 DefaultAioHttpClient() 作为 http_client 参数实例化 AsyncOpenAI。

注意事项

  • 项目要求 Python 3.10 及以上,版本过低会在导入或运行时出错。
  • API Key 只放环境变量或 .env 文件,不要提交到 Git 仓库。
  • 同步与异步客户端功能一致,按业务场景选择,异步代码记得加 await。
  • 接口与类型定义随官方规范生成,升级后建议复查调用的参数名。

核心亮点

  • 官方维护,与 OpenAI API 新能力同步更新,类型定义完整
  • 同时提供同步与异步客户端,流式响应和自动重试开箱即用
  • 基于 Pydantic 做请求响应校验,IDE 补全和类型提示体验好

不足之处

  • 强绑定 OpenAI 接口形态,换用非兼容协议的其他模型服务需自行适配
  • 版本迭代较快,偶有破坏性变更,升级需关注迁移说明

适用场景

  • Python 后端服务集成对话、嵌入等大模型能力
  • 数据脚本或 Agent 工具中批量调用模型接口
  • 教学与原型开发中快速验证提示词与模型效果

替代项目

langchain、litellm、openai-node

上一篇:OpenAI

下一篇:openai-dotnet

同类项目推荐

graph-of-thoughts 开源

把AI思考画成图,复杂问题解得快又准

Official Implementation of "Graph of Thoughts: Solving Elaborate Problems with Large···

★ 2846 2026-08-09
local-rag-researcher-deepseek 开源

本地跑通深度研究,私密数据不泄露,自动生成报告

Local RAG researcher agent built using Langgraph, DeepSeek R1 and Ollama

★ 142 2026-08-09
langgraphjs 开源

把语言代理画成图,轻松搞定复杂流程和状态管理

Framework to build resilient language agents as graphs.

★ 3370 2026-08-09
Graphite 开源

把多个 AI 模型拖进节点图,边想边画边出结果

A private, modular node based AI workspace for thinking and creation. Seamlessly con···

★ 147 2026-08-09
youtu-agent 开源

用开源模型快速搭建你的 AI 智能体,简单不简陋。

A simple yet powerful agent framework that delivers with open-source models

★ 4628 2026-08-09
incur 开源

一套 CLI,人和 Agent 都能稳定调用

CLI framework for agents and humans

★ 641 2026-10-13
tilelang 开源

用 Python 写高性能 GPU 算子,少调优也能跑得快

Domain-specific language designed to streamline the development of high-performance ···

★ 8766 2026-10-08
clauder 开源

给 Claude Code 加道安全锁,放心让 AI 写代码

> CLAUDER - a safer and supercharged Claude Code

★ 58 2026-08-09