当前位置: 首页 > news >正文

如何用自然语言 5 分钟构建个人知识库应用?我的 GPTs builder 尝试

开发者的想象力闸门一旦打开,迎接我们的必然是目不暇接的 AI 应用浪潮冲击。

98db0971b9df9fe4473abea06d63493f.jpeg

兴奋

早晨,我突然发现 ChatGPT 最新的 Create GPTs 功能可以用了。

990edb604e3886520251ca2f2d885467.jpeg

这太让我意外了,没想到这么快。根据页面上的提示,我一直以为还得等上一周左右。于是我就发了个感慨:

5f999305ac1dc9a41e7981f08771a887.jpeg

结果,就在短短 10 几分钟以后,我自己的机器人上线了。而我激动到又过了 10 多分钟,才想起来把这个事儿补到评论区。

6ff3bfc0f1aa0d9c0941488908eaa5dd.jpeg

本文我就来跟你分享一下 GPT 机器人的创建过程,以及使用效果。

不过进入正题之前,我还得先给部分读者补充一下背景知识 —— 你别嫌我啰唆,我发现真有自己的朋友到现在还没看过这场 OpenAI DevDay 发布会的。

GPTs 是什么呢?我为了偷懒,直接「借鉴」卓克老师的得到 App 专栏内容(顺便说一句,强烈推荐),让 ChatGPT 帮我做了总结,分享给你:

GPTs 是 OpenAI 的新功能,它像一个智能机器人。发布会上展示了三个例子:CanvaGPT 可以帮你设计海报;ZapierGPT 可以连接和控制手机里的各种 App,比如帮你查看日程,解决日程冲突,甚至帮你在微信上和领导解释你不能参加会议的原因;最后一个例子是,你可以用自然语言和 ChatGPT 沟通,生成个性化的 Agent,比如一个创业咨询师。对于开发者和投资人来说,这个新功能既让人期待又让人担忧,因为他们需要升级自己的产品才能与 OpenAI 竞争。

好了,背景介绍完毕。下面咱们就来看看,如何用这个功能构造你自己的 GPT 智能机器人,帮你解决重要或棘手的任务。

构建

构建 GPT 的过程非常轻松,因为都是引导对话式。

GPT builder 问我:

嗨!我来帮助您构建一个新的 GPT。您可以说类似于 “制作一个能为新产品生成视觉效果的创意师” 或者 “制作一个能帮助格式化我的代码的软件工程师”。您想要做什么?

我的答复是:

做一个文章已发布内容查询助理,帮我用已经发布的内容来回答问题

ChatGPT 立即开始思考。

a6d6e262cf58ce0fafd1ce8a12183102.jpeg

然后它很快给出来了结果。

bf501b76baa796f9fa00e31c2418d31c.jpeg

注意此时右侧的提示,以及下面给出的若干启发式初始问题。界面已经有了雏形。

下面它接着问我:

Great, we're making a content retrieval assistant that will use published articles to answer questions. How about we call this GPT "Article Assistant"?Would that work for you?

翻译过来为:

太好了,我们正在制作一个内容检索助手,它将使用已发布的文章来回答问题。我们可以把这个 GPT 称为 “文章助手”,你觉得这样行吗?

那当然没问题了。我表示赞同。

f45d063a10840fa4972454c602fc3af6.jpeg

然后,GPT builder 就开始设计图标。

3ce398d99e92c79a3b058158b643e606.jpeg

设计好后,GPT builder 问我这个图标怎么样?

我觉得图标画得并不差,但和主题偏差有点儿远。于是提出,最好和书籍、论文有关。

bee0a4c700a7634fe1e53e9b899f9e6c.jpeg

GPT builder 立即着手,并且修改成新的图标。如上图所示。然后问我的意见。

我表示:非常好!

a24541600d47445df085867be1df1c71.jpeg

GPT builder 很开心地问我具体细节了。

太棒了!现在,让我们来调整一下文章助手的工作方式。在搜索信息时,它应该优先考虑哪种内容?

我觉得这个问题很关键,可以设定不同的优先级和处理方式。我没想到这种对话引导,居然能将细节步骤考虑如此周详。

于是我回答说:

使用我上传的资料吧。

16b6ab4c2bafd8d21dde858d5327646e.jpeg

GPT builder 立刻给出了后续的追问:

明白。文章助手将优先考虑您上传的内容进行信息检索。接下来,如果助手在您的材料中找不到直接答案,它应该怎么做?您希望它询问澄清问题还是尝试根据可用信息提供最佳猜测?

既然我要建造的是个查询助手,全靠猜测来回答就不靠谱了。于是我指出:

先如实回答说在资料库中找不到,然后再尝试用你自身的检索能力 + 知识库来回答,并且给出详细的出处,如何?

18928b40d9d76c43a632d382fec15a44.jpeg

GPT builder 的答复为:

完美,文章助手将在无法通过您上传的文件解决您的问题时通知您,并通过利用其浏览能力和知识库提供最佳答案,引用详细来源。最后,在互动方面,您对助手如何与您沟通有任何偏好吗?应该是正式的、随意的还是介于两者之间?

这个问题,着实让我思索了一会儿。因为根据我对 ChatGPT 脾气的了解,是有的时候很「轴」。如果你说「严肃」,它就跟个学究差不多,回答起来一本正经不苟言笑,甚至有些干巴巴的;可你要说「生动」,它就贫嘴饶舌,天马行空一通乱诹。那我干脆就给它举个例子好了:

比较 formal,但不要太死板就好,如同一个热心的图书馆员为读者提供参考咨询就行

201920b06191f46f6106e09304ed8d1a.jpeg

我对自己的这个比方,还是很满意的。GPT builder 也似乎是听明白了。

那就这样定了。文章助手将以正式而亲近的语气与您交流,就像一位专注的图书管理员准备帮助您进行研究。请随意在右侧的游乐场中尝试使用文章助手,并且如果有任何需要进一步改进的地方,请告诉我。接下来你想做什么?

剩下的事儿,我就不需要对话来解决了,而是直接点开了设定标签。

a4f5e10dfda84922c7700246b62c83d7.jpeg

滑动到最下面,我选择上传文件,作为这个 GPT 的知识库。

d9cb719d83c02df24e17e8a0d0c74585.jpeg

我选取的知识库,是自己最近一段时间发布的文章(包括知识星球和小报童内容)。部分文章目录如下:

6e7afb7f3e6e9fd26155b3ba4386e080.jpeg

我把这些文章,进行了合并,做成了一个 knowledge.md 文件上传了上去。

bd0a3ae65d84c46160b673abcd316394.jpeg

然后,我非常机 (ji) 智 (zei) 地取消了下面这个默认设定,以保障数据隐私。

033138199cfb5ec69a5c4b4556760a95.jpeg

至此,咱们的设置环节就算搞定了。然后,点击右上角这个按钮。

7b1d724d878adb89c22bdc6c4a545da0.jpeg

新建 GPT 机器人,可以选择三种可见范围:

  • 创作者自己

  • 知道链接的用户

  • 公开发布

作为测试,我一开始选择的可见范围只包括了自己。然后,GPT builder 自动退出了设置页面,直接进入了我自己的 GPTs 用户交互界面。

0c2413e0cbc7e7e17b224e21f1a9de60.jpeg

测试

我过于激动,颤颤巍巍向 Article Assistant (我刚刚构建的 GPT 机器人)提出了自己的第一个问题:

我上传的资料中,都提到了哪些绘图的应用?请详细说明,并且在每一处举例时,都把对应的一级标题显示出来

Article Assistant 在思考……

95f9327a9fc926810491df811d59bfc2.jpeg

很快,它就给出来了结果:

353b738f6d7b2488af1cb5a8b96d4185.gif

最终呈现的结果如下:

79dc9aeb26d37390b85aa140f386844b.jpeg

在您提供的资料中,提到了以下绘图应用及其相关的一级标题:

  1. AI 绘图:

  • Disco Diffusion 和 Midjourney V5: 这两个工具被用于AI绘图。特别地,在Midjourney V5的例子中,使用了GPT-4提供的提示语增强,以展示AI绘图在过去一年的快速进化。

  1. Midjourney: 被提及用于制作皮克斯3D风格头像。用户在网上展示自己使用Midjourney制作的头像,效果非常好。

  1. DALLE 2: 在一段提到了人工智能绘图应用DALLE 2开始公开测试的文本中被提及。

  1. Stable Diffusion: 在一段提及绘制兔子形象的例子中,说明了使用AI绘图应用Stable Diffusion可以快速完成绘画任务。

  1. Tana AI builder: 这是一个可以在笔记里面自动生成提示词,然后让DALLE绘图的工具。

  1. 目录中的AI绘图工具:

  • Text to Image Art Generator

  • 在 MacBook 本地运行 Stable Diffusion

  • OpenAI 的 AI 绘图工具 DALL・E

  • 用 Midjourney 绘制皮克斯风格头像

  • 中文 AI 绘画:造梦日记

这些应用都是在 AI 和机器学习技术帮助下,让用户能够更加便捷地进行绘图和创造视觉艺术品。

我人工检视了答案,准确无误,非常开心。又尝试了几个其他方向的问题。

上午正好赶上组会,于是我给学生们当场做了演示。

在我的资料库中,哪些地方提到了 GPT-4 ?

这是 Article Assistant 的回答:

7d710a818ced832382a75a51f79b7a81.jpeg

在您的资料库中,提到了 GPT-4 的几个方面:

  1. GPT-4 分析错误原因并给出新代码的能力。

  1. GPT-4 在编程和代码生成质量方面的表现。

  1. GPT-4 在 ChatGPT Plus 中的使用限额和执行速度。

  1. 使用 GPT-4 进行逆向工程的可能性。

  1. GPT-4 作为 AudioPen 使用的大模型的猜测。

  1. GPT-4 在多模态输入和编程能力方面的增强。

  1. GPT-4 在自动化和信息获取流程中的改变。

  1. 人工智能和 GPT-4 的合作和协作的重要性。

  1. 用于代码撰写和解释功能的工具 Cursor 宣称使用的是 GPT-4 技术。

以上总结涉及 GPT-4 的性能、限制、以及在自动化、编程、逆向工程和协作方面的应用。

Article Assistant 一边输出,我和学生一边共同兴奋地实时检验和讨论。上述答案确实都来自于我之前发布的文章。

下面我决定尝试调用一下 Article Assistant 内置的多模态功能。

请用一张图,尽可能生动形象真实描绘我的资料库内容

居然,Article Assistant 真的就画出来了。

33f4ecfbd53008d6632922379b2565d7.jpeg

我放大一下,你看看用来描述我的创作主题是否合适?

b3f7f92d7b6c7cd9ec46d43c1c83e232.jpeg

只不过,这次我的学生们似乎没有刚刚的兴奋,而是有些担忧。庆薇皱起眉头:

老师,以后还要人来干啥啊?

这个问题,我听了心里也不大是滋味儿。为了调解一下大伙儿的情绪,我让他们自己提个问题,现场测试。

于是肖骁提出:

老师,你问问他之前在文章里的预测和判断,后来都有哪些变成了现实?

我觉得这个问题好啊。可以把知识库信息和外部最新查询结果进行比对。

于是我问 Article Assistant :

查询我的资料库,有哪些过去我认为未来有前景的可能发展,现在已经变成了现实?

这是 Article Assistant 的回答:

2dc9103140d749c7e8d73974ae86bbff.jpeg

在您的资料库中,没有直接提到过去认为未来有前景的可能发展,现在已经变成现实的具体实例。您可能需要直接查看原始资料以确定这些信息。如果您需要帮助确定特定发展或趋势,请提供更多上下文或指导。

学生们看起来很失望。我说这里就得看你会不会在遭遇挫折的时候,改进问题了。既然作为一个整体问题,Article Assistant 回答并不完满。我们可以帮它拆解。这是 prompt engineering 的技巧之一。

于是我先问:

查询我的资料库,看有哪些展望的预判和论断,一一列出

Article Assistant 这次并没有让我们失望。

b0378ad042d95281ff45eccba2dc028d.jpeg

答案为:

在您的资料库中,以下是一些关于未来发展的预判和论断:

  1. AI 领域的不断发展将会在数据分析、编程和 AI 伦理等方面创造新的就业机会。

  1. AI 在医疗保健方面应用于疾病诊断、预测患者预后和推荐个性化治疗方案,以及在新药发现上的潜力。

  1. GPT-4 在医疗保健、金融和教育等领域的应用潜力,如生成精确的医学诊断和预测金融趋势。

  1. ChatGPT 和 GPT-4 在知识管理上的潜力,提出了 AI 应辅助而不是取代人类智慧的观点。

  1. GPT-4 作为 GPT-3 的后继者,其在自然语言处理方面的潜在影响力和预计改进。

这些预判和论断从各个角度展望了人工智能在不同领域的应用前景,以及对未来工作和研究的可能影响。

然后,我就继续追问:

下面请你查询最新资料,看上述论断是否已经变成了现实?举出对应的例子

a1f9cff385cd33b28264f09950125230.jpeg

Article Assistant 的解答为:

关于您的资料库中提出的展望预判和论断,以下是一些已经成为现实的对应例子:

  1. AI在数据分析的就业机会:研究科学家在人工智能领域有着很高的需求和可观的平均薪资,这表明AI在数据分析上的应用已经是一个成熟的就业市场。

  1. 大数据工程师:作为人工智能中最高薪的角色之一,大数据工程师在AI领域扮演着重要的角色,平均年薪可达151,300美元,显示出大数据分析的前景已经变为现实。

  1. 软件架构师:平均年薪150,000美元的软件架构师,其薪资随着在人工智能、机器学习和数据科学方面的专业知识而提高,这也反映了这些领域的专业技能已经变得越来越有价值。

目前,LinkedIn 上列出的 AI 工作岗位超过 15,000 个,这一数字展示了 AI 技术在多个行业的广泛应用和需求,从技术公司到咨询、医疗保健、零售和媒体公司,都在寻求 AI 专业人才。

要说完满,我觉得算不上。因为它给出的例子,只是答复和印证了上一个问题答案中「就业机会」创造部分。但是两个问题下来,它的回答确实回应了学生提出的最初问题。希望以后它能在问题的自动划分,和总结的全面性上改进得更好。

限制

除此之外,目前 GPTs 还是有不少限制和缺憾。

例如我提出下面这个问题:

在我的资料库中,都有哪些主题最常出现?请列表方式列出,并对出现频次进行可视化绘图

e52f364888128d0efd630a6628d49e3a.jpeg

一页没有显示完,我让它继续:

0346b4c27a0bef21cad80dbfc718b120.jpeg

这里你就可以清楚看到问题。

首先,统计主题词出现频率肯定有问题。因为我不可能对重要主题词只提及一遍。上述的内容有的根本就不算是重要主题词。这里应该有统计方式的缺陷。

另外,就是绘图里面中文显示依然有问题。主题的中文部分,在图中的坐标轴下全都变成了方框。这些问题,我在当初给你演示 Code Interpreter 时曾经详细介绍过,此处就不赘述了。

小结

本文我为你介绍了 OpenAI DevDay 最新发布的 GPT builder 使用方式和效果。通过上传自己的已发布文章作为知识库,我真的只用了几分钟的时间和数个轮次的自然语言对话,就构造了自己的「知识分身」,还能帮助自己和学生、读者来解答问题。我现在还沈浸在兴奋中。尽管它还有很多限制与问题,但我知道这仅仅是个开始。开发者的想象力闸门一旦打开,迎接我们的必然是目不暇接的应用浪潮冲击。

这几天,我陆续看到了朋友们发来的 GPTs 样例。其中,让我感受最深的,就是立青使用 ChatGPT 创建 BibiGPT 竞品后的这一条感慨。开发者需要进行怎样的方向调整?短短几天内网络空间已经有了很多讨论,我不想赘述。只希望用立青的这个感受分享,再让你体验一下冲击的烈度。

3fa39f62682944e4a3f056e550af1201.jpeg

祝(自然语言方式) AI 应用创建愉快!

你能耐心读到这里,咱们也算是有缘。我邀请你一起来测试一下我的 Article Assistant 吧。链接在这里。
https://chat.openai.com/g/g-eIK7zBkt1-article-assistant

不过我有言在先:

第一、因为这只是个测试版本,所以我不保证该机器人助手答案的准确;

第二、后续随时可能「召回」。如果你不巧没有第一时间使用,后续打不开链接,也不要急着骂我「骗子」哦 😂

点赞 +「在看」,转发给你身边有需要的朋友。收不到推送?那是因为你只订阅,却没有加星标

欢迎订阅我的小报童付费专栏,每季度更新不少于10篇文章。订阅一整年价格优惠。

fd1c703e91c2b03cbc7336bef39f3d2f.jpeg

如果有问题咨询,或者希望加入社群和热爱钻研的小伙伴们一起讨论,订阅知识星球吧。不仅包括小报童的推送内容,还可以自由发帖与提问。之前已经积累下的帖子和问答,就有数百篇。足够你好好翻一阵子。知识星球支持72小时内无条件退款,所以你可以放心尝试。

b405f60b0c1d6b04c08eb18a602f071e.jpeg

若文中部分链接可能无法正常显示与跳转,可能是因为微信公众平台的外链限制。如需访问,请点击文末「阅读原文」链接,查看链接齐备的版本。 

延伸阅读

  • 如何用 ChatGPT 的 Advanced Data Analysis 帮你采集数据?

  • 如何用 ChatGPT 一句话生成 Web 应用?

  • AI 真要成精了?ChatGPT 上手体验

  • 未来的写作长啥样?LEX 用 GPT-3 AI 给你点儿颜色看看

  • 如何用 ChatGPT 帮你自动分析数据?

相关文章:

  • MarkDown文件插入图片(绝对\相对路径\调整图像大小位置)
  • Hadoop原理,HDFS架构,MapReduce原理
  • LeetCode Hot之七:438. 找到字符串中所有字母异位词
  • Linux下C++调用python脚本实现LDAP协议通过TNLM认证连接到AD服务器
  • postswigger 靶场(CSRF)攻略-- 1.没有防御措施的 CSRF 漏洞
  • 【Python】 Python 使用 Pillow 处理图像:几何变换
  • C //例 7.12 用选择法对数组中10个整数按由小到大排序。
  • 基于JAX-WS实现RESTful形式的web服务端点(endpoint)
  • 【数据分享】2021-2023年我国主要城市逐月轨道交通运营数据
  • 家庭安全计划 挑战赛| 溺水预防
  • FTP、NFS、SAMBA系统服务一
  • Java: 实现电影信息管理系统 (javaBean)
  • 前端面试之事件循环
  • sqoop笔记(安装、配置及使用)
  • 【架构】后端项目经典分层架构介绍
  • 0基础学习移动端适配
  • Angularjs之国际化
  • Apache Zeppelin在Apache Trafodion上的可视化
  • CODING 缺陷管理功能正式开始公测
  • IDEA常用插件整理
  • Linux下的乱码问题
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • windows下使用nginx调试简介
  • 基于axios的vue插件,让http请求更简单
  • 如何解决微信端直接跳WAP端
  • 使用Swoole加速Laravel(正式环境中)
  • 听说你叫Java(二)–Servlet请求
  • 微信小程序填坑清单
  • 我们雇佣了一只大猴子...
  • ​flutter 代码混淆
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • ${ }的特别功能
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (02)Cartographer源码无死角解析-(03) 新数据运行与地图保存、加载地图启动仅定位模式
  • (5)STL算法之复制
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (LeetCode C++)盛最多水的容器
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (附源码)springboot建达集团公司平台 毕业设计 141538
  • (四)Controller接口控制器详解(三)
  • (原創) 系統分析和系統設計有什麼差別? (OO)
  • (转)EXC_BREAKPOINT僵尸错误
  • (转)微软牛津计划介绍——屌爆了的自然数据处理解决方案(人脸/语音识别,计算机视觉与语言理解)...
  • ... 是什么 ?... 有什么用处?
  • .NET DataGridView数据绑定说明
  • .Net Remoting(分离服务程序实现) - Part.3
  • .NET 服务 ServiceController
  • .NET单元测试
  • .NET正则基础之——正则委托
  • .net中应用SQL缓存(实例使用)
  • /使用匿名内部类来复写Handler当中的handlerMessage()方法
  • @property括号内属性讲解