如何给AI大模型喂数据

月伴飞鱼 2025-01-11 13:10:06
公众号文章 > AI文章
支付宝打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者!

img

大家好呀,我是飞鱼

如果我想要大模型学习我的知识,怎么给他数据呢?

数据是大模型的食物,只有对了,模型才能更好地学习和成长。

这里介绍大模型优化的三种方式:长文本提示,RAG,微调。

长文本提示

比如我们上传一篇文章,发给大模型让他总结一下里面的内容,这个就是长文本提示。

我们上传的这篇文章,跟我们的提示词拼接后,会一起发给大模型。

这个长文本数据,它只能在你的这个对话窗口内有效,而且还不能超过它模型本身支持的上下文长度。

在问答系统、内容创作等任务中,提示词可以显著提升模型的表现。

RAG(检索增强生成)

RAG 就是我们经常听到的知识库。

这个知识库就好比我们写论文的时候,在图书馆里有一大堆书,当你开始写某个主题的时候。

  • 你才会根据你的需要去把那些相关的书籍段落都找出来参考和引用。

RAG 的知识库数据就是单独放在外面,提什么问你就去搜什么数据,跟我们写论文很像。

在问答系统中,RAG可以利用最新的数据和信息来生成更准确的答案,弥补大模型在知识更新方面的不足。

微调(Fine-Tuning)

其实微调中的数据才是直接给大模型喂进去。

微调大模型是把你喂进去的数据消化成了规律,固定在它的参数里。

其实在微调之前,真正做大模型的厂商已经做过了一步,叫做预训练

  • 这一步用了大量的算力数据让他有了基础知识。

微调它是把接收到的信息压缩成了一种规律,把它记住。

  • 那以后能沿着这个规律去做推测。

当需要模型在特定领域或任务中表现更佳时,微调是理想的选择。

  • 例如,在医学领域,通过微调可以让模型更好地理解和生成医学文本。

总结:大模型的学习方式就像选课,文本提示是旁听,RAG是图书馆查资料,微调是请家教。

有啥其他补充的内容,欢迎在评论区留言讨论。

想看技术文章的,可以去我的个人网站:http://hardyfish.top/。

  • 目前网站的内容足够应付基础面试(P6)了!

每日一题

题目描述

给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值

差值是一个正数,其数值等于两值之差的绝对值。

解题思路

中序遍历 目标二叉搜索树,每轮计算相邻节点的差值,并取最小。

在二叉搜索树中,左 < 根 < 右。

因此,最小差值,一定是相邻两个节点的差值。

而 中序遍历,则保证了 上一轮遍历的根 与 当前遍历的根 相邻(为父子关系)。

代码实现

Java代码:

class Solution {
    private int preNodeValue = -1;
    private int result = Integer.MAX_VALUE;
    public int getMinimumDifference(TreeNode root) {
        inorder(root);
        return this.result;
    }
    private void inorder(TreeNode root) {
        if (root == null) {
            return;
        }
        inorder(root.left);
        if (this.preNodeValue != -1) {
            // 因为是 二叉搜索树,且为 中序遍历
            // 因此 左 > 根 > 右,(root.val - this.preNodeValue) 必为正值
            this.result = Integer.min(root.val - this.preNodeValue, this.result);
        }
        this.preNodeValue = root.val;
        inorder(root.right);
    }
}
img
支付宝打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者!