Python实现同时调用多个GPT的API

 更新时间:2023年09月04日 09:47:27   作者:未闻Code  
这篇文章主要为大家详细介绍了Python如何实现同时调用多个GPT的API,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下

相信很多同学或多或少都在Python中使用过GPT API,通过Python安装openai库,来调用GPT模型。

OpenAI官方文档中给出了一个示例,如下图所示:

如果你只有一个API账号,那么你可能不觉得这样写有什么问题。但如果你想同时使用两个账号怎么办?

有些同学可能知道,微软的Azure也提供GPT接口,在Python中也需要通过openai库来调用,它的调用示例为:

当你全局设置了openai.api_type = 'azure'以后,你怎么同时使用OpenAI的GPT接口?

这两个文档中给出的示例写法,都是全局写法,一但设定以后,在整个运行时中,所有调用GPT接口的地方,都会使用这里设置的参数:

import openai
openai.xx = yy

有些同学不知道怎么在Python SDK中同时使用多个账号,于是他们只有使用GPT的Rest HTTP接口,自己封装一个函数来发起请求从而切换不同的账号。放弃了Python SDK提供的各种便利。

但实际上,根本没有那么麻烦。在openai模块里面,天然就可以切换多个账号。虽然文档里面没有写,但是我们可以通过函数签名来找到这种方法。

如下图所示,在PyCharm中,随便写一段调用openai模块的代码,然后Windows按下键盘的Ctrl,MacOS按下键盘的Command,并鼠标左键点击create函数:

跳转到的函数里面,还有一个create函数,继续按上面的方法跳入,如下图所示:

接下来,你就会看到这个create函数能够接受的参数里面,包含了几个很熟悉的名字:

也就是说,当你想同时调用多个账号时,不需要在一开始给openai设置对应的参数,你只需要在调用.create函数的时候,把对应的API参数传入就可以了。示例代码如下:

import openai
# 使用OpenAI账号1
response1 = openai.ChatCompletion.create(  
            engine="chatgpt",  
            messages=messages,  
            temperature=0.9,  
            max_tokens=800,  
            top_p=0.95,  
            frequency_penalty=0,  
            presence_penalty=0,  
            api_key='xxxxxxxx',  # 在这里传入API Key
            stop=["<|im_end|>"])
# 使用OpenAI账号2
response2 = openai.ChatCompletion.create(  
            engine="chatgpt16k",  
            messages=messages,  
            temperature=0.9,  
            max_tokens=800,  
            top_p=0.95,  
            frequency_penalty=0,  
            presence_penalty=0,  
            api_key='yyyyyyyyy',   # 在这里传入API Key
            stop=["<|im_end|>"])
# 使用Azure OpenAI 账号
response3 = openai.ChatCompletion.create(  
            engine="gpt4",  
            messages=messages,  
            temperature=0.9,  
            max_tokens=800,  
            top_p=0.95,  
            frequency_penalty=0,  
            presence_penalty=0,  
            api_key='zzzzzzz',   # 在这里传入API Key
            api_base='https://xxx.openai.azure.com/',  
            api_type="azure",  
            api_version='2023-05-15',  
            stop=["<|im_end|>"])

使用这种方法,我们就可以在一个程序里面同时使用多个GPT账号了。

到此这篇关于Python实现同时调用多个GPT的API的文章就介绍到这了,更多相关Python调用多个GPT API内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python深度学习tensorflow实例数据下载与读取

    python深度学习tensorflow实例数据下载与读取

    这篇文章主要为大家介绍了python深度学习tensorflow实例数据下载与读取示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • graphviz 最新安装教程适用初学者

    graphviz 最新安装教程适用初学者

    Graphviz 是一个自动排版的作图软件,可以生成 png pdf 等格式,这篇文章主要介绍了graphviz 2022最新安装教程适用初学者,需要的朋友可以参考下
    2023-02-02
  • pytorch 液态算法实现瘦脸效果

    pytorch 液态算法实现瘦脸效果

    在PS中,我们可以利用液化工具对人像进行形变处理,例如瘦脸、瘦腿、放大眼睛等一系列的常规操作。今天我们来了解一下这些操作的算法原理,并用pytorch来实现瘦脸效果
    2021-11-11
  • Python集成C#实现界面操作下载文件功能的全过程

    Python集成C#实现界面操作下载文件功能的全过程

    使用脚本进行下载的需求很常见,下面这篇文章主要给大家介绍了关于Python集成C#实现界面操作下载文件功能的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • python热力图实现的完整实例

    python热力图实现的完整实例

    热力图的使用场景有描述数据在空间的密集程度,常见有城市热力图、区域热力图,描述多个变量之间相关性高低程度,这篇文章主要给大家介绍了关于python热力图实现的相关资料,需要的朋友可以参考下
    2022-06-06
  • pandas解决数据缺失、重复的方法与实践过程

    pandas解决数据缺失、重复的方法与实践过程

    这篇文章主要介绍了pandas解决数据缺失、重复的方法与实践过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • 解决Python使用列表副本的问题

    解决Python使用列表副本的问题

    今天小编就为大家分享一篇解决Python使用列表副本的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • 不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)

    不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)

    这篇文章主要介绍了Python入门一定要注意缩进,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • yolov5训练时参数workers与batch-size的深入理解

    yolov5训练时参数workers与batch-size的深入理解

    最近再学习YOLOv3与YOLOv5训练数据集的具体步骤,几经波折终于实现了很好的效果,这篇文章主要给大家介绍了关于yolov5训练时参数workers与batch-size的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 解决python明明pip安装成功却找不到包的问题

    解决python明明pip安装成功却找不到包的问题

    今天小编就为大家分享一篇解决python明明pip安装成功却找不到包的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08

最新评论