datawhalechina/DOPMC

tiny-universe

Hongru0306 opened this issue · 3 comments

你是否已经阅读并同意《Datawhale开源项目指南》?

你是否已经阅读并同意《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,我们的项目代码对初级开发者更简洁清晰,更"可解释"

类似项目比较

  1. HuggingLLM:侧重于使用ChatGPT相关API创造新功能和应用,重点在API下游应用
  2. 面向开发者的LLM入门课程:提供官方教程,支持研究如何提升ChatGPT在中文语境下的理解与生成能力,偏向于API开发。
  3. Prompt Engineering提示工程指南:关注提示词开发和优化,帮助用户将LLM用于各场景和研究领域,偏向于API开发
  4. LangChain中文网:提供详细的中文文档教程,助力LLM/chatGPT应用开发,适合希望深入了解LangChain框架的学习者。偏向于介绍LangChain库。
  5. 构筑大语言模型应用:介绍LLM在真实世界应用的基础知识和应用,以及如何构建自己的模型,适合希望了解LLM应用开发模式和架构设计的人员。
  6. mlabonne/llm-course:整合了大量LLM教材和资料,绘制学习路线图,适合初学者和有经验的数据科学家
  7. llm-action:提供了从6B到65B模型训练的实战教程,涵盖全量微调到高效微调技术,适合希望深入了解LLM训练技术的学习者
  8. rasbt/LLMs-from-scratch 从零开始构建和训练LLM的实践方法,以及对LLM内部工作原理的深入讲解
  9. 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天内无反对意见则默认立项通过~

  • 我已知悉上述备注

同意

同意

7天内无反对意见则默认立项通过