专栏目录
耗时一下午,我实现了 GPT Terminal,真正拥有了专属于我的 GPT 终端!
如何用 GPT 在 5 分钟内 ”调教“ 出一个专属于你的 ”小黑子“?
如何丝滑实现 GPT 打字机流式回复?Server-Sent Events!
我是如何让我的 GPT Terminal “长记性” 的?还是老配方!
一个合格的类 GPT 应用需要具备什么?一文带你打通 GPT 产品功能!
开发一个 ChatGPT 真的只是当 “接口侠” 吗?GPT Terminal 细节分享!
如何借助于 OpenAI 以命令的方式在 GPT 终端上画一只 “坤”?
项目地址:Dify 是今天文章的主角,我们正是依靠于该平台强大的能力,搭建出属于我们的语言模型!
Dify 是一个可视化、可运营、可改进的 LLM
训练平台,它提供了强大的 LLMOps
能力。此外,它还提供了搭建 Web App
的能力。这些意味着你可以用它快速开发一个专属于你的 ChatGPT
应用,你可以基于此进行训练、微调,直到它变成你喜欢的模样!
LLMOps(Large Language Model Operations)是一种基于机器学习模型的运维(Operations)实践,是一个涵盖了大型语言模型(如GPT系列)开发、部署、维护和优化 的一整套实践和流程。
LLMOps 的目标是确保高效、可扩展和安全地使用这些强大的 AI 模型来构建和运行实际应用程序。它涉及到模型训练、部署、监控、更新、安全性和合规性等方面。
Dify 快速开始
今天,咱们就借助于 Dify 强大的能力,动手训练一个模型!
我们的目的就是想让训练出来的语言模型所输出的内容,均符合我们的预期,并且它不会胡编乱造,捏造事实。
注册 Dify & 创建应用
进入 Dify 官方页面,注册并填写 API Key 后,点击创建应用。
接着,我们为即将诞生的模型,起一个炫酷的名字 真IKun
,给它设置一个贴切的头像,并选择应用类型为 对话型应用
。
- 之前我们做的
IKun
上下文信息太少,数据量不够,导致其只能回答有限的问题,远远达不到真
的程度。
点击创建后,我们便可以得到如下界面:
如果我们要求不高的话,其实现在就已经得到了一个普通的 ChatGPT
应用啦,我们可以与它进行基本的 GPT
对话。但我们又怎么满足于此呢?速速进入下一步 – Fine-tuning
!
提示词编排
大家进入界面后,可以看到左边侧边栏有 提示词编排
按钮,我们在这里可以输入对话前的提示词,从而一定程度上调整模型的输出内容。如下图所示:
在这里,我将 IKun
的基本素养作为提示词传输给语言模型,并依次点击 确认
与 发布
按钮。接下来,让我们测试一下,它能否达到我们预期的效果!
它确实理解了我们输入给它的上下文,并且能够根据问题,输出相对理想的内容。但如果 Dify 真的只是这样,那么它并没有多么强大,因为在 OpenAI 提供的接口中,我们通过设置上下文参数,也可以实现这样的效果(详情请参考 GPT Terminal 专栏)。接下来,让我们看看 Dify
真正强大的地方。
构建并填充数据集
我们点击导航栏的 数据集
按钮,并点击 创建数据集
按钮,开始创建。
我们可以看到,需要通过导入已有的文本内容,创建我们自己的数据集。
这些数据其实还是比较容易获取啦,我们可以准备两个文件:关于🐔哥的个人资料(从 某基百科
或 某度百科
中获取)、🐔哥的梗(从 某乎
、某音
中获取)
接着,我们进入下一步 – 文本分段与清洗
。
保留默认选项,直接点击 保存并处理
进入下一步即可。
大功告成!接下来咱们去填充数据集!
返回到之前构建应用的界面,点击上下文的 添加
按钮,将我们的数据集导入,并点击 发布
按钮,生成新的模型。
效果展示
最后生成的 IKun
似乎能够回答一些问题,但是感觉没有那么活灵活现,没有达到资深 小黑子
的程度。可能是我们的数据集还是太少,也可能是咱们的 梗文化
太深奥啦,语言模型难以理解。不过当我们 Feed 的数据量越来越大、越来越精确时,相信它一定可以达到我们想要的效果!
总结
今天通过借助于 Dify
平台,我们体验了一把自己训练模型是什么感觉!虽然它还没有达到真正能够理解语言文化的程度,但是随着 LLM
的发展,这一功能一定可以在不远的将来实现。
大家有兴趣的可以自己去玩一玩,制作一个自己的语言模型!