【OpenAI库】从0到1深入理解Python调用OpenAI库的完整教程:从入门到实际运用

文章目录

  • Moss前沿AI
  • 一、初识OpenAI API
  • 1.1 获取API-Key(两种方案)
  • 1.2 安装OpenAI库
  • 二、Python调用OpenAI API的基础设置
  • 2.1 设置API密钥和Base URL
  • 2.2 参数详解
  • 三、构建一个简单的聊天应用
  • 3.1 创建聊天请求
  • 3.2 参数详解
  • 3.3 处理响应
  • 四、完整代码示例
  • 1.Python示例代码(基础)
  • 2.Python示例代码(高阶)
  • Moss前沿AI
  • 五、总结
  • Moss前沿AI

    【OpenAI】获取OpenAI API Key的多种方式全攻略:从入门到精通,再到详解教程!!

    【VScode】VSCode中的智能AI-GPT编程利器,全面揭秘ChatMoss & ChatGPT中文版

    【GPT-o1系列模型!支持Open API调用、自定义助手、文件上传等强大功能,助您提升工作效率!】>>> – CodeMoss & ChatGPT-AI中文版

    在当今的人工智能时代,OpenAI的API为开发者提供了强大的工具来构建智能应用程序。无论你是AI领域的新手还是经验丰富的开发者,掌握如何使用Python调用OpenAI库都是一项必备技能。在这篇文章中,我们将详细解析如何使用Python与OpenAI API进行交互,从基础设置到高级应用,帮助你从入门到精通。

    一、初识OpenAI API

    OpenAI API是一个强大的接口,允许开发者通过简单的HTTP请求与OpenAI的模型进行交互。通过API,你可以实现自然语言处理、文本生成、对话系统等多种功能。为了开始使用,你需要一个API密钥和基本的Python编程知识。

    1.1 获取API-Key(两种方案)

  • 1、从 OpenAI官网 获取API-Key。(点击名称就能够访问)
  • 2、从 CodeMoss工具 获取API-Key。(点击名称就能够访问)
  • 1.2 安装OpenAI库

    在开始编写代码之前,确保你的Python环境中已经安装了OpenAI库。你可以通过以下命令安装:

    pip install openai
    

    二、Python调用OpenAI API的基础设置

    在这一部分,我们将介绍如何设置API密钥和基本的请求参数。

    2.1 设置API密钥和Base URL

    在使用OpenAI库时,首先需要配置API密钥和Base URL。以下是一个简单的示例:

  • 如果用的OpenAI官网提供的KEY那么就不需要填写BaseUrl,因为openai库已经内置了URL:https://api.openai.com/v1。源码和示例如下:
  • 示例:

    from openai import OpenAI
    
    client = OpenAI(
    
        api_key="api_key",  # 只需要填写key就可以了
    
    )
    response = client.chat.completions.create(
        messages=[
            {'role': 'user', 'content': "1+1"}, ],
        model='gpt-3.5-turbo',
        stream=True
    )
    for chunk in response:
        print(chunk.choices[0].delta.content, end="", flush=True)
    

    openai源码:

  • 如果你用的是第三方的,那么就要需要填写BaseUrl。但是要注意的是BaseUrl的地址链接参数,是否和源码一致。在下面的示例中你可以看到内置的BaseUrl链接后面是带v1的:https://api.openai.com/v1。所以你要检查从其他地方获取的BaseUrl是否完整,例如:CodeMoss里面的获取的就不带v1,那么我们就需要手动在后面拼接v1。如下:
  • 配置前获取的BaseUrl

    base_url="https://testchatmoss.aihao123.cn/luomacode-api/open-api/"
    

    配置后的BaseUrl

    base_url="https://testchatmoss.aihao123.cn/luomacode-api/open-api/v1"
    

    注意结尾

    代码示例:

    from openai import OpenAI
    
    client = OpenAI(
    
        api_key="api_key",  # 填写提供的api_key
        base_url="base_url"  # 填写提供的base_url
    
    )
    response = client.chat.completions.create(
        messages=[
            {'role': 'user', 'content': "1+1"}, ],
        model='gpt-3.5-turbo',
        stream=True
    )
    for chunk in response:
        print(chunk.choices[0].delta.content, end="", flush=True)
    

    2.2 参数详解

  • api_key: 这是你从某个渠道获取的API KEY,用于验证你的身份。
  • base_url: 这是API的基础URL,通常由OpenAI或者某个渠道提供。
  • 三、构建一个简单的聊天应用

    接下来,我们将构建一个简单的聊天应用,展示如何使用OpenAI的聊天模型。

    3.1 创建聊天请求

    使用OpenAI的聊天模型,你可以创建一个对话请求。以下是一个简单的示例:

    response = client.chat.completions.create(
        messages=[
            {'role': 'user', 'content': "1+1"},
        ],
        model='gpt-3.5-turbo',
        stream=True
    )
    

    3.2 参数详解

  • messages: 这是一个列表,content是你的的问题。user是你的角色。
  • model: 指定使用的模型版本,如gpt-3.5-turbo
  • stream: 如果设置为True,则响应将以流的形式返回。
  • 3.3 处理响应

    处理响应时,你可以逐块读取数据并输出结果:

    for chunk in response:
        print(chunk.choices[0].delta.content, end="", flush=True)
    

    四、完整代码示例

    我这个是CodeMoss工具获取的api_key,示例代码就配置了base_url,完整代码和获取KEY的地址如下:>>> 获取OpenAI API Key的多种方式

    1.Python示例代码(基础)

    基本使用:直接调用,没有设置系统提示词的代码

    
    from openai import OpenAI
    client = OpenAI(
        api_key="这里是CodeMoss的api_key",
        base_url="这里是上图的base_url"
    )
    
    response = client.chat.completions.create(
        messages=[
        	# 把用户提示词传进来content
            {'role': 'user', 'content': "Python的排序由几种方式?"},
        ],
        model='gpt-4',  # 上面写了可以调用的模型
        stream=True  # 一定要设置True
    )
    
    for chunk in response:
        print(chunk.choices[0].delta.content, end="", flush=True)
    

    输出结果:

    2.Python示例代码(高阶)

    进阶代码:根据用户反馈的问题,用GPT进行问题分类

    from openai import OpenAI
    
    # 创建OpenAI客户端
    client = OpenAI(
        api_key="your_api_key",  # 你自己创建创建的Key
        base_url="your_base_url"  # 你的base_url
    )
    
    def api(content):
        print()
        
        # 这里是系统提示词
        sysContent = f"请对下面的内容进行分类,并且描述出对应分类的理由。你只需要根据用户的内容输出下面几种类型:bug类型,用户体验问题,用户吐槽." \
                     f"输出格式:[类型]-[问题:{content}]-[分析的理由]"
        response = client.chat.completions.create(
            messages=[
                # 把系统提示词传进来sysContent
                {'role': 'system', 'content': sysContent},
                # 把用户提示词传进来content
                {'role': 'user', 'content': content},
            ],
            # 这是模型
            model='gpt-4',  # 上面写了可以调用的模型
            stream=True
        )
    
        for chunk in response:
            print(chunk.choices[0].delta.content, end="", flush=True)
    
    
    if __name__ == '__main__':
        content = "这个页面不太好看,交互不太好,点击按钮的时候不太方便"
        api(content)
    

    输出结果:

    Moss前沿AI

    【OpenAI】获取OpenAI API Key的多种方式全攻略:从入门到精通,再到详解教程!!

    【VScode】VSCode中的智能AI-GPT编程利器,全面揭秘ChatMoss & ChatGPT中文版

    【GPT-o1系列模型!支持Open API调用、自定义助手、文件上传等强大功能,助您提升工作效率!】>>> – CodeMoss & ChatGPT-AI中文版

    五、总结

    通过本文的学习,你应该已经掌握了如何使用Python调用OpenAI库的基本技能。从获取API密钥到构建聊天应用,再到探索高级功能,这些知识将帮助你在AI开发的道路上走得更远。

    作者:senger_lcc

    物联沃分享整理
    物联沃-IOTWORD物联网 » 【OpenAI库】从0到1深入理解Python调用OpenAI库的完整教程:从入门到实际运用

    发表回复