【大模型】基于 LlaMA2 的高 star 的 GitHub 开源项目汇总

【大模型】基于 LlaMA2 的高 star 的 GitHub 开源项目汇总

  • Llama2 简介
  • 开源项目汇总
    • NO1. FlagAlpha/Llama2-Chinese
    • NO2. hiyouga/LLaMA-Efficient-Tuning
    • NO3. yangjianxin1/Firefly
    • NO4. LinkSoul-AI/Chinese-Llama-2-7b
    • NO5. wenge-research/YaYi
    • NO6. michael-wzhu/Chinese-LlaMA2

Llama2 简介

2023年7月19日:Meta 发布开源可商用模型 Llama2。

Llama2 是一个预训练和微调的生成文本模型的集合,其规模从70亿到700亿个参数不等。

LLaMA2 的详细介绍可以参考这篇文章:【大模型】更强的 LLaMA2 来了,开源可商用、与 ChatGPT 齐平

下面介绍几个高 star 的 GitHub 开源项目:

star 数量截止日期2023年8月23日

开源项目汇总

NO1. FlagAlpha/Llama2-Chinese

  • star:4.2K

  • GitHub地址:
    https://github.com/FlagAlpha/Llama2-Chinese

  • 介绍:
    Llama中文社区,最好的中文Llama大模型,完全开源可商用。

  • 良好的社区
    在这里插入图片描述

  • 开放且不断增加的数据
    在这里插入图片描述

  • 开源可下载可商用的模型
    我们基于中文指令数据集对Llama2-Chat模型进行了微调,使得Llama2模型有着更强的中文对话能力。LoRA参数以及与基础模型合并的参数均已上传至Hugging Face https://huggingface.co/FlagAlpha,目前包含7B和13B的模型。

在这里插入图片描述

  • 详细的模型微调过程
    在这里插入图片描述
  • 其他
    包括:模型量化、推理假设、模型评测、集成LangChain框架等

NO2. hiyouga/LLaMA-Efficient-Tuning

  • star:3.2K

  • GitHub地址:
    https://github.com/hiyouga/LLaMA-Efficient-Tuning

  • 介绍:
    Easy-to-use LLM fine-tuning framework (LLaMA-2, BLOOM, Falcon, Baichuan, Qwen, ChatGLM2)

  • 开放且不断增加的数据
    在这里插入图片描述

  • 开源可下载可商用的模型,且支持很多开源模型
    在这里插入图片描述

  • 支持多种模型训练、微调方法
    在这里插入图片描述
    支持单卡训练、分布式多级多卡并行训练,脚本很详细,建议看作者的GitHub。

NO3. yangjianxin1/Firefly

  • star:2.1K

  • GitHub地址:
    https://github.com/yangjianxin1/Firefly

  • 介绍:
    Firefly(流萤): 中文对话式大语言模型(全量微调+QLoRA),支持微调Llma2、Llama、Qwen、Baichuan、ChatGLM2、InternLM、Ziya、Bloom等大模型

  • 本项目主要内容如下:

    📗 支持全量参数指令微调、QLoRA低成本高效指令微调、LoRA指令微调(后续将会提供支持)。
    📗 支持绝大部分主流的开源大模型,如百川baichuan、Ziya、Bloom、LLaMA等。
    📗 支持lora与base model进行权重合并,推理更便捷。
    📗️ 模型裁剪:通过LLMPruner:大语言模型裁剪工具 ,开源裁剪后的Bloom模型权重 。在保留预训练中文知识的前提下,有效减少模型参数量,降低训练成本,提高训练效率。
    📗 整理并开源指令微调数据集:firefly-train-1.1M 、moss-003-sft-data、ultrachat、 WizardLM_evol_instruct_V2_143k、school_math_0.25M。
    📗 开源Firefly系列指令微调模型权重 。

  • 开放且不断增加的数据
    在这里插入图片描述

  • 开源可下载可商用的模型
    在这里插入图片描述

  • 详细的模型微调过程
    目前支持全量参数指令微调、QLoRA指令微调,后续会添加对LoRA的支持(经过实测,QLoRA的效率与效果优于LoRA)。
    在这里插入图片描述

在这里插入图片描述

  • 其他
    包括:权重合并、模型推理等

NO4. LinkSoul-AI/Chinese-Llama-2-7b

  • star:1.7K

  • GitHub地址:
    https://github.com/LinkSoul-AI/Chinese-Llama-2-7b

  • 介绍:
    开源社区第一个能下载、能运行的中文 LLaMA2 模型!
    全部开源,完全可商用的中文版 Llama2 模型及中英文 SFT 数据集,输入格式严格遵循 llama-2-chat 格式,兼容适配所有针对原版 llama-2-chat 模型的优化。

  • 开放且不断增加的数据
    我们使用了中英文 SFT 数据集,数据量 1000 万。
    数据集:https://huggingface.co/datasets/LinkSoul/instruction_merge_set

  • 开源可下载可商用的模型
    在这里插入图片描述

  • 详细的模型微调过程

DATASET="LinkSoul/instruction_merge_set"DATA_CACHE_PATH="hf_datasets_cache"
MODEL_PATH="/PATH/TO/TRANSFORMERS/VERSION/LLAMA2"output_dir="./checkpoints_llama2"torchrun --nnodes=1 --node_rank=0 --nproc_per_node=8 \--master_port=25003 \train.py \--model_name_or_path ${MODEL_PATH} \--data_path ${DATASET} \--data_cache_path ${DATA_CACHE_PATH} \--bf16 True \--output_dir ${output_dir} \--num_train_epochs 1 \--per_device_train_batch_size 4 \--per_device_eval_batch_size 4 \--gradient_accumulation_steps 1 \--evaluation_strategy 'no' \--save_strategy 'steps' \--save_steps 1200 \--save_total_limit 5 \--learning_rate 2e-5 \--weight_decay 0. \--warmup_ratio 0.03 \--lr_scheduler_type cosine \--logging_steps 1 \--fsdp 'full_shard auto_wrap' \--fsdp_transformer_layer_cls_to_wrap 'LlamaDecoderLayer' \--tf32 True \--model_max_length 4096 \--gradient_checkpointing True

NO5. wenge-research/YaYi

  • star:1.5K

  • GitHub地址:
    https://github.com/wenge-research/YaYi

  • 介绍:
    雅意大模型在百万级人工构造的高质量领域数据上进行指令微调得到,训练数据覆盖媒体宣传、舆情分析、公共安全、金融风控、城市治理等五大领域,上百种自然语言指令任务。雅意大模型从预训练初始化权重到领域模型的迭代过程中,我们逐步增强了它的中文基础能力和领域分析能力,并增加了多轮对话和部分插件能力。同时,经过数百名用户内测过程中持续不断的人工反馈优化,我们进一步提升了模型性能和安全性。

    通过雅意大模型的开源为促进中文预训练大模型开源社区的发展,贡献自己的一份力量,通过开源,与每一位合作伙伴共建雅意大模型生态。

    News: 🔥 雅意大模型已开源基于 LLaMA 2 的中文优化模型版本,探索适用于中文多领域任务的最新实践。

  • 开放且不断增加的数据
    雅意大模型基于中科闻歌百万级高质量领域指令微调数据集训练而来,我们本次开源 5w 条训练数据集,可在我们的 Huggingface 数据仓库 https://huggingface.co/wenge-research 下载。数据集主要涵盖了金融、安全、舆情、媒体等几大领域,我们为各领域任务大部分指令数据添加了离散 prompt 前缀,以区分各领域数据。此外,训练数据中还包含部分安全增强数据、插件能力数据、多轮对话数据等。

  • 开源可下载可商用的模型
    在这里插入图片描述

  • 详细的模型微调过程

    1. 指令数据全参数微调
    2. 指令数据 LoRA 微调
    3. 多轮对话数据全参数微调
    4. 多轮对话数据 LoRA 微调

NO6. michael-wzhu/Chinese-LlaMA2

  • star:686

  • GitHub地址:
    https://github.com/michael-wzhu/Chinese-LlaMA2

  • 介绍:
    就在不久前,Meta最新开源了Llama 2模型,完全可商用,看来Meta势必要与OpenAI (ClosedAI) 硬刚到底。虽然Llama 2对原版的LlaMA模型做了升级,但是其仍然对中文没有太好的支持,需要在中文上做定制化。所以我们决定在次开展Llama 2的中文汉化工作:

    🚀 Chinese-LlaMA2-chat-sft:对Llama-2直接进行有监督微调,
    采用开源指令微调数据,如UltraChat, 各种版本的中文alpaca语料(如Chinese-alpaca, BELLE)等;
    注意LlaMA词表本身是支持中文的,所以我们会训练不扩充词表版本和扩充词表版本
    ⏳ Chinese-LlaMA2: 对Llama 2进行大规模中文预训练;
    第一步:先在42G中文语料上进行训练;后续将会加大训练规模
    ⏳ Chinese-LlaMA2-chat: 对Chinese-LlaMA2进行指令微调和多轮对话微调,以适应各种应用场景和多轮对话交互。
    注意,遵循相应的许可,我们将发布完整的, 合并LoRA权重的完整,且同时发布LoRA权重,方便开源社区使用。

    同时,我们将会围绕Chinese-LlaMA2打造各种垂直领域模型:

    ⏳Chinese-LlaMA2-chatmed: Chinese-LlaMA2医学领域大模型,支持多轮在线问诊;
    ⏳Chinese-LlaMA2-tcm: Chinese-LlaMA2中医药大模型,专注于中医药细分领域,赋能中医药传承

    【】后续工作值得期待

  • 团队介绍
    本项目由华东师范大学计算机科学与技术学院智能知识管理与服务团队完成,团队指导老师为王晓玲教授。

  • 指令微调

    对LlaMA-2进行指令微调(不扩充词表/扩充词表),也就是现在常见的SFT,见SFT-README.md

  • 扩充词表和扩展embedding层
    我们现在采用的方案是:使用Chinese-LLaMA的词表,该词表是对llama原始词表的扩充,将词汇量从32000扩展到49953大小。同时LlaMA-2模型会进行embedding层的resize,即采用随机初始化的参数扩展embedding层和lm_head层。

  • 继续预训练
    由于扩展词表后,LlaMA-2的embedding层和lm_head层会有随机初始化的参数,所以我们需要采用大规模的预训练学习中文语料的知识。继续预训练运行以下命令(数据,模型的路径,卡数等需要自行配置):

    CUDA_VISIBLE_DEVICES="2,3" ./src/further_ft/run_train.sh
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/112534.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue2 组件库之vetur提示

当我们开发完自定义UI组件库后,在项目中使用时,想要达到以下提示效果,组件提示与属性提示,有什么解决方案呢: 事实上,这是vetur的功能,原文如下: Component Data | Vetur If a pac…

器件手册识读之 :运放

器件手册识读之 :运放 一、基本信息 二、引脚排列 三、最大额定参数 四、电气特性 五、应用电路 1、称重传感器放大器 2、热电偶低偏置,低漂移环路测量二极管冷端补偿。

MySQL 保存日期用哪种数据类型

写在前面 在设计数据库表时不可避免的需要用到时间类型,到底选择那种数据类型来表示时间是一个值的讨论的问题,本文就一起来看下! 1:能用哪些数据类型 1:字符串:不要用,占用空间大,至少需要19个字节&…

Qt应用开发(基础篇)——字体选择器 QFontDialog

一、前言 QFontDialog类继承于QDialog,是一个设计用来选择字体的对话框部件。 对话框窗口QDialog QFontDialog字体选择对话框,设计用来让用户选择某一种字体,一般用于文本编辑窗口、标签显示和一些需要文本输入的场景。你可以直接使用静态函数…

Docker笔记

学习了神光大佬的《Nest 通关秘籍》后,对docker做了个笔记,并实操部署了一下个人项目,在此记录一下 是什么 Docker是一种开源的容器化平台,它可以将应用程序及其依赖项打包到一个可移植的容器中,使得应用程序能够在任…

Kubernetes(七)修改 pod 网络(flannel 插件)

一、 提示 需要重启服务器 操作之前备份 k8s 中所有资源的 yaml 文件 如下是备份脚本,仅供参考 # 创建备份目录 test -d $3 || mkdir $3 # $1 命名空间 # $2 资源名称: sts deploy configMap svc 等 # $3 资源备份存放的目录名称for app in kubec…

MySQL DATE_SUB的实践

函数简介DATE_SUB()函数从DATE或DATETIME值中减去时间值(或间隔)。 下面说明了DATE_SUB()函数的语法: DATE_SUB(start_date,INTERVAL expr unit); DATE_SUB()函数接受两个参数: start_date是DATE或DATETIME的起始值。 expr是一个字符串,用于确…

接口幂等性设计的最佳实现

一、什么是幂等 二、为什么需要幂等 三、接口超时了,到底如何处理? 四、如何设计幂等 全局的唯一性ID 幂等设计的基本流程 五、实现幂等的8种方案 selectinsert主键/唯一索引冲突 直接insert 主键/唯一索引冲突 状态机幂等 抽取防重表 token令牌 悲观锁…

【Jetpack】Navigation 导航组件 ⑤ ( NavigationUI 类使用 )

文章目录 一、NavigationUI 类简介二、NavigationUI 类使用流程1、创建 Fragment2、创建 NavigationGraph3、Activity 导入 NavHostFragment4、创建菜单5、Activity 界面开发 NavigationUI 的主要逻辑 ( 重点 )a、添加 Fragment 布局b、处理 Navigation 导航逻辑 ( 重点 )c、启…

MacOS goland go1.21 debug问题

安装dlv brew install dlv 安装之后在终端会显示所在目录 类似/usr/local/Cellar/delve/1.21.0/bin 配置goland 在文件系统中找到goland 右击选择show package contents -> Contents -> plugins -> go 尝试替换 其中对应系统 的 dlv 结果还是不行 然后打开应用gol…

Huggingface托管机器学习模型及API提供

推荐:用 NSDT编辑器 快速搭建可编程3D场景 我想在我的网络和移动应用程序中使用机器学习模型,但要做到这一点,我必须在某个地方托管我的机器学习应用程序。 托管预先训练的 ML 模型称为推理。 我只想添加一些 Python ML 代码并快速获得 REST…

【拾枝杂谈】从游戏开发的角度来谈谈原神4.0更新

君兮_的个人主页 勤时当勉励 岁月不待人 C/C 游戏开发 Hello,米娜桑们,这里是君兮_,结合最近的学习内容和以后自己的目标,今天又开了杂谈这个新坑,分享一下我在学习游戏开发的成长和自己的游戏理解,当然现在还是一枚…

尚硅谷大数据项目《在线教育之离线数仓》笔记003

视频地址:尚硅谷大数据项目《在线教育之离线数仓》_哔哩哔哩_bilibili 目录 第8章 数仓开发之DIM层 P039 P040 P041 P042 P043 P044 P045 P046 P047 P048 第8章 数仓开发之DIM层 P039 第8章 数仓开发之DIM层 DIM层设计要点: (1&a…

Docker容器学习:搭建自己专属的LAMP环境

目录 编写Dockerfile 1.文件内容需求: 2.值得注意的是centos6官方源已下线,所以需要切换centos-vault源! 3.Dockerfile内容 4.进入到 lamp 开始构建镜像 推送镜像到私有仓库 1.把要上传的镜像打上合适的标签 2.登录harbor仓库 3.上传镜…

jsp+servlet+mysql阳光网吧管理系统

项目介绍: 本系统使用jspservletmysql开发的阳光网吧管理系统,纯手工敲打,系统管理员和用户角色,功能如下: 管理员:修改个人信息、修改密码;机房类型管理;机房管理;机位…

大数据之linux入门

一、linux是什么 linux操作系统 开发者是林纳斯-托瓦兹,出于个人爱好编写。linux是一个基于posix和unix的多用户、多任务、支持多线程和多CPU的操作系统。 Unix是20世纪70年代初出现的一个操作系统,除了作为网络操作系统之外,还可以作为单…

Redis五种类型

Redis 基础类型 String 应用场景 缓存功能:string 最常用的就是缓存功能,会将一些更新不频繁但是查询频繁的数据缓存起来,以此来减轻 DB 的压力。 底层实现 如果字符串对象保存的是一个字符串值, 并且这个字符串值的长度大于…

【SpringCloudAlibaba】Nacos服务注册和配置中心配合nginx负载

文章目录 概述注册中心POMYML启动类 CAP配置中心POMYML启动类ConfigClientControllerNacos中的匹配规则三种方案加载配置示例 集群部署概述部署模式修改derby为mysql配置cluster.conf编辑Nacos的启动脚本startup.sh,使它能够接受不同的启动端口Nginx的配置&#xff…

Android 13 - Media框架(8)- MediaExtractor

上一篇我们了解了 GenericSource 需要依赖 IMediaExtractor 完成 demux 工作,这一篇我们就来学习 android media 框架中的第二个服务 media.extractor,看看 IMediaExtractor 是如何创建与工作的。 1、MediaExtractorService media.extractor 和 media.p…

资源分享| 4种聚类算法及可视化(Python)

在这篇文章中,基于20家公司的股票价格时间序列数据。根据股票价格之间的相关性,看一下对这些公司进行聚类的四种不同方式。 苹果(AAPL),亚马逊(AMZN),Facebook(META&…