我的 AI 学习一周总结:ChatGPT API 的改进

本周也在继续学习 AI based 应用研发,继续总结+做笔记。

ChatGPT API 的改进

新 API 除支持 ChatGPT 模型以外,还增加了一些功能参数,能让我们提升工具效率,同时降低费用消耗。

新增 messages 参数,显示定义角色

ChatGPT API 增加了 messages 参数,支持显示定义角色,可以取代之前的 prompt,更清晰的标记每一个内容的来源,方便 API 生成更有价值的内容输出。OpenAI 称之为“Chat Markup Language(ChatML)”,格式如下:

type MessageItem = {
  role: 'user' | 'system' | 'assistant';
  content: string;
};
type Messages = MessageItem[];

具体文档参见:Chat completion – OpenAI API

以前我们必须手动保留全部来往信息,放在 prompt 里。这样有几个问题:

  1. 往来数据量很大,很多时候要浪费钱在传输前面产生的内容上
  2. 除了 ChatGPT 以外,其它工具无法分析数据结构
  3. 我估计,OpenAI 那边的计算效率也不高

n 参数,支持一次性返回多个结果

以前虽然名为 choices,但每次只返回一个结果,如果要调整,就要多次发送 prompt,还要带上之前的结果,很浪费。

现在,如果是文字润色、内容仿写等场景,就可以从多个结果中选择最好的一个,再进行微调,无疑会大大提升效率,也会降低消费。

突破 token 限制

使用 OpenAI 自己的 embedding API,将自己的数据(比如聊天记录中的数据)导入,生成更符合自己需要的模型。新的模型被之前的数据重塑过,就会看起来更符合新的要求。

原文在此:这确实是一个相当好的绕过tokens长度限制解决方案,我尝试将这个方案整理一下

仓库在此:mckaywrigley/paul-graham-gpt: AI search & chat for all of Paul Graham’s essays. (github.com)

值得关注的项目

LlamaIndex(gpt-index)

Welcome to LlamaIndex (GPT Index)! — LlamaIndex documentation (gpt-index.readthedocs.io)

正在更名为 LlamaIndex(羊驼),可以将自己的数据和 LLM 结合,得到更适合自己的模型。基本上就是上面 “突破 token 限制” 逻辑的实现。比如,我们可以把一本书通过 LlamaIndex 喂给 ChatGPT, 得到的模型里就有了我们最近喂进去的知识,然后我们可以再用自然语言向 ChatGPT 提问,就会得到包含了新知识的答案。

感觉一扇新的大门正在打开。几乎所有说明书、客服,甚至一些高阶职位都可以(可能)被这个方案替代。据说实测结果,它对新知识的理解归纳总结能力都很强。

ChatPDF

ChatPDF – Chat with any PDF!

不知道跟上面一个项目是什么关系,感觉实现的功能很像。上传一个 PDF,然后使用自然语言的方式让 ChatGPT 帮你提炼内容。我试了一下,感觉很神奇,虽然我觉得不能替代完整读完一本书的价值,但帮我们快速归纳查找内容应该作用很大。

然则,我试用之后发现,它还是做不到“不知道就说不知道”,于是,如果我们的问题超出了书本和它原本模型的边界,它就又开始瞎编了。这仍然是很大的问题。因为用户可能默认它包含了书的全部内容,用户自己却不十分确定书的内容,于是很可能把错误的知识归纳当成正确的吸收。

bilingual_book_maker

yihong0618/bilingual_book_maker: Make bilingual epub books Using AI translate (github.com)

基于 ChatGPT/OpenAI 的全书翻译工具,可以把完整的一本书交给它,它会帮你拆开,一节一节的翻译,然后生成一本新的返回给你。

酷表

酷表ChatExcel

上传 excel,然后用自然语言描述你的需求,它会帮你自动调整表结构、编写函数,等。直到你满意,就可以下载表格,继续编辑。

目前来看有些文件会上传失败,可能还不太稳定,可以持续观望。

部署 Stable Diffusion 到 AutoDL.com

经 Easy 推荐,我在 AutoDL.com 购买了一台 3090 服务器,给几个朋友部署 Stable Diffusion 环境。AutoDL 的价格比较便宜,支持按小时租用,还有做好的镜像,使用起来比较方便。大概过程如下:

  1. 抢一台服务器。因为显卡数量有限,价格比较便宜,所以必须过抢。
  2. 服务器就位后,登录 JupyterLab,按照提示运行
  3. 使用“自定义服务”获取对外的 IP 和端口
  4. 因为系统盘容量有限,可以把模型放在数据盘上,然后软链过去使用
  5. 实测 3090 出图速度很快

复制周姐成功,接下来该学习 Lora 炼丹了。

Hackathon

近期跟 AI 有关的 Hackathon 也很多,我报名了好几个,已经有点忙不过来了……

推荐给大家:

  1. SegmentFault AIGC Hackathon 2023 黑客马拉松
  2. 即刻(App 里搜索“AIHackathon”)
  3. 腾讯 Light(报名已经截止)

现在各种 AI 的新知识简直太多了,看着各种新闻,一方面精神振奋,另一方面又觉得有点慌,感觉不自觉就会地落在别人后面……

另外,原则上来说,ChatGPT 是 OpenAI 的作品之一,很多功能可能要借助 OpenAI API 实现。不过实际讲述时,我就懒得区分了,相信读者应该能看明白。

如果您觉得文章内容对您有用,不妨支持我创作更多有价值的分享:


已发布

分类

来自

评论

欢迎吐槽,共同进步

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据