• 多轮对话数据微调 qwen

    多轮数据训练可以让模型学会在连续对话中理解上下文、保持对话连贯性和角色一致性。相比直接生成(单轮问答), 多轮训练能让模型更好地处理复杂对话场景, 实现更自然的人机交互。直接生成只关注单次提问和回答, 无法捕捉对话历史信息。 以下以 qwen2.5-3b-instruct 在一个心理辅导数据集上以 messages 格式训练。 环境搭建12export HF_ENDPOINT=https:/...
  • Qwen 2.5 VL 推理

    QWEN2.5-VL框架展示了视觉编码器和语言模型解码器的集成,以处理多模式输入,包括图像和视频。视觉编码器旨在以其本机分辨率处理输入,并支持动态FPS采样。具有不同FPS速率的不同尺寸和视频帧的图像被动态映射到长度不同的token。 加载模型12345678910111213import torchfrom qwen_vl_utils import process_vision_info...
  • 对比学习在CV与NLP领域的应用:SimCLR、SimCSE 与 SimVLM

    对比学习作为一种重要的自监督预训练范式,已在计算机视觉(CV)与自然语言处理(NLP)等多个领域展现出强大能力。本文将聚焦三种经典代表方法:SimCLR、SimCSE 及 SimVLM,探讨其核心思想与技术实现。 SimCLR: A Simple Framework for Contrastive Learning of Visual Representations SimCSE: Simp...
  • function calling agent

    在知道 agent 基础知识后,简单的 function calling agent 就可以手搓,或者直接用 openai 的 function calling 12345678import osfrom openai import OpenAIclient = OpenAI( api_key="XXX", base_url="https://dashscope.aliyuncs...
  • Agent 概念

    任何高效的 AI 系统都需要为大语言模型(LLM)提供某种接触现实世界的能力:例如,调用搜索工具以获取外部信息,或者操控特定程序来完成任务。换句话说,LLM 应当具备自主性(agency)。具备代理能力的程序,是 LLM 通向外部世界的桥梁。 代理(Agent)是指一个系统,它利用 AI 模型与环境交互,以实现用户定义的目标。它结合了推理、规划和行动执行(通常通过外部工具)来完成任务。 *...
  • LoRA - Low-Rank Adaptation

    自然语言处理的一个重要范式是:在通用领域数据上进行大规模预训练,再对特定任务或领域进行适配。随着预训练模型规模的不断扩大,全量微调(即重新训练所有模型参数)变得越来越不可行。以 GPT-3 175B 为例——为每个下游任务部署一份包含 1750 亿参数的微调模型实例,成本极其高昂。 为此,LoRA 提出了一种低秩适配方法(Low-Rank Adaptation,简称 LoRA),该方法冻结预...
  • Alpaca 源码分析

    Self-Instruct 过程是一种迭代自举算法,它从一组手动编写的指令种子集开始,并用它们来提示语言模型生成新的指令以及相应的输入 - 输出实例。然后对这些生成结果进行过滤以去除低质量或相似的实例,所得数据被添加回任务池中。这个过程可以重复多次,从而产生大量的指令数据集合,可用于微调语言模型以更有效地遵循指令。 alpaca 源码地址: https://github.com/tatsu...
  • ViT - vision transformer

    ViT (vision transformer) 这个模型的重点在于对特征的提炼能力,预训练只用简单的 softmax 作为 分类头,使得特征提取尽量优化,而不是更复杂的分类头 BG将自注意力机制直接应用于图像时,需要每个像素与所有其他像素进行交互。这种全连接的方式导致计算复杂度随像素数量呈二次增长,因此难以扩展到实际图像尺寸。为了解决这一问题,以下多种策略在图像处理中应用 Transfor...
  • CLIP - Contrastive Language-Image Pre-training

    Learning Transferable Visual Models From Natural Language Supervision paper:https://arxiv.org/abs/2103.00020 OpenAI 推出了 CLIP,即 对比式语言-图像预训练(Contrastive Language-Image Pre-training)。简而言之,该模型学习的是整句话与其...
  • AMP - Automatic Mixed Precision

    torch.amp 提供了用于混合精度训练的便捷方法,其中一部分操作使用 torch.float32(即 float)数据类型,另一部分操作则使用较低精度的浮点类型(lower_precision_fp),如 torch.float16(half)或 torch.bfloat16。某些操作(例如线性层和卷积)在低精度浮点下运行速度更快,而其他操作(如归约操作)通常需要 float32 提供的...
12345