ChatGPT 以及相关开源项目体验

sxkk20082年前知识分享153

本月初,ChatGPT 以惊人的速度问世,在技术圈中引起了广泛讨论。在 GitHub 上近期还诞生了多个 ChatGPT 相关的开源项目,数量之多令人瞠目结舌,甚至 ChatGPT 独霸了大半个 GitHub Trending,那么,它究竟有什么样的魅力,让诸多开发者如此激动不已呢?让我们一起来探究一下。

注册

目前,ChatGPT 在国内无法直接注册,访问需要通过代理,并且需要使用其他国家的手机号注册,具体注册方法,大家可以看下这篇文章

功能体验

ChatGPT 可以实现诸如智能聊天、诗歌、写作、编程、改 Bug、撰写周报、知乎问答等工作。

比如我可以使用它来写

1、前端组件

使用 React hooks 写一个 echarts 组件

上面代码实现基础的组件,并没有给出示例代码,我们可以继续追问

给一个折线图的 options 示例

2、优化周报

优化上周周报,使其更加丰富

在周报上,不但帮我优化了内容,还帮我安排了下周工作,大家觉得 ChatGPT 整理的如何呢?

笔者认为,它虽不是完美,但在给出关键词之内给出的回答,这些已经非常让人出乎意料了。

更多体验,大家可以自行探索下,下面我们来看看 GitHub 上关于 ChatGPT 的项目。

Node.js API 接口

前端工程师对 Nodejs 比较熟悉,官网就有 nodejs 的接口

openai

首先通过 npm 安装 openai

npm install openai

然后可以在任意接口中使用以下代码

const { Configuration, OpenAIApi } = require('openai')
const configuration = new Configuration({
  apiKey: process.env.OPENAI_API_KEY,
})
const openai = new OpenAIApi(configuration)
const response = await openai.createCompletion({
  model: 'text-davinci-003',
  prompt: '你好',
  max_tokens: 255,
  temperature: 0.5,
})

// 打印 API 返回的结果
console.log(response.data.choices[0].text)
  • createCompletion 的意思是自动完成,它跟官网的回话方式一致;

  • max_tokens 最大的令牌数量,可以理解为返回的字符数量,大多数内容 2048 内,当然 max_tokens 返回接口的速度越慢。

  • temperature: 0-1 之间,温度参数表示生成文本中的随机性或不可预测性程度。较高的温度值将产生更具创造性和多样性的输出,而较低的温度值会产生更可预测和重复的文本。

  • OPENAI_API_KEY 可以通过View API keys 页面生成。

chatgpt

另一个是个人开发的项目,它将 ChatGPT 的 API 进行了二次封装,让定制化开发变得更加方便。

通过 npm 安装 chatgpt。

npm install chatgpt
import { ChatGPTAPI } from 'chatgpt'

async function example() {
  // sessionToken is required; see below for details
  const api = new ChatGPTAPI({
    sessionToken: process.env.SESSION_TOKEN,
  })

  // ensure the API is properly authenticated
  await api.ensureAuth()

  // send a message and wait for the response
  const response = await api.sendMessage('Write a python version of bubble sort.')

  // response is a markdown-formatted string
  console.log(response)
}

SESSION_TOKEN 值需要登录账号后,通过 chome 控制台复制出来。

GitHub:https://github.com/transitive-bullshit/chatgpt-api

  • chatgpt 模拟的是 ChatGPT 网页版,需要使用 node 服务器(一般来说是海外的),使用了 stream ,当前尝试还无法部署到 vercel

  • openai 是官方提供的包,可以部署到 vercel 环境,但是返回受到了时间限制和字数限制,需要将 max_tokens 值设置小一些,这样会导致回复不完整。

微信聊天助手

WeChat GPT

这个项目基于 wechaty ,让你快速通过微信聊天窗口,发起与 ChatGPT 的对话。

在使用之前,需先配置 OpenAI 的Session Token信息,以及对应的「关键词」触发。

功能特性

接入公众号

GitHub:https://github.com/fuergaosi233/wechat-chatgpt

WeChat Bot

一个 基于 chatgpt + wechaty 的微信机器人,可以用来帮助你自动回复微信消息,或者管理微信群/好友,简单,好用,2 分钟 就能玩起来了,

git 克隆项目后执行 npm install,修改 env 相关配置,

然后根据你的需求,自己修改相关逻辑文件

修改配置

便可以扫码登录

扫码登录

这是实际使用效果:

微信接入演示

GitHub:https://github.com/wangrongding/wechat-bot

浏览器插件

ChatGPT for Google

这款插件支持 Chrome / Edge / Firefox 等浏览器。

在安装之后,除了会在浏览器正常展示 Google 搜索内容,还会在右侧展示 ChatGPT 反馈结果,可以进一步提升搜索效率。

搜索演示

GitHub:https://github.com/wong2/chat-gpt-google-extension

ChatGPT Chrome Extension

这是专为 Chrome 用户开发的一款 ChatGPT 插件。

安装之后,在任意页面文本框中点击右键,即可弹出「Ask ChatGPT」的选项。

ChatGPT 会根据当前文本框中的内容,进行搜索。这个的扩展还包括一个插件系统,可以更好地控制 ChatGPT 的行为,并能够与第三方 API 交互。

插件演示

GitHub:https://github.com/gragland/chatgpt-chrome-extension

油猴脚本

来自台湾的 Will 保哥 ,可以将 ChatGPT 变为你的语言助手,实现了语音输入和自动朗读功能。通过浏览器自带的 Web Speech API,让我们告别打字模式。

他在 B 站有视频讲解,大家可以观看下,非常有意思。

GitHub:https://github.com/doggy8088/TampermonkeyUserscripts

逆向工程

任何让工程师充满好奇心的项目,都逃不过逆向,在这一点上,ChatGPT 也不例外。

GitHub 上一位来自马来西亚的开发者 Antonio Cheong,在 ChatGPT 发布没多久后,便对其进行了逆向,成功提取了 API。

有了这些 API,我们便可以自行开发一款好玩的聊天机器人、AI 智能助手、代码辅助工具等应用。

图片

GitHub:https://github.com/acheong08/ChatGPT

Mac 软件

为 Mac 用户量身定制了一款小工具:ChatGPT for desktop,支持 M1 和 Mac Intel,安装之后,可通过 Cmd+Shift+G 快捷键,快速在系统菜单栏启动 ChatGPT。

图片

GitHub:https://github.com/vincelwt/chatgpt-mac

最后

对于前端工程师来说,我们可以使用 api 将 ChatGPT 集成到自己的应用中,所以说了解 nodejs 和 docker 相关知识,是很有必要的。

它的优点是语言组织能力非常强,并且可以结合上下文。但它给的答案也不一定正确,有时候甚至是错误的

正如官网所说,它还不能通过互联网搜索。

Limited knowledge of world and events after 2021

对于 2021 年以后得知识了解有限。我们可以使用它来强化自己的搜索能力,至于答案是否采纳,还的自己甄辨。

以上就是本文全部内容,如果对你有帮助,可以随手点个赞,这对我真的很重要,希望这篇文章对大家有所帮助,也可以参考我往期的文章或者在评论区交流你的想法和心得,欢迎一起探索前端。

本文正在参加「金石计划 . 瓜分 6 万现金大奖」

相关文章

智能家居领域的发展趋势及未来展望

智能家居领域的发展趋势及未来展望

  随着科技的不断进步和社会的发展,人类的需求越来越高。在这样的时代背景下,智能家居凭借其高科技的理念和极度人性化的交互体验,成为了物联网领域的重要组成部分。智能家居系统不仅...

人工智能与大数据融合:为未来赋能

人工智能与大数据融合:为未来赋能

  随着信息化时代的不断深入,人工智能(AI)和大数据成为了当前信息技术领域的重要趋势。在运用上,两者相互交织,紧密融合,使得传统的信息交互变得无限可能。如今,随着5G、云计...

百度AI人脸对比:现实应用与潜在影响

百度AI人脸对比:现实应用与潜在影响

  随着人工智能技术的快速发展,人脸识别技术已经成为各个领域广泛应用的一项重要技术。其中,百度AI人脸对比技术凭借其高精度和强大的功能,在社会治安、金融安全、智能门禁等领域发...

使用免费插画资源网站设计公众号首图

前言插画是网页设计的基石之一。吸引了用户的注意力,也给人留下了专业的印象。尝试学习一个设计工具并自己完成它可能会销耗大量时间。找一名专业设计师设计又可能消耗你昂贵的一笔。幸运的是,有免费的在线资源可以...

图片识人在线:探索人工智能技术与人类互动的可能

图片识人在线:探索人工智能技术与人类互动的可能

  随着科技的不断进步和智能化的发展,图片识人在线成为了当今社会中一个备受关注的话题。利用人工智能与图像识别技术,图片识人在线为我们提供了更加便捷和高效的人脸识别服务,广泛应...

智能手机推动生活的进步与变革

智能手机推动生活的进步与变革

  近年来,智能手机在全球范围内的普及率越来越高,不仅成为人们日常生活中必不可少的通讯工具,更为社会带来了深远的影响和变革。本文将从智能手机对人们生活方式、社交方式、消费习惯...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。