ChatGPT又双用不了了!!!哈士奇教你使用并理解Python调用ChatGPT接口使用

最近哈士奇的chatGPT总是出现问题,可能因为节点或者网络问题总是无法使用,这可难倒了靠chat为生的哈士奇,怎样才能稳定使用chatGPT呢?

但是聪明的哈士奇通过调用chatGPT接口找到了使用chatGPT的新办法,大家都可以试试哦!!

一、准备一个chatGPT的API

大家需要搜索chatgpt,找到Introducing ChatGPT

接着在API中点击Docs

点击锁的图标,进入API KEYS

在其中选择create new secret key创建一个api,记住,创建api需要电话验证,如果你的账号已经有了就直接创建,记得一定要保存好你的API,不然只能重新创建API,然后复制你的API,备用

二、选择一个开发环境(在线或本地)

哈士奇使用的是Python调用接口,因此提供在线和本地

在线版:

这里哈士奇给大家推荐的在线开发环境是Colaboratory

在文件中新建一个笔记本

点击上面打圈的就可以直接运行python代码

本地版

哈士奇的本地开发环境是Spyder,大家使用Pycharm也可以

首先大家需要在控制台中安装openai的包

打开控制台(搜索cmd)

点击命令提示符进入控制台

安装完毕以后我们就可以开始敲代码了!!!

三、代码讲解

python 复制代码
import openai
openai.api_key="你的API"

def generate_data_by_openai(prompt):
   response=openai.Completion.create(
       engine="text-davinci-003",
       prompt=prompt,
       temperature=0.5,
       max_tokens=2048,
       top_p=1
   )
   return response.choices[0].text
while True:
    print("请输入你的问题:")
    prompt=input()
    print("回答:"+generate_data_by_openai(prompt))

openai.Completion 是一个预训练的语言模型,可以自动生成文本。openai.Completion.create() 是一个用于创建新的 OpenAI Completion 实例的函数。

我们在其中创建一个engine在其中填入text-davinci-003,这里要敲黑板了,这个语言模型是OpenAI训练出来的语言模型之一,最大的优势是生成指令

所以大家可能会觉得它比chatGPT笨点这也很正常(代替使用了)

prompt是指的大家给语言模型的主题(就是大家的问题)

接下来是temperature=0.5 temperature是语言生成模型中的一个超参数,值在0.1~1.0之间 当我们需要语言模型解释的东西更精确的时候就调低temperature的数值,这样会导致模型生成更精准的词汇, 但是如果我们调高数值的话,它就会使得它更具有多样性,表现为结果的变得更天马行空

简而言之,temperature的值越低,生成文本更保守,值越高,生成文本更有创意

max_tokens=2048这串代码主要是用于限制生成的最大字数

哈士奇再给大家分享两个可能用得到的变量 frequency_penalty, presence_penalty

frequency_penalty主要用于控制字符的重复度,它的值是介于-2.0 ~ 2.0 之间的数字,如果是正值则会根据新 tokens 在文本中的频率对其进行惩罚,从而降低模型逐字重复同一行的可能性

presence_penalty则是用于控制主题的重复度,它的值是介于-2.0 ~ 2.0 之间的数字,如果是正值则会根据到目前为止是否出现在文本中来惩罚新 tokens,从而增加模型谈论新主题的可能性

response.choices[0].text将生成的全部答案中的第一个回答转化为文本

最后我们简单写个while循环持续使用

让大家看看效果

大家快使用起来吧!!!

相关推荐
西柚与蓝莓1 小时前
【开源开放体系总结】
python
belldeep4 小时前
python:reportlab 将多个图片合并成一个PDF文件
python·pdf·reportlab
2401_857622666 小时前
SpringBoot框架下校园资料库的构建与优化
spring boot·后端·php
2402_857589366 小时前
“衣依”服装销售平台:Spring Boot框架的设计与实现
java·spring boot·后端
FreakStudio6 小时前
全网最适合入门的面向对象编程教程:56 Python字符串与序列化-正则表达式和re模块应用
python·单片机·嵌入式·面向对象·电子diy
丶21366 小时前
【CUDA】【PyTorch】安装 PyTorch 与 CUDA 11.7 的详细步骤
人工智能·pytorch·python
哎呦没7 小时前
大学生就业招聘:Spring Boot系统的架构分析
java·spring boot·后端
_.Switch7 小时前
Python Web 应用中的 API 网关集成与优化
开发语言·前端·后端·python·架构·log4j
一个闪现必杀技8 小时前
Python入门--函数
开发语言·python·青少年编程·pycharm
小鹿( ﹡ˆoˆ﹡ )8 小时前
探索IP协议的神秘面纱:Python中的网络通信
python·tcp/ip·php