【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 输出结果进行对比 :

在这里插入图片描述



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。