我让 ChatGPT 化身为全知全能的文档小助理,啥姿势她都会......
ChatGPT 虽然只是一个对话型人工智能,但已经震惊了全世界,有人甚至认为人工智能的奇点已经到来。未来一定会有很多人失业,从工业革命开始,每出现一次重大的技术变革,就必然会有一批人失业,我们要直面现实,承认自己的工作会被 AI 代替,你逃避也罢,无视也罢,都没有用,改变不了事实。

虽然目前网上基于 ChatGPT 的产品已经琳琅满目,但很多人还是觉得 ChatGPT 对自己的生活并没有产生多大的影响。但是你忽略了一个事实,ChatGPT 才问世几个月而已,基于 ChatGPT 的应用场景目前还在探索中,很多场景还是把 ChatGPT 当成一个玩具,所以对大家的工作和生活并没有产生重大的影响。
现在我们来想象一个场景,假设有这样一个机器人,它对某个开源项目文档的内容了如指掌,就像一个全知全能的神,你对这个产品的使用有任何疑问,都可以直接问它,它会立刻给你一个准确的答案,这会不会彻底改变你的项目文档使用体验?

现在开源项目的标配都有微信群和 Slack 群或者 Discord 群,你把这个全知全能的神接入这些社群,任何人的任何问题都可以得到及时有效的回复,这该有多爽?

你再想想我们之前都是怎么使用项目文档的,有的文档会提供一个搜索框,你可以直接通过关键词进行搜索,它会给你呈现一大堆跟你的关键词相关的内容,但是究竟这些内容是不是你想要的,你需要自己一个一个点开链接去看一看,找一找,这个筛选和判断过程非常浪费时间和精力。
还有的项目文档更惨,连搜索功能都没有,你需要自己根据目录去判断哪个章节可能有你想要的内容,体验更糟。。。
现在我告诉你还真有这样一个机器人,它大大简化了在项目文档中寻找信息的过程。由于它集成了强大的 ChatGPT,开发人员可以轻松地提出文档涉及的相关项目的问题,并及时得到准确的答案,让你告别耗时的手动搜索。它就是 DocsGPT!!

项目地址:https://github.com/arc53/DocsGPT
我 Fork 了该项目,并将 Web 界面语言改成了中文,英文不太给力的同学可以直接使用我的项目 https://github.com/yangchuansheng/DocsGPT
使用起来非常简单,首先在浏览器中输入访问地址 https://docsgpt.icloudnative.io/ 打开 Web 界面,然后输入自己的 OpenAI API Key:

你可以选择特定的文档来进行提问,比如我这里选择了 Pandas:

默认只支持部分文档,包含 pandas、langchain、python 等。

但是我们可以通过训练其他文档来使它支持任意文档。以我的中文版 DocsGPT 为例,我就拿它训练了一个让前端能够搞全栈的神奇的工具 laf。
有搞云开发的,有可能知道 Unicloud。laf 就是类似 Unicloud 的东西,也是一个一体化的开发平台。
说简单点,让前端搞后端,那么需要几几样东西,首先就是存放东西的数据库,还有就是用来存放图片文件的文件存储,最后就是前端要去调用后端服务的接口。
这三件套,laf 平台都集成了,大大降低了门槛,只要你懂 js,就可以去写后端的业务了,其他都不用你操心。
这是 laf 的官方文档:https://www.lafyun.com/
文档的 GitHub 链接在这里:https://github.com/labring/laf/tree/main/docs
我要做的事情很简单,先把 DocsGPT 和 laf 项目 clone 到本地,然后进入 DocsGPT 项目的 scripts 目录,新建目录 inputs,再将 laf 项目中的 docs 目录复制到 inputs 目录下。
接下来需要在 scripts 目录下创建一个文件 .env,输入以下内容:
OPENAI_API_KEY=<your-api-key>
请将 <your-api-key> 替换成你的 OpenAI API Key。
最终执行以下命令就会开始训练:
$ python ingest.py ingest
训练完成后,会生成两个文件:index.faiss 和 index.pkl。将这两个文件移动到 application 目录即可完工。
最后按照正常的步骤启动 DocsGPT 即可。
为了方便大家快速部署,我还构建了 Docker 镜像,可以直接通过以下命令部署:
$ docker run -d --name docsgpt ghcr.io/yangchuansheng/docsgpt:zh-cn
同时我还提供了一个 Demo 页面,想直接体验的同学可以访问 Demo 页面:https://docsgpt.icloudnative.io/

注意:如果出现异常(比如机器人没有回应),可以清空页面缓存重试。
一个全知全能的 laf 小助理就这样诞生了,爽不爽?
未来我们会尝试将其接入微信群和 Discord 群组,对 laf 感兴趣的同学欢迎加入我们的微信群或者 Discord 群组静静等待:
- Discord 群组链接:https://discord.gg/pSVfU7u5
- wx 群:添加我的个人 wx:cloud-native-yang,然后给我发送暗号:laf
我让 ChatGPT 化身为全知全能的文档小助理,啥姿势她都会......的更多相关文章
- PDF文档小技巧整理一览
1.福昕阅读器文档背景修改为保护眼睛的颜色? 1)文件 -> 偏好设置 -> 访问 -> 勾选 "改变文档颜色" 2)选择 '自定义颜色'->'页面背景颜色 ...
- C# - 操作Word文档小实验
前言 本篇主要记录:VS2019 WinFrm桌面应用程序实现对Word文档的简单操作. 准备工作 搭建WinFrm前台界面 添加必要的控件,如下图 NuGet包管理器 安装Microsoft.Off ...
- Windchill基本业务对象-文档
文档的类型: (1)WTDocumetManster :是文档的主要信息,一个文档只有一条记录:(2)WTDocument:是文档小版本记录,每一个文档小版本都有一条记录: 备注:(1)文档大版本记录 ...
- ElasticSearch文档
1.什么是文档? 程序中大多的实体或对象能够被序列化为包含键值对的JSON对象,键(key)是字段(field)或属性(property)的名字,值(value)可以是字符串.数字.布尔类型.另一个对 ...
- MongoDB(5)- Document 文档相关
Documents MongoDB 的文档可以理解为关系型数据库(Mysql)的一行记录 MongoDB 将数据记录为 BSON 格式的文档 BSON 是 JSON 文档的二进制表示,但它支持的数据类 ...
- NotionAI - 文档领域的ChatGPT,一款 AI 加持的在线文档编辑和管理工具
简介 NotionAI - 文档领域的ChatGPT,一款 AI 加持的在线文档编辑和管理工具 作为国际领先的在线文档编辑和管理工具,Notion受到了广大用户的欢迎,尤其是程序员们.它不仅支持笔记. ...
- Word中使用ChatGPT,写文档如有神助
[部署教程]国内网络可用,最强 ChatGPT 学术论文写作工具原创****付费 简介 Word GPT Plus 是一个集成了 chatGPT 模型的 Word 插件.它允许你基于你在文档中写的内容 ...
- 全网最详细中英文ChatGPT接口文档(一)开始使用ChatGPT——导言
目录 Introduction 导言 Overview 概述 Key concepts 关键概念 Prompts and completions 提示和完成 Tokens 标记/符号 Models 模 ...
- DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义
DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义 今天看到一篇CSS应用的一个友好搜索,我按网页上的代码复制.粘贴后预览时总达不到效果,而直接拷贝他的实例却能达到效果, ...
- 全网最详细中英文ChatGPT-GPT-4示例文档-智能编写Python注释文档字符串从0到1快速入门——官网推荐的48种最佳应用场景(附python/node.js/curl命令源代码,小白也能学)
目录 Introduce 简介 setting 设置 Prompt 提示 Sample response 回复样本 API request 接口请求 python接口请求示例 node.js接口请求示 ...
随机推荐
- lua完整学习笔记
lua注释 -- 单行注释 --[[ 多行注释 ]]-- lua数据结构 nil 无效值与Java的Null类似,但是在条件表示中是false boolean 布尔值,tu ...
- 一款开源免费美观的WinForm UI控件库 - ReaLTaiizor
前言 今天推荐一款基于MIT license开源.免费.美观的.NET WinForm UI控件库:ReaLTaiizor. 什么是WinForm? WinForm是一个传统的桌面应用程序框架,它基于 ...
- Mongo 数据库备份和恢复命令
转载请注明出处: 在MongoDB中,使用mongodump和mongorestore命令来备份和恢复数据库 mongodump 1.使用方法: 使用 mongodump 命令可以备份MongoDB数 ...
- Json Schema简介和Json Schema的.net实现库 LateApexEarlySpeed.Json.Schema
什么是Json Schema ? Json Schema是一种声明式语言,它可以用来标识Json的结构,数据类型和数据的具体限制,它提供了描述期望Json结构的标准化方法. 利用Json Schema ...
- C++ Qt开发:QSqlDatabase数据库组件
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QSqlDat ...
- ElasticSearch之文件描述符的数量
ElasticSearch在运行过程中,涉及大量文件的打开.关闭.读.写等操作.因此当ElasticSearch进程的文件描述符数量不足时可能导致丢失数据等故障现象. 因此为保障ElasticSear ...
- 用 Socket.D 替代原生 WebSocket 做前端开发
socket.d.js 是基于 websocket 包装的 socket.d 协议的实现.就是用 ws 传输数据,但功能更强大. 功能 原生 websocket socket.d 说明 listen ...
- 文心一言 VS 讯飞星火 VS chatgpt (50)-- 算法导论6.2 2题
二.参考过程 MAX-HEAPIFY,写出能够维护相应最小堆的 MIN-HEAPIFY(A,i)的伪代码,并比较 MIN-HEAPIFY 与 MAX-HEAPIFY 的运行时间. 文心一言: MIN- ...
- 华为云云容器引擎CCE产品文档带来4个升级,降低使用难度
本文分享自华为云社区<华为云云容器引擎CCE产品文档优化升级!>,作者: 云容器大未来 . 云原生产品技术栈庞大,需要用户对容器.Kubernetes等核心技术都有扎实的理解和掌握:同时问 ...
- LiteOS内核源码分析:位操作模块
摘要:本文带领大家一起剖析了LiteOS位操作模块的源代码,代码非常简单,参考官方示例程序代码,实际编译运行一下,加深理解. 在进一步分析之前,本文我们先来熟悉下LiteOS提供的辅助功能模块–位操作 ...