目录
1 ChatGPT完整版
2015年,
OpenAI
由马斯克、美国创业孵化器Y Combinator总裁阿尔特曼、全球在线支付平台PayPal联合创始人彼得·蒂尔等硅谷科技大亨创立,公司核心宗旨在于**实现安全的通用人工智能(AGI)**,使其有益于人类。
2022年12 月 1 日,
OpenAI
的联合创始人山姆·奥特曼在推特上公布
ChatGPT
并邀请人们免费试用
ChatGPT
可以与人类进行谈话般的交互,可以回答追问,连续性的问题,承认其回答中的错误,指出人类提问时的不正确前提,拒绝回答不适当的问题,其性能大大超乎人们对弱人工智能的想象。
在AI写代码、修Bug,甚至还想统治人类?快速体验ChatGPT中,我给出了体验完整版
ChatGPT
的教程,本文就基于
ChatGPT API
做一个小应用
2 Python/C++调用ChatGPT
Python/C++如何调用
ChatGPT
呢,这个问题直接问
ChatGPT
就好
以Python为例,接下来按照
ChatGPT
自己说的步骤执行
2.1 获取API秘钥
进入OpenAI API点击
Creat new secret key
接着会获得一个秘钥,第一时间复制它
2.2 测试API功能
首先安装
openai
,建议在虚拟环境中进行,以免破坏工作环境,虚拟环境的配置请看Anaconda安装与Python虚拟环境配置保姆级图文教程(附速查字典)
pip install openai -i https://pypi.tuna.tsinghua.edu.cn/simple
接着进行接口测试
import openai
# Initialize the OpenAI API client
openai.api_key ="YOUR_API_KEY"# Define your prompt
prompt ="Hello, how are you today?"# Generate a response from ChatGPT
response = openai.Completion.create(
engine="text-davinci-002",
prompt=prompt,
max_tokens=1024,
n=1,
stop=None,
temperature=0.5,)# Print the responseprint(response["choices"][0]["text"])
可以收到
ChatGPT
的回话说明测试通过
I'm doing well, thank you for asking. How about you?
2.3 设计简单UI
做一个简单的UI界面
import openai
import os, sys
from tkinter import*from tkinter.font import Font
from tkinter.ttk import*classAppUI(Frame):def__init__(self, master=None):
Frame.__init__(self, master)
self.master.title('My ChatGPT vx:yhd13950307060')
self.master.geometry('900x500')
self.createWidgets()defcreateWidgets(self):
self.top = self.winfo_toplevel()
self.style = Style()
self.style.configure('Tftitle.TLabelframe', font=('黑体',12))
self.style.configure('Tftitle.TLabelframe.Label', font=('黑体',12))
self.ftitle = LabelFrame(self.top, text='', style='Tftitle.TLabelframe')
self.ftitle.place(relx=0.008, rely=0.017, relwidth=0.982, relheight=0.998)
self.stext = Text(self.ftitle, font=('黑体',12), wrap=NONE,)
self.stext.place(relx=0.017, rely=0.036, relwidth=0.957, relheight=0.412)# 垂直滚动条
self.VScroll1 = Scrollbar(self.stext, orient='vertical')
self.VScroll1.pack(side=RIGHT, fill=Y)
self.VScroll1.config(command=self.stext.yview)
self.stext.config(yscrollcommand=self.VScroll1.set)# 水平滚动条
self.stextxscroll = Scrollbar(self.stext, orient=HORIZONTAL)
self.stextxscroll.pack(side=BOTTOM, fill=X)
self.stextxscroll.config(command=self.stext.xview)
self.stext.config(xscrollcommand=self.stextxscroll.set)
self.totext = Text(self.ftitle, font=('黑体',12), wrap=NONE)
self.totext.place(relx=0.017, rely=0.552, relwidth=0.957, relheight=0.412)
self.VScroll2 = Scrollbar(self.totext, orient='vertical')
self.VScroll2.pack(side=RIGHT, fill=Y)# 将滚动条与文本框关联
self.VScroll2.config(command=self.totext.yview)
self.totext.config(yscrollcommand=self.VScroll2.set)# 水平滚动条
self.totextxscroll = Scrollbar(self.totext, orient=HORIZONTAL)
self.totextxscroll.pack(side=BOTTOM, fill=X)
self.totextxscroll.config(command=self.totext.xview)
self.totext.config(xscrollcommand=self.totextxscroll.set)
menubar = Menu(self.top, tearoff=False)# 创建一个菜单
self.style.configure('Tcleartext.TButton', font=('黑体',12))
self.cleartext = Button(self.ftitle, text='清空', command=self.cleartext_Cmd, style='Tcleartext.TButton')
self.cleartext.place(relx=0.239, rely=0.463, relwidth=0.086, relheight=0.073)
self.style.configure('Taddyh.TButton', font=('黑体',12))
self.addyh = Button(self.ftitle, text='查询', command=self.addyh_Cmd,
style='Taddyh.TButton')
self.addyh.place(relx=0.512, rely=0.463, relwidth=0.2, relheight=0.073)classApp(AppUI):def__init__(self, master=None):
AppUI.__init__(self, master)defcleartext_Cmd(self, event=None):
self.stext.delete(1.0,"end")
self.totext.delete(1.0,"end")defaddyh_Cmd(self, event=None):
cookiestext = self.stext.get(1.0,"end")
response = openai.Completion.create(
engine="text-davinci-002",
prompt=cookiestext,
max_tokens=1024,
n=1,
temperature=0.5,)
answer =(response["choices"][0]["text"]).split(".")for i in answer:
self.totext.insert(1.0, i)
self.totext.update()if __name__ =="__main__":
top = Tk()
App(top).mainloop()
3 聊天问答
运行程序,开始问答
Q1
:世界上最好的编程语言是什么?A1
:不同的编程语言适合不同的任务,世界上没有最好的编程语言
Q2
:如何看待人工智能?A2
:在形成观点之前,需要考虑人工智能的利弊。一些人认为人工智能是增强人类能力的一种方式,而另一些人则认为它是对人类的潜在威胁。这个问题没有简单的答案,因为对人工智能(AI)有各种各样的看法
可以看到回答得还是挺有水准的,大家可以进行进一步的测试~
🔥 更多精彩专栏:
- 《ROS从入门到精通》
- 《Pytorch深度学习实战》
- 《机器学习强基计划》
- 《运动规划实战精讲》
- …
👇源码获取 · 技术交流 · 抱团学习 · 咨询分享 请联系👇
版权归原作者 Mr.Winter` 所有, 如有侵权,请联系我们删除。