位置: IT常识 - 正文

ChatGPT开源平替——OpenChatKit(前OpenAI团队打造)(开源cti)

编辑:rootadmin
ChatGPT开源平替——OpenChatKit(前OpenAI团队打造)

推荐整理分享ChatGPT开源平替——OpenChatKit(前OpenAI团队打造)(开源cti),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pingcode 开源,开源 pki,开源 pki,ipc开源,plato 开源,开源ippbx,开源ippbx,开源ipam,内容如对您有帮助,希望把文章链接给更多的朋友!

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

(封面图由ERNIE-ViLG AI 作画大模型生成)

ChatGPT开源平替——OpenChatKit(前OpenAI团队打造)

OpenChatKit是一个由前OpenAI研究员共同打造的开源聊天机器人平台。它包含了训练好的大型语言模型、定制配方和可扩展的检索系统,可以帮助用户快速构建高精度、多功能的聊天机器人应用。

其中,最核心的组件是一个经过微调的、具有200亿参数的语言模型——GPT-NeoXT-Chat-Base-20B。这个模型基于EleutherAI的GPT-NeoX模型,重点调整了多轮对话、问答、分类、提取和摘要等多项任务,并使用了4300万条高质量指令进行训练。这使得OpenChatKit在处理聊天对话时可以提供高精度、流畅的回答。

除此之外,OpenChatKit还提供了定制配方的功能,可以帮助用户根据自己的数据集微调模型,以提高模型在特定任务上的表现。另外,该平台还提供了可扩展的检索系统,可以从文档存储库、API或实时更新信息源等多个来源中检索信息,以提供更全面的回答。

OpenChatKit详细介绍

OpenChatKit是一款开源的聊天工具包,由前OpenAI研究员和Together Computer共同开发。该工具包包含了一个200亿参数的大型语言模型、定制配方和可扩展的检索系统,可帮助用户构建高效的聊天机器人和对话系统。

200亿参数的语言模型

OpenChatKit的核心是一个200亿参数的语言模型,使用了EleutherAI的GPT-NeoX-20B进行微调,以实现更高效的对话和任务处理。该模型在100%碳负载计算上进行了4300万条指令的微调,着重于多轮对话、问答、分类、提取和摘要等多个任务。这样的微调可使模型更好地适应用户需求,并提供更准确的回答。

定制配方

除了强大的语言模型,OpenChatKit还提供了定制配方,可帮助用户调整模型以满足特定的任务需求。用户只需准备自己的数据集,并使用OpenChatKit的配方来微调模型即可获得高精度的结果。这样的配方可帮助用户快速构建自己的聊天机器人和对话系统,提高对话效率和准确度。

可扩展的检索系统

OpenChatKit还提供了一个可扩展的检索系统,可帮助用户从文档存储库、API或其他实时更新信息源中添加信息。这样的检索系统可使机器人更加智能,能够从更多的信息中获取答案,并提供更加准确的回答。

模型优点

多轮对话:OpenChatKit的语言模型可进行多轮对话,并能够在多次对话中保持上下文,并根据用户的需求提供相应的回答。

问答:OpenChatKit的语言模型可对问题进行答复,并可基于文档或数据集提供更加准确的答案。

分类:OpenChatKit的语言模型可对文本进行分类,并可用于情感分析、主题分类和意图识别等任务。

提取:OpenChatKit的语言模型可从文本中提取结构化信息,并可用于自然语言生成和自动摘要等任务。

多语言支持:OpenChatKit的语言模型可支持多种语言,可应用于不同国家和地区的聊天机器人和对话系统。

高效的微调:OpenChatKit的定制配方可使用户快速微调模型,提高对话效率和准确度。

训练细节

OpenChatKit的训练细节包括硬件、优化器、梯度累积、批次和学习率等参数设置。

ChatGPT开源平替——OpenChatKit(前OpenAI团队打造)(开源cti)

硬件 OpenChatKit的模型训练使用了2 x 8 x A100 GPU的硬件配置。

优化器 在优化器方面,OpenChatKit采用了8bit-AdamW。8-bit训练是一种使用低位精度进行训练的技术,它可以提高模型的训练速度和内存效率。AdamW是Adam算法的一个变种,它使用L2正则化来更新权重,可以帮助模型更好地避免过拟合。

梯度累积 为了能够训练更大的批次,OpenChatKit使用了梯度累积技术,将多个小批次的梯度相加后再更新模型参数。在训练过程中,OpenChatKit采用了2次梯度累积。

批次 OpenChatKit使用了一个相对较大的批次大小,每个批次包含2 x 2 x 64 x 2048 = 524,288个标记。这可以帮助模型更好地利用硬件资源,提高训练速度和效率。

学习率 在学习率方面,OpenChatKit采用了一种温和的预热策略,将学习率逐步增加到1e-6,预热期为100个步骤,之后保持不变。这种策略可以帮助模型更好地适应训练数据,避免在训练初期发生梯度爆炸或消失等问题。

通过这些参数设置,OpenChatKit能够在大规模数据上进行高效、准确的模型训练,从而为用户提供更好的聊天体验和更多的应用场景。

github介绍

OpenChatKit是一个强大的开源工具,为不同应用提供专门或通用的聊天机器人的创建基础。该工具包包括一个经过调整的、拥有200亿参数的语言模型、一个拥有60亿参数的模型以及一个可扩展的检索系统,可以包括来自自定义库的最新响应。它是在Together、LAION和Ontocord.ai合作的OIG-43M训练数据集上训练的。这不仅是一个模型发布,而且是一个开源项目的开始。我们发布了一组工具和流程,以进行社区贡献的持续改进。

在这个项目中,你可以找到以下内容的代码:

训练OpenChatKit模型使用模型进行推理测试使用检索索引扩展模型

在开始之前,你需要安装PyTorch和其他依赖项。

OpenChatKit的基础模型是GPT-NeoXT-Chat-Base-20B,它是GPT-NeoX的一个 fine-tuned 版本,用于对话数据集。我们在Huggingface上发布了该模型的预训练权重togethercomputer/GPT-NeoXT-Chat-Base-20B。

该聊天模型是在LAION、Together和Ontocord.ai创建的OIG数据集上进行训练的。你可以通过在repo的根目录下运行以下命令从Huggingface下载该数据集:

python data/OIG/prepare.py

在训练之前,你需要从Eleuther AI下载GPT-NeoX-20B,并将其准备好进行微调。在repo的根目录下,运行以下命令:

python pretrained/GPT-NeoX-20B/prepare.py

为了微调GPT-NeoXT-Chat-Base-20B,你可以使用 training/finetune_GPT-NeoXT-Chat-Base-20B.sh 脚本来配置和运行训练循环。在下载数据集和基础模型之后,运行以下命令:

bash training/finetune_GPT-NeoXT-Chat-Base-20B.sh

默认情况下,训练脚本只是打印损失,但它也可以使用loguru输出指标或将其报告给Weights & Biases。

你可以使用以下命令将权重转换为Huggingface格式,以便使用该模型执行推理:

mkdir huggingface_models && python tools/convert_to_hf_gptneox.py --ckpt-path model_ckpts/GPT-Neo-XT-Chat-Base-20B/checkpoint_5 --save-path /huggingface_models/GPT-NeoXT-Chat-Base-20B --n-stages 8 --n-layer-per-stage 6

为了测试该模型,OpenChatKit提供了一个简单的命令行测试工具来与机器人进行交互。你可以通过以下命令来启动测试工具:

python inference/bot.py

如果要从Huggingface仓库加载基础模型,可以使用以下命令:

python inference/bot.py --model togethercomputer/GPT-NeoXT-Chat-Base-20B

OpenChatKit还提供了一个检索增强模型的实验性功能,可使用维基百科索引查询。你可以通过以下命令来下载维基百科索引:

python data/wikipedia-3sentence-level-retrieval-index/prepare.py

在启动检索增强模型之前,你需要使用以下命令启动OpenChatKit测试工具:

python inference/bot.py --retrieval

当模型和索引加载完毕后,所有查询都将与额外的上下文进行增强。

总之,OpenChatKit是一个非常有用的开源工具,可以帮助你快速创建不同类型的聊天机器人,并提供各种训练和测试工具。它是一个活跃的开源项目,社区可以不断改进它。

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️

👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博相关......)👈

本文链接地址:https://www.jiuchutong.com/zhishi/298878.html 转载请保留说明!

上一篇:npm ERR! notarget No matching version found for xxx@^1.0.64. npm 插件安装失败

下一篇:Cookie(cookie什么意思啊)

  • 跨月的增值税普票作废步骤
  • 业务招待费报销要求
  • 应交税费是没有增值税吗
  • 房产报废手续
  • 哪些财务指标可以用于判断一个企业即将发生财务危机
  • 科技公司增值税率是多少
  • 一般纳税人公司是什么型企业
  • 公司内帐和外账的区别
  • 1元换购怎么做账
  • 公司新装宽带怎么做账?
  • 结转应交所得税属于利润分配吗
  • 企业接受捐赠是营业收入吗
  • 分支机构的固定资产转移如何处理?
  • 运输营改增
  • 固定资产清理收入增值税税率
  • 商品编码选错税务会直接罚款吗?
  • 预收账款增值税和消费税纳税时间
  • 增值税扣税凭证抵减销项税额
  • 股权增资稀释股价会涨吗
  • 高温津贴的发放
  • 免税单位出租房产如何缴纳房产税
  • 工程施工购买的材料费会计分录
  • 加计抵减政策销售额占比怎么算
  • 企业合并的增值税处理
  • 王者荣耀花木兰打法教学
  • 交增值税还交营业税吗
  • 苹果手机下载爱思极速版有什么影响
  • excel多表操作法
  • cuda completed with errors
  • php 字节
  • 补税的分录
  • yolov3图像识别
  • php判断数组是否为空的函数
  • php数组函数面试题
  • 应交城建税怎么算
  • opencv识别车牌
  • 购入固定资产应该怎么做账
  • 优先股股息必须支付吗
  • 出口货物的报关时间为货物运抵海关
  • 退还留抵税额政策解读
  • 加计扣除的增值税怎么做账
  • 地方水利建设基金减免政策2023
  • 多用途卡的监管机构是
  • 交易性金融资产公允价值变动怎么算
  • 税务师考试的报名时间
  • 转让旧固定资产可以开专票吗
  • 发票上的印记能去掉吗
  • 建筑工程人工费调整
  • 小规模纳税人退税政策
  • 常见的递延所得税
  • 对方开商业承兑汇票给我们
  • 怎样申请开发票
  • 库存现金的主要内容有哪些
  • 以前年度损益调整账务处理分录
  • 无形资产计提折旧可以转回吗
  • 2020公司年会奖品清单
  • 机票报销需要什么单据
  • sql server 3417错误
  • winxp怎么打印
  • uefi模式怎么装机
  • win7系统不能用了?
  • frameworkservic.exe是什么进程 有什么作用 frameworkservic进程查询
  • win10安装失败
  • linux apache 启动
  • win10更新中重启会怎么样
  • windows7旗舰版怎样扩大虚拟内存
  • windows7文件操作步骤
  • 批处理常用命令总结
  • 批处理文件的拷贝怎么写
  • nodejs数据库数据渲染
  • linux shell获取ip地址
  • jquery发送json
  • socket python
  • 使用GeoPainter一步一步布置场景
  • 江西省税务局拟录用人员公示
  • 残疾人个人所得税怎么申报退税
  • todesk点不了
  • 工会银行卡怎么开通
  • 郑州市区税务局
  • 2021年河南医保
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设