[Python]:OPENAI API调用

[Python]:OPENAI API使用

安装

使用conda安装,python版本最好在3.9.x

使用

Python API

基于Python体验一下OPENAI,代码很简单:

import openai
import json

openai.api_key = "替换为你的key"

if __name__ == '__main__':
    print("GPT 3.5 Example")

    while True:
        user_input = input("请输入内容(输入 'exit' 结束循环):")

        if user_input == "exit":
            break

        #处理处理输入
        completion = openai.ChatCompletion.create(
            model="gpt-3.5-turbo",
            messages=[
                {"role": "user", "content": user_input}
            ]
        )

        message = completion.choices[0].message
        data = json.loads(str(message))

        content = data["content"]
        print(content)

简单测试一下,还是可以,提前是要使用魔法。

在这里插入图片描述

HTTP请求


import openai
import json
import requests


if __name__ == '__main__':
    # 设置 OpenAI API 认证信息
    headers = {
        'Authorization': 'Bearer 你的key',
        'Content-Type': 'application/json'
    }

    while True:
        user_input = input("请输入内容(输入 'exit' 结束循环):")

        if user_input == "exit":
            break

        # 构建请求的数据
        data = {
            'model': 'gpt-3.5-turbo',
            'messages': [
                {'role': 'user', 'content': user_input}
            ]
        }

        # 将请求数据转换为 JSON 字符串
        data_json = json.dumps(data)

        # 发送 HTTP POST 请求
        response = requests.post('https://api.openai.com/v1/chat/completions', headers=headers, data=data_json)
        response_data = response.json()

        # 解析响应数据
        completion = response_data['choices'][0]['message']

        print(completion["content"])

在这里插入图片描述

<think>好的,用户想了解如何在Python调用OpenAIAPI,需要示例代码。我之前已经处理过类似的问题,现在需要根据提供的引用内容整理出一个清晰的步骤。 首先,我需要确认用户的具体需求。他们可能已经知道需要安装库,但可能需要详细的步骤和示例。根据引用内容,引用[1]、[2]、[3]、[4]都提到了导入openai库、设置API密钥以及调用不同的方法,比如Model.list()、ChatCompletion.create()和Completion.create()。需要将这些信息整合成一个连贯的指南。 接下来,步骤分解。通常,调用API的第一步是安装库,所以应该先提到使用pip安装。然后导入必要的库,如openai和os,或者处理代理的情况,如引用[3]中的代理设置。不过用户可能不一定需要代理,所以可能需要作为可选步骤。 设置API密钥是关键部分,引用[1]和[2]提到从环境变量获取,引用[3]则从文件读取,而引用[4]直接写在代码里。需要建议最佳实践,比如使用环境变量,避免密钥硬编码。同时,要提醒用户密钥的安全性。 然后,示例代码部分,用户可能需要不同的模型调用方式。比如,ChatCompletion和Completion的区别,引用[3]和[4]分别展示了这两种方式。需要解释这两种不同的方法,以及如何构造请求参数,如model、messages、temperature等。 此外,错误处理和代理设置也是需要考虑的,特别是引用[3]提到了代理的问题,可能国内用户需要设置,但作为可选步骤,放在注意事项里比较合适。 最后,生成相关问题,可能需要涵盖身份验证、不同模型区别、参数调整以及错误处理等方面。确保问题对用户进一步学习有帮助。 现在需要检查是否有遗漏的步骤,比如安装库的部分是否明确,代码示例是否正确,以及注意事项是否全面。同时,确保引用正确,每个步骤对应的引用来源标注清楚,比如环境变量设置来自引用[1][2],代理来自引用[3],代码示例来自引用[3][4]等。 总结下来,回答应该分为安装库、导入和配置、示例代码(聊天和文本生成)、注意事项,最后是相关问题。这样结构清晰,用户能一步步跟随操作。</think>在Python调用OpenAI API的完整步骤如下: ### 一、安装OpenAI库 ```bash pip install openai ``` ### 二、基础配置 #### 1. 导入库与环境配置 ```python import openai import os ``` #### 2. 身份验证 ```python # 最佳实践:从环境变量读取API密钥(推荐安全性) os.environ["OPENAI_API_KEY"] = "sk-xxx" openai.api_key = os.getenv("OPENAI_API_KEY") # 或直接设置(适用于测试环境) openai.api_key = "sk-xxx" ``` [^1][^2][^3] ### 三、API调用示例 #### 1. 聊天对话接口(ChatCompletion) ```python response = openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=[ {"role": "system", "content": "你是一个资深Python开发者"}, {"role": "user", "content": "解释递归算法的实现原理"} ], temperature=0.7, max_tokens=500 ) print(response.choices[0].message.content) ``` [^3] #### 2. 文本生成接口(Completion) ```python response = openai.Completion.create( engine="text-davinci-003", prompt="用Python实现快速排序算法", temperature=0.5, max_tokens=1000 ) print(response.choices[0].text) ``` [^4] ### 四、高级配置 #### 1. 代理设置(国内需要) ```python os.environ["HTTP_PROXY"] = "http://127.0.0.1:7890" os.environ["HTTPS_PROXY"] = "http://127.0.0.1:7890" ``` [^3] #### 2. 参数说明 - `temperature`:控制随机性(0-2,0最确定) - `max_tokens`:响应最大长度 - `n`:生成多个结果 - `stop`:停止生成标记
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值