第三期书生大模型实战营——基础岛

1.书生大模型全链路开源体系

【书生·浦语大模型全链路开源开放体系】 https://www.bilibili.com/video/BV18142187g5/?share_source=copy_web&vd_source=711f676eb7f61df7d2ea626f48ae1769
视频里介绍了书生浦语大模型的开源开放体系,包括了其的技术发展、模型架构、开源生态等。其核心技术思路包括:
- 模型能力飞轮:广泛使用模型参与自身迭代,加速能力提升;
- 高质量合成数据:包括基于规则的数据构造、基于模型的数据扩充、基于反馈的数据生成。融合了多种数据合成方案,提升合成数据质量;
在这里插入图片描述
此外还介绍了预训练框架InternEvo、微调框架XTuner、OpenCompass评测体系、LMDeploy部署框架、智能体Lagent和MindSearch,可以看出其开源链条非常的完整,和社区生态无缝对接。

2. 8G 显存玩转书生大模型 Demo

  • 配置conda环境,编写cli_demo.py代码
    在这里插入图片描述
  • 与模型交流
    在这里插入图片描述
  • 生成小故事,可以看到后面开始重复输出内容了,可能需要进一步调整模型参数
    在这里插入图片描述
  • Streamlit Web Demo 部署 InternLM2-Chat-1.8B 模型
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 部署 InternLM-XComposer2-VL-1.8B
    在这里插入图片描述
  • 部署 InternVL2-2B
    在这里插入图片描述

3. 浦语提示词工程实践

  • 基础任务
    在这里插入图片描述

4. Llamaindex RAG实践

  • Q:“OSDI23的HEDB是什么工作?”,使用RAG之前:
    在这里插入图片描述
  • 使用RAG之后:
    在这里插入图片描述

5. XTuner 微调个人小助手认知任务

  • 配置Xtuner环境,验证安装是否成功
    在这里插入图片描述
  • 查看目录结构
    在这里插入图片描述
  • 启动应用
    在这里插入图片描述
    在这里插入图片描述
  • 准备微调数据
    在这里插入图片描述
  • 开始微调
    在这里插入图片描述
  • 转换模型格式,合并模型
    在这里插入图片描述
  • 运行程序,重新对话
    在这里插入图片描述

6. OpenCompass 评测 InternLM-1.8B

  • 配置测试环境
    在这里插入图片描述
  • 启动测试
    在这里插入图片描述
    在这里插入图片描述
  • 使用配置文件测试
    在这里插入图片描述
    在这里插入图片描述
### 关于书生大模型第四期基础通关第三关 针对书生大模型第四期基础通关第三关的任务,此阶段主要聚焦于通过不同参数量训练模型并结合多种微调技术来优化特定任务的表现。具体而言,在对比 xcomposer2-4khd、internVL1.5 和 llava-llama3-8b 这些具有不同参数规模的预训练模型时,采用 LORA(低秩自适应)、QLORA 及 FULL 训练方法可以有效增强模型处理少量样本学习(few-shot learning)以及专门领域内图纸识别的能力[^1]。 为了成功完成这一挑战,建议采取如下策略: #### 数据准备 确保拥有高质量的数据集用于训练和验证,特别是那些能够代表目标应用场景中的特征数据,比如工业设计图或其他形式的技术绘图。 #### 模型选择与调整 基于项目需求挑选合适的基线模型,并考虑其参数大小对性能的影响。较小的模型可能更适合资源受限环境下的部署;而较大的模型则通常能提供更好的泛化能力。 #### 微调技巧应用 利用LORA或QLORA等高效微调方式快速适配新任务,减少计算成本的同时保持较高的准确性。对于更复杂的要求,则可尝试FULL fine-tuning以获得最佳效果。 ```python from transformers import AutoModelForSequenceClassification, Trainer, TrainingArguments model_name = "path_to_pretrained_model" model = AutoModelForSequenceClassification.from_pretrained(model_name) training_args = TrainingArguments( output_dir="./results", evaluation_strategy="epoch", per_device_train_batch_size=8, per_device_eval_batch_size=8, num_train_epochs=3, weight_decay=0.01, ) trainer = Trainer( model=model, args=training_args, train_dataset=train_dataset, eval_dataset=val_dataset, ) ``` 上述代码片段展示了如何设置一个简单的`Trainer`对象来进行模型微调操作。实际实现过程中还需要根据具体的任务类型调整配置项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值