专栏文章 Python+chatGPT 编程 5 分钟快速上手,强烈推荐!!!

狂师 · February 16, 2023 · Last by tangoliver replied at February 16, 2023 · 7879 hits

最近一段时间 chatGPT 火爆出圈!无论是在互联网行业,还是其他各行业都赚足了话题。

俗话说:“外行看笑话,内行看门道”,今天从 chatGPT 个人体验感受以及如何用的角度来分享一下。

1、chatGPT 是个啥?

chatGPT 是最近新出来的玩意?并不是!在国内,chatGPT 最早是在 2022 年 11 月就由 OpenAI 于推出的。只是去年底火了一把,后力不足又遇春节,热度草草就结束了。

先讲一下,OpenAI 是美国一所人工智能研究公司,chatGPT 只是 OpenAI 公司其中的一个技术产品,除了 chatGPT, OpenAI 也还有很多其他 “有意思” 的产品。

OpenAI 旨在降低人工智能业务开发门槛,我们完全不需要神经网络、NLP、深度学习等人工智能领域工程师及算法工程师,就可以直接使用 OpenAI 训练好的强大模型为我们进行业务赋能。

具体可查阅它的官网:

https://openai.com/

再来讲一讲 chatGPT 是什么,chatGPT 采用了 GPT(Generative Pre-trained Transformer)技术,用专业词汇来讲,是一个用于对话生成的预训练语言模型,用简单通俗来解释:是一款利用 AI 技术实现出来的聊天机器人

提到 AI 聊天机器人,这类技术应用场景在互联网行业此前并不少见,甚至很多,那为什么 chatGPT 能快速脱颖而出,成为爆品。得益于它的强大能力:整合信息和语言组织能力,接近于人类常识、认知。体验过 chatGPT 的人,想必很多人的第一感受给我是一样的:chatGPT 很像一个真人!这个人还是一个业务能力很强,知无不言的行家能手,不厌其烦地为你解答各种业务问题,它的答复比其他搜索引擎更加精准,十分清楚你的搜索意图

显然易见的是,比起冷冰冷的机器,我们更愿意跟人打交道,这背后要归功于 OpenAI 在 AI 对齐问题上做出的诸多努力,致力于探索如何让语言模型遵循人类的意图、符合人类价值观,让 ChatGPT 表现得更有 “人味儿”。

如下体验后截的两张示例图(如果你再不努力,重复低效劳力者终将 AI 取代

从给出来的答案中,可以发现提问方式的不同,答案也会有所不同,即便是针对同一个关键词,chatGPT 给出来的答案也会有所差异,通过 Regenerate response 不断调优,致力生成一个更佳完美适合你提问预期需要的答案。

2、chatGPT 怎么注册?

看到上面的介绍,如果你还没有体验过 chatGPT,想必早已蠢蠢欲动了,我们可以通过访问:

https://chat.openai.com/chat

使用前,需要先注册,注册过程有一点点小门槛,还不会如何注册的,可以参考前几天发的推文。

注册成功后,就可以在 chatGPT 在线聊天界面,通过关键字提问畅所欲言了。

3、chatGPT 怎么用?

chatGPT 爆火后,很多行业都在探索如何将其结合到生活工作场景中。如chatGPT+医疗chatGPT+OAchatGPT+自动运维chatGPT+智能客服,甚至 chatGPT 如何结合应用到测试场景等等。包括在国内也有很多同类产品早在布局:

今天我们暂不聊 chatGPT 如何和具体场景结合,单纯从开发的角度,聊一聊 chatGPT 本身如何使用。

OpenAI 官网提供了一套接口文档:

platform.openai.com

从目前接口文档中来看,OpenAI 的原生接口支持PythonNode.js两类语言,但也同时支持 RESTFul 的 API 接口形式。所以目前其他语言可以通过 Http 的 API 请求形式来调用 OpenAI 的接口。

以 Python 为例,在编写代码之前,先安装 openai 环境,安装指令如下:

pip install openai

在调用 openai API 需要一个 API_KEY, API_KEY 的获取办法访问:

https://platform.openai.com/account/api-keys

在网页中,生成 API_KEY

示例 1:利用 chatGPT API 实现文本处理响应

# 公众号:测试开发技术

import os
import openai

OPENAI_API_KEY="xxxxxx"
openai.api_key = os.getenv("OPENAI_API_KEY",OPENAI_API_KEY)

prompt = "用Python写一个mock server"

response = openai.Completion.create(
  model="text-davinci-003",
  prompt=prompt,
  temperature=0.5,
  max_tokens=1024,
  n=1,
  stop=None
)

print(response.choices[0].text)

本示例是基于"text-davinci-003"模型来对 text 文本进行处理的,"text-davinci-003"是 chatGPT 最常用的模型之一。

运行结果如下:


这样就已经基于"text-davinci-003"的能力得到了我们想要的答案。

示例 2: 利用 chatGPT 实现 python 代码 bug 自动修复

import os
import openai

openai.api_key = os.getenv("OPENAI_API_KEY")

response = openai.Completion.create(
  model="code-davinci-002",
  prompt="##### Fix bugs in the below function\n \n### Buggy Python\nimport Random\na = random.randint(1,12)\nb = random.randint(1,12)\nfor i in range(10):\n    question = \"What is \"+a+\" x \"+b+\"? \"\n    answer = input(question)\n    if answer = a*b\n        print (Well done!)\n    else:\n        print(\"No.\")\n    \n### Fixed Python",
  temperature=0,
  max_tokens=182,
  top_p=1.0,
  frequency_penalty=0.0,
  presence_penalty=0.0,
  stop=["###"]
)

从上面两者示例,大家不难看出,代码写起来并不复杂,不同功能实现起来的区别在于使用到的 model 以及设置参数的不同罢了,具体更多玩法,留给大家探索了。

4、小结

本篇文章算是对 chatGPT 一个小结,对于刚接触 chatGPT 的读者来讲,还是非常有帮助的。chatGP 官方提供了大量的 API,对于技术从业者是极大利好的,至于怎么和实际生活工作场景结合起来,将取决你的技术功底 + 商业嗅觉了。正如雷军之前说过一句话:“站在风口,猪都会飞!”

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 4 条回复 时间 点赞

最近刚好在摸索,感谢

图都挂的😅

站在风口,猪都会飞!!

厉害,教程都开始搞了

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up