Grading Vicuna:用于聊天AI的Llama,Alpaca和ChatGPT的开源替代品

工具软件 Edge插件网 1年前 (2023-08-08) 391次浏览 已收录 0个评论

将Vicuna与ChatGPT,LLaMA和Alpaca等替代LLM进行比较。构建聊天应用程序的最佳 AI 模型是什么?

Grading Vicuna:用于聊天AI的Llama,Alpaca和ChatGPT的开源替代品
让我们看看Vicuna-13b在聊天应用程序方面如何与竞争对手LLM相提并论。
作为人工智能初创公司的创始人,你可能知道像 ChatGPT 这样的大型语言模型在推进对话式人工智能方面有多大影响力。然而,由于商业许可成本、审查问题、性能下降、隐私问题和黑匣子,这些专有模式对于许多初创公司来说仍然遥不可及。

这就是一个名为Vicuna的开源项目的用武之地。Vicuna 由斯坦福等机构的一组研究人员开发,是一种开源对话模型,实现了 ChatGPT 质量的 90% 以上。这使其成为 GPT-4 等封闭模型的令人兴奋的替代品。

在本文中,我们将探讨LLaMA是什么,它是如何工作的,它的功能,以及你如何能够利用它作为人工智能创始人。我们将看到它如何与ChatGPT和基本LLaMA模型等竞争对手相提并论。我还将分享一些有用的提示和指南,您可以遵循有关模型特定方面的更多信息。

在本文中,我们将专注于LLaMA-13b,但有许多不同尺寸的LLaMA模型供您尝试。让我们开始吧!

注意:LLaMA并不是唯一一个微调LLaMA进行聊天的模型。查看我们关于将 LLaMA v2Alpaca 和 LLaMA-v2-chat 用于对话应用程序的指南。

LLaMA概述

在对话式AI领域,我们最近看到了惊人的进步,像ChatGPT这样的模型展示了非凡的自然语言能力。但是,作为具有上述所有问题的专有模型,ChatGPT 对于许多开发人员来说仍然是一个糟糕的选择。因此,需要更易于访问和开放的模型,以增强对话式应用程序的创新。

这就是LLaMA的用武之地。Vicuna由斯坦福大学,伯克利大学和MBZUAI等领先机构的研究人员开发,代表了尖端的开放式对话AI。它是通过在精选对话数据上微调 LLaMA 模型而创建的,展示了从开源基础模型迁移学习的力量。尽管Vicuna的尺寸比ChatGPT小,但它的会话质量与ChatGPT相匹配,并且明显优于其他开放模型。

但这不仅仅是关于LLaMA的技术。真正有影响力的是它在非商业研究许可下的可用性。这为最先进的对话式人工智能提供了途径,而这种对话式人工智能以前仅限于大型科技公司。我们终于有一个开放的模型,可以为下一代聊天机器人、虚拟助手、对话搜索引擎和其他创新应用程序提供动力。

LLaMA的承诺已经通过利用它的酷项目得到了证明。例如,MiniGPT4使用Vicuna构建了一个智能虚拟助手,LLaVA用它创建了一个对话搜索引擎,ToolLLaMA利用了Vicuna的自然语言内容创建能力。当然,有一天您可能会将自己的项目添加到此列表中!

对于人工智能开发人员和初创公司来说,LLaMA代表着一个令人兴奋的新机遇。其高性能、免费可用性和宽松的研究许可证可实现对话式应用程序的快速原型设计。初创公司现在可以使用尖端的对话式 AI 来验证和构建产品,而不是被访问专有模型所限制。竞争环境刚刚变得平坦。

因此,总而言之,Vicuna承诺使顶级对话智能的访问民主化。它的出现代表了建立开放人工智能模型以推动创新的一个重要里程碑。对于任何希望利用对话式AI的初创公司来说,Vicuna绝对是一个值得关注的项目!

LLaMA是如何创造的?是什么让它与众不同?

LLaMA的故事始于LLaMA,这是由Meta AI开发的开源语言模型。虽然有能力,但LLaMA没有与生俱来的会话能力,主要关注语言本身而不是对话的艺术。来自斯坦福大学、伯克利大学和MBZUAI等机构的研究人员着手改变这种状况。他们的目标是创建一个开源对话模型,与 ChatGPT 等专有聊天机器人相媲美。

顺便问一下,经过训练来处理和分析文本的AI模型(如LLaMA)与专门用于聊天的AI模型(如Vicuna)之间有什么区别?有几个关键因素可以区分两者:

  • 体系结构 – 像LLaMA这样的对话模型具有针对对话优化的编码器-解码器结构。编码器将对话历史记录和当前用户输入置于上下文中。然后,解码器生成相关响应。像LLaMA这样的通用语言模型缺乏这种专门的架构。
  • 训练目标 – 像LLaMA这样的模型经过微调,以最大限度地提高会话任务的性能。这涉及对对话数据集进行训练以优化对话指标。LLaMA更普遍地针对文本进行训练,而不是专门用于对话。
  • 多轮次功能 – 对话模型需要处理多轮次对话,在多个交流之间保持上下文和一致性。常规文本模型一次评估一个输入。
  • 交互性 – 对话式 AI 需要与用户流畅地交互,响应后续问题和澄清。文本评估更加被动,缺乏用户交互性。
  • 评估 – 对话模型需要除文本指标之外的更复杂的评估,测试一致性、细微差别等质量以及优雅处理不当响应的能力。

虽然像LLaMA这样的通用语言模型更侧重于文本分析和生成,而没有特定于对话代理的要求,但对话AI的目标从根本上比被动文本评估更复杂。

为此,创建Vicuna的研究人员在超过70,000次人类与ChatGPT对话交换中微调了LLaMA,专门研究对话模型,并教它对话上下文中文本的自然特征。这种微调对于使他们的版本LLaMA具有以前缺乏的对话智能至关重要。通过对对话数据的迭代训练,LLaMA被转换为Vicuna,这是一种针对多回合对话优化的编码器-解码器变压器。他们的努力效果如何?

进入竞技场:根据替代聊天AI模型评估Vicuna

为了评估LLaMA的能力,研究人员在200种不同的对话提示上对其进行了测试。为了进一步评估,他们让GPT-4模型比较判断Vicuna的反应。

结果表明,尽管LLaMA的规模较小,但ChatGPT在会话能力方面达到了ChatGPT质量的90%以上。它的表现明显优于原始的LLaMA模型。

通过将架构优化与对人类对话数据的专业微调相结合,研究人员成功地将LLaMA增强为与专有聊天机器人相媲美的开源对话模型。

让我们以来自官方项目站点的头对头测试为例。

Grading Vicuna:用于聊天AI的Llama,Alpaca和ChatGPT的开源替代品
LLaMA和竞争对手模型之间的正面挑战示例,在这种情况下使用 ChatGPT-3.5 作为潜在的替代方案。

项目现场有一系列示例任务,其中要求Vicuna-13b和竞争模型进行正面交锋。然后,GPT-4 模型用作评判者,为每个模型评分并说明其推理。这产生了一些真正令人大开眼界的比较。上图提供了一个示例。另一个是这个挑战,如下所示:

  • 类别: 角色扮演
  • 问题:您将如何在皇家宴会上介绍自己是中世纪骑士?

LLaMA-13b的回应:

“我是一个英勇的骑士,忠于国王。我将尽我所能捍卫他的荣誉,保护他的国家。(瘸腿!GPT-7 得分为 10/4,在我看来非常慷慨。

LLaMA-13b:

作为一名中世纪的骑士,我会在皇家宴会上深深地鞠躬和恭敬的演讲来介绍自己,承认我卑微的出身和我对王室的忠诚。我会这样说:

“我的领主和女士们,我是一个谦卑的骑士,发誓要服务和保护王国。我来自一长串的战士,他们世世代代为保卫这个王国而战。我很荣幸今天来到这里,在这样受人尊敬的公司面前,我希望用我的行动和行动赢得你们的信任和尊重。我承诺我的剑,我的盾牌和我的生命为我的国王和我的人民服务。

然后,我会在宴会上坐下,准备倾听和学习我的上级的明智建议,并尽我所能为他们服务。

哇!LLaMA的反应更好。以下是 GPT-4 的推理,解释了是什么让LLaMA成为 LLaMA 的优越替代品。

助理1[LLaMA]提供了简短而相关的回应,但它缺乏中世纪骑士介绍所期望的细节和形式。另一方面,助理2[Vicuna]提供了更全面和结构良好的回应,包括尊重的演讲,展示了骑士的谦逊,忠诚和对王国的奉献精神。这种回应更适合皇家宴会的背景,并表明对中世纪骑士的角色和礼仪有了更好的理解。

虽然LLM不是其他LLM的绝对正确的法官,但人类也不是。我认为使用人工智能来判断和评估人工智能是一种非常可扩展和一致的方式来判断哪些替代方案是最好的。

您应该在 LMSYS.org 网站上查看其他一些竞争对手的答案和任务。

让我们自己尝试一下:如何使用LLaMA构建基本的聊天机器人

现在我们已经了解了该模型如何与一些替代方案相提并论,让我们看看如何构建一个简单的聊天机器人,我们可以从命令行与之交互。此处提供的指南中的步骤可以进一步扩展,以便您可以继续为您的 AI 项目构建自己的聊天机器人

第 1 步:设置

安装 Node.js:确保系统上安装了 Node.js

创建项目目录:在终端中运行以下命令:

mkdir my-chatbot
cd my-chatbot
npm init -y
npm install replicate

设置 API 令牌:替换为实际的 API 令牌your_api_token_here

export REPLICATE_API_TOKEN=your_api_token_here

第 2 步:编写聊天机器人代码

创建一个名为 的文件,并添加以下代码:chatbot.js

const Replicate = require("replicate");

const replicate = new Replicate({
  auth: process.env.REPLICATE_API_TOKEN,
});

async function generateResponse(prompt) {
  const output = await replicate.run(
    "replicate/vicuna-13b:version_hash_here",
    {
      input: { prompt: prompt },
    }
  );
  return output.items[0];
}

const readline = require('readline');
const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout
});

function askQuestion() {
  rl.question('You: ', async (userInput) => {
    const botResponse = await generateResponse(userInput);
    console.log(`Bot: ${botResponse}`);
    askQuestion();
  });
}

askQuestion();

替换为LLaMA 13b 型号的正确版本哈希。version_hash_here

第 3 步:运行聊天机器人

通过执行以下命令运行聊天机器人

node chatbot.js

您现在可以通过命令行向聊天机器人发送消息!

不想构建自己的聊天机器人?您可以使用此演示来评估LLaMA的性能

Vicuna-13b-v1.3 的模型详细信息页面包含几个演示,可用于试用模型。这是一个嵌入式供您尝试(如果下面的链接中没有提供,您也可以使用此链接访问它)。

这个由 zeno-ml 构建的演示可让您比较模型和其他参数,以了解 Vicuna 与 LLaMA、GPT2 和 MPT 等竞争对手相比的表现如何,同时还可以改变温度或其他参数。

LLaMA的局限性

虽然对话技术发展迅速,但模型仍然面临重大挑战。

  • 一个问题是知识基础。 对话代理缺乏足够的真实事实知识基础,使他们容易做出听起来似是而非但不正确的回答。在现实世界中更多地接地可以提高准确性。
  • 推理能力是另一个需要改进的领域。对于聊天机器人来说,执行逻辑推理、因果推理和数学运算仍然很困难。他们的推理能力仍然有限。
  • 大规模评估人工智能系统的对话质量也带来了困难。 目前的解决方案,比如询问一个单独的人工智能法官,都有缺陷。制定严格的评估框架是一个悬而未决的问题。
  • 此外,由于依赖不完善的训练数据,偏见和安全问题仍然存在。对话模型有时可能表现不当或不安全。更好的训练数据管理非常重要。
  • 使聊天机器人适应特定用户和用例仍然具有挑战性。不同的域需要更多的个性化和定制。您不能轻易地做到这一点。

虽然已经取得了很大进展,但这些限制突出了需要改进的关键领域。推进知识基础、推理、评估、训练数据、定制和部署效率,可以通过 Vicuna 等模型实现更高水平的对话智能。

结论:使用Vicuna AI作为ChatGPT,LLaMA和其他LLM的开源替代品

LLaMA的开发在推进开源对话式人工智能方面取得了可喜的进展。通过微调专门针对对话应用程序的LLaMA模型架构和训练方法,研究人员能够创建一个免费提供的对话代理,与领先的专有替代方案竞争。

但是,仍有工作要做,以解决推理、评估、定制和其他领域的限制。虽然像LLaMA这样的模型在许多基准测试上取得了很好的结果,但它们并没有完全复制全面的人类对话。正在进行的关于调整这些模型的研究将非常重要。

尽管如此,LLaMA代表了在民主化获取最先进的对话智能方面向前迈出的宝贵一步。对于构建聊天机器人、助手和其他应用程序的初创公司和开发人员来说,像 Vicuna 这样的开源选项提供了受欢迎的功能,而无需限制性的商业许可。

Vicuna背后的起源和技术细节为对话AI的专业培训方法提供了有用的见解。随着研究的继续,我们可以期待看到基于这些方法的进一步创新。Vicuna背后的作者在开源这样一个有能力的对话代理方面做出了重要贡献。

虽然仍需取得更多进展,但Vicuna展示了开发开放式对话模型可以带来的有意义的结果。对于人工智能社区来说,它代表着一个有希望的一步,而不是最终的目的地。随着推进这些技术的持续努力,未来的潜力仍然令人兴奋。


Edge插件网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Grading Vicuna:用于聊天AI的Llama,Alpaca和ChatGPT的开源替代品
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址