DOPMC
DOPMC copied to clipboard
tiny-universe
你是否已经阅读并同意《Datawhale开源项目指南》?
- [X] 我已阅读并同意《Datawhale开源项目指南》
你是否已经阅读并同意《Datawhale开源项目行为准则》?
- [X] 我已阅读并同意《Datawhale开源项目行为准则》
项目简介
探索llm的机理,研究llm系列底层架构实现,用最简洁明了的简短代码,动手搓llm模型数据加载、预训练、微调、向量检索,评测以及agent全流程。(重点在简洁明了~)
立项理由
- 随着llm日益火爆,各种衍生工具层出不穷,从模型加载、预训练、指令微调、向量检索、性能评测等等的
huggingface
,langchain
,llama-index
,xtuner
,opencompass
,metaGPT
...这些工具极大的方便了开发者使用llm,但也是一把双刃剑,使得开发者难以摸清里面的细节。 - so,该项目将解开llm全系列的黑盒子,手搓tiny-llm系列,为社群开发者提供一个llm“白盒子".
项目受众
想深入了解并尝试复现与魔改llm模型加载、预训练、指令微调、向量检索、性能评测以及agent的研究生、研究者以及兴趣驱动的开发者。
项目亮点
本项目旨在全流程从零手搓,并且支持后续的训练以及推理全流程,与市面上的llm教程不同。 虽然目前已经有很多llm教程,但大多都是讲解模型原理,到model层面就结束,并且鲜有讲解RAG以及评测的教程。 区别于大型的算法包如langchain,llama-index,我们的项目代码对初级开发者更简洁清晰,更"可解释"
类似项目比较
- HuggingLLM:侧重于使用ChatGPT相关API创造新功能和应用,重点在API下游应用
- 面向开发者的LLM入门课程:提供官方教程,支持研究如何提升ChatGPT在中文语境下的理解与生成能力,偏向于API开发。
- Prompt Engineering提示工程指南:关注提示词开发和优化,帮助用户将LLM用于各场景和研究领域,偏向于API开发
- LangChain中文网:提供详细的中文文档教程,助力LLM/chatGPT应用开发,适合希望深入了解LangChain框架的学习者。偏向于介绍LangChain库。
- 构筑大语言模型应用:介绍LLM在真实世界应用的基础知识和应用,以及如何构建自己的模型,适合希望了解LLM应用开发模式和架构设计的人员。
- mlabonne/llm-course:整合了大量LLM教材和资料,绘制学习路线图,适合初学者和有经验的数据科学家
- llm-action:提供了从6B到65B模型训练的实战教程,涵盖全量微调到高效微调技术,适合希望深入了解LLM训练技术的学习者
- rasbt/LLMs-from-scratch 从零开始构建和训练LLM的实践方法,以及对LLM内部工作原理的深入讲解
- picoGPT 与本项目核心思想类似,用最简短明了的方法重构llm,但此项目只支持GPT2的推理,不是全流程。
总结:目前市面上大多项目重点在于API开发应用,或者是较原理的llm底层教程,抑或是不完善与较落后llm的简洁实现。故本项目核心在于用最简洁的实现架构从而重构llm算法系列全流程,从加载,预训练,微调,RAG,评测,Agent,将各个冗长的算法库如huggingface、LangChain、MetaGPT等黑盒子转变为小而全的白盒子。
项目规划
目录:
1.tiny-dataset 2.tiny-llama@不要葱姜蒜@Logan Zou@Hongru0306 3.tiny-qwen@Hongru0306 4.tiny-RAG@不要葱姜蒜(目前已完成) 5.tiny-compass@Hongru0306(目前已完成) 6.tiny-agent@不要葱姜蒜目前已完成
规划:
- 拆解程度:本项目不会太底层,但也需要有一定基础的开发者才可以食用(起码会自己动手搓文本分类~)。我们的项目目前就打算拆到torch或者peft层面就完事了,不会再深挖算子的细节,故技术上不会太复杂。
- 已有沉淀:本项目已经完成了两个tiny系列,审核大大们可以先看下已完成的部分,我们的tiny白盒子目前就打算白到已完成的两个项目的程度。
- 核心思想:本项目重点在于力求用最简洁明了的方式重构llm,打开黑盒子转换成白盒子。项目愿景是使用户能够在初学阶段摆脱大而冗长的库,从而更快速高效地摸清各个技术细节,利于后续成熟算法库的学习。
目标:
- 希望能够获得社区的支持,我们会竭尽全力做好这个白盒子!为更多开发者提供能自己动手拆解、魔改、进行实验的
tiny-universe
!
项目负责人
肖鸿儒 vx:(XiaoHr0306) 不要葱姜蒜 Logan Zou
备注:发起立项申请后DOPMC成员将会在7天内给出审核意见,若7天内无反对意见则默认立项通过~
- [X] 我已知悉上述备注
同意
同意
7天内无反对意见则默认立项通过