【AI 大模型】OpenAI 接口调用 ① ( 安装 openai 软件包 | 查看 openai 软件包版本 | PyCharm 中开发 Python 程序调用 OpenAI 接口 )
CSDN 2024-07-06 15:35:03 阅读 63
文章目录
一、安装 Python SDK二、安装 OpenAI Python SDK1、安装 openai 软件包2、查看 openai 软件包版本3、openai 接口参考文档
三、PyCharm 中开发 Python 程序调用 OpenAI 接口1、PyCharm 创建 Python 项目2、API Key 配置用法3、GPT3 模型和 GPT4 模型4、Python 代码示例
博客源码下载地址 : https://download.csdn.net/download/han1202012/89478137
一、安装 Python SDK
参考 【开发环境】Windows 中安装 Python 各个版本 ( 下载 Python 各版本 SDK | 安装 Python ) 博客 , 在 Windows 上安装 Python SDK ;
安装了 Python SDK 之后 , 才能 使用 Python 的包管理工具 pip , 通过 pip install 命令 , 可以方便地将各种 Python 包安装到本地的 Python 环境中 ;
安装 Python 包命令如下 :
<code>pip install package_name
package_name 就是要安装的 Python 包的名称 ;
二、安装 OpenAI Python SDK
1、安装 openai 软件包
安装 OpenAI 的 Python SDK , 执行
pip install openai
命令 , 安装 OpenAI SDK ;
OpenAI Python SDK 安装过程输入结果如下 :
C:\Users\octop>pip install openai
Collecting openai
Downloading openai-1.35.3-py3-none-any.whl (327 kB)
|████████████████████████████████| 327 kB 218 kB/s
Collecting sniffio
Downloading sniffio-1.3.1-py3-none-any.whl (10 kB)
Collecting anyio<5,>=3.5.0
Downloading anyio-3.7.1-py3-none-any.whl (80 kB)
|████████████████████████████████| 80 kB 2.6 MB/s
Collecting cached-property; python_version < "3.8"
Downloading cached_property-1.5.2-py2.py3-none-any.whl (7.6 kB)
Collecting distro<2,>=1.7.0
Downloading distro-1.9.0-py3-none-any.whl (20 kB)
Requirement already satisfied: typing-extensions<5,>=4.7 in d:\001_develop\022_python\python37_64\lib\site-packages (from openai) (4.7.1)
Collecting pydantic<3,>=1.9.0
Downloading pydantic-2.5.3-py3-none-any.whl (381 kB)
|████████████████████████████████| 381 kB 2.2 MB/s
Collecting httpx<1,>=0.23.0
Downloading httpx-0.24.1-py3-none-any.whl (75 kB)
|████████████████████████████████| 75 kB 5.5 MB/s
Collecting tqdm>4
Downloading tqdm-4.66.4-py3-none-any.whl (78 kB)
|████████████████████████████████| 78 kB 2.6 MB/s
Collecting exceptiongroup; python_version < "3.11"
Downloading exceptiongroup-1.2.1-py3-none-any.whl (16 kB)
Collecting idna>=2.8
Downloading idna-3.7-py3-none-any.whl (66 kB)
|████████████████████████████████| 66 kB 4.5 MB/s
Collecting pydantic-core==2.14.6
Downloading pydantic_core-2.14.6-cp37-none-win_amd64.whl (1.9 MB)
|████████████████████████████████| 1.9 MB 3.3 MB/s
Collecting annotated-types>=0.4.0
Downloading annotated_types-0.5.0-py3-none-any.whl (11 kB)
Requirement already satisfied: importlib-metadata; python_version == "3.7" in d:\001_develop\022_python\python37_64\lib\site-packages (from pydantic<3,>=1.9.0->openai) (6.7.0)
Collecting certifi
Downloading certifi-2024.6.2-py3-none-any.whl (164 kB)
|████████████████████████████████| 164 kB 504 kB/s
Collecting httpcore<0.18.0,>=0.15.0
Downloading httpcore-0.17.3-py3-none-any.whl (74 kB)
|████████████████████████████████| 74 kB 5.5 MB/s
Requirement already satisfied: colorama; platform_system == "Windows" in d:\001_develop\022_python\python37_64\lib\site-packages (from tqdm>4->openai) (0.4.4)
Requirement already satisfied: zipp>=0.5 in d:\001_develop\022_python\python37_64\lib\site-packages (from importlib-metadata; python_version == "3.7"->pydantic<3,>=1.9.0->openai) (3.15.0)
Collecting h11<0.15,>=0.13
Downloading h11-0.14.0-py3-none-any.whl (58 kB)
|████████████████████████████████| 58 kB 2.8 MB/s
Installing collected packages: sniffio, exceptiongroup, idna, anyio, cached-property, distro, pydantic-core, annotated-types, pydantic, certifi, h11, httpcore, httpx, tqdm, openai
Successfully installed annotated-types-0.5.0 anyio-3.7.1 cached-property-1.5.2 certifi-2024.6.2 distro-1.9.0 exceptiongroup-1.2.1 h11-0.14.0 httpcore-0.17.3 httpx-0.24.1 idna-3.7 openai-1.35.3 pydantic-2.5.3 pydantic-core-2.14.6 sniffio-1.3.1 tqdm-4.66.4
WARNING: You are using pip version 20.1.1; however, version 24.0 is available.
You should consider upgrading via the 'd:\001_develop\022_python\python37_64\python.exe -m pip install --upgrade pip' command.
C:\Users\octop>
开始安装 :
安装完成 :
2、查看 openai 软件包版本
执行
<code>pip show openai
命令 , 查看安装的 openai 软件包版本 ;
C:\Users\octop>pip show openai
Name: openai
Version: 1.35.3
Summary: The official Python library for the openai API
Home-page: None
Author: None
Author-email: OpenAI <support@openai.com>
License: None
Location: d:\001_develop\022_python\python37_64\lib\site-packages
Requires: pydantic, tqdm, sniffio, cached-property, httpx, anyio, distro, typing-extensions
Required-by:
C:\Users\octop>
3、openai 接口参考文档
openai 接口调用参考文档 : https://platform.openai.com/docs/api-reference
三、PyCharm 中开发 Python 程序调用 OpenAI 接口
博客源码下载地址 : https://download.csdn.net/download/han1202012/89478137
1、PyCharm 创建 Python 项目
进入 PyCharm , 选择 " File / New Project " 选项 ,
2、API Key 配置用法
建议直接从某宝买的 OpenAI 的中转 API Key , 会给你一个 API_KEY 和 中转地址 , 有了这两个可以直接替换到代码中使用 ;
<code># 设置 OPENAI_API_KEY 环境变量
os.environ["OPENAI_API_KEY"] = "sk-6o3KJuuocEXpb1Ug39D0A4913a844fCaBa892eDe9814Df8a"
# 设置 OPENAI_BASE_URL 环境变量
os.environ["OPENAI_BASE_URL"] = "https://api.xiaoai.plus/v1"
代码处 , os.environ["OPENAI_API_KEY"]
配置的是 API Key , os.environ["OPENAI_BASE_URL"]
配置的是 OpenAI 接口的中转地址 ;
也可以直接配置到 Windows 系统的 环境变量中 ;
API Key 使用注意事项 :
使用国内的 OpenAI 中转接口 , 直接使用即可 , 不要连 XX , 否则会报错 ;使用 OpenAI 的直连接口 , 必须挂上XX , 否则也会报错 ;OpenAI 的 直连 API 会不定期清理 , 这个用起来很麻烦 ;
3、GPT3 模型和 GPT4 模型
申请的 API Key 只能访问指定的模型 ,如 3.5 或 4.0 版本 , 申请的 3.5 版本的 API Key 无法使用 4.0 版本的模型 ;
不同的 模型 收费不同 , GPT4 模型 的费用要高于 GPT3 模型 ;
可用的 GPT3 模型 :
gpt-3.5-turbogpt-3.5-turbo-0301gpt-3.5-turbo-0613gpt-3.5-turbo-0125gpt-3.5-turbo-16kgpt-3.5-turbo-1106text-embedding-3-smallgpt-3.5-turbo-16k-0613text-embedding-3-large
可用的 GPT4 模型 :
gpt-4-1106-previewgpt-4 gpt-4-0613gpt-4-32k-0613gpt-4-vision-previewgpt-4-0125-previewgpt-4-32k-0314dall-e-3gpt-4-32kgpt-4-0314gpt-4ogpt-4-turbo-2024-04-09
上述模型可直接在 创建 OpenAI 对话时配置 , client.chat.completions.create 的第一个参数 , 就是指定一个模型 , 这里指定的是 gpt-3.5-turbo 模型 ;
client.chat.completions.create(
# 指定模型为"gpt-3.5-turbo"
model="gpt-3.5-turbo",code>
4、Python 代码示例
我直接把购买的 API Key 贴出来了 , 希望能多用一会儿 ;
代码示例 :
import os
from openai import OpenAI
# 下面的 API 是从淘宝上买的 OpenAI 国内中转 API
# 使用下面的 API Key 的时候务必断开梯子
# 淘宝上搜索 API Key , 可以搜出一大堆的 中转 或 直联 的 OpenAI 接口
# 设置 OPENAI_API_KEY 环境变量
os.environ["OPENAI_API_KEY"] = "sk-6o3KJuuocEXpb1Ug39D0A4913a844fCaBa892eDe9814Df8a"
# 设置 OPENAI_BASE_URL 环境变量
os.environ["OPENAI_BASE_URL"] = "https://api.xiaoai.plus/v1"
def openai_chat():
client = OpenAI(
# 下面两个参数的默认值来自环境变量,可以不加
api_key=os.environ.get("OPENAI_API_KEY"),
base_url=os.environ.get("OPENAI_BASE_URL"),
)
# 创建一个聊天完成请求
completion = client.chat.completions.create(
# 指定模型为"gpt-3.5-turbo"
model="gpt-3.5-turbo",code>
# 定义对话消息列表
messages=[
# 系统角色的消息,用于设置对话的起始状态
{ "role": "system", "content": "You are a helpful assistant."},
# 用户角色的消息,用于指示用户的输入
{ "role": "user", "content": "请写一首七言绝句, 描述夕阳"}
]
)
print(completion) # 响应
print(completion.choices[0].message) # 回答
if __name__ == '__main__':
openai_chat()
执行结果如下 :
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/OpenAI/main.py
ChatCompletion(id='chatcmpl-9dXgRX2Q47HiQoPASfk8xcCVj3C7v', choices=[Choice(finish_reason='stop', index=0, logprobs=None, message=ChatCompletionMessage(content='夕阳西下映山川,霞光映照满天边。\n金黄色彩映水面,画出美丽夕阳颜。', role='assistant', function_call=None, tool_calls=None))], created=1719211299, model='gpt-35-turbo', object='chat.completion', service_tier=None, system_fingerprint='fp_811936bd4f', usage=CompletionUsage(completion_tokens=47, prompt_tokens=34, total_tokens=81))code>
ChatCompletionMessage(content='夕阳西下映山川,霞光映照满天边。\n金黄色彩映水面,画出美丽夕阳颜。', role='assistant', function_call=None, tool_calls=None)code>
Process finished with exit code 0
与 ChatGPT 输出结果进行对比 :
下一篇: C++必修:深入理解继承与虚继承
本文标签
【AI 大模型】OpenAI 接口调用 ① ( 安装 openai 软件包 | 查看 openai 软件包版本 | PyCharm 中开发 Python 程序调用 OpenAI 接口 )
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。