LLM总结(持续更新中)

最新的参见LLM-Summary

引言

  • 当前LLM模型火出天际,但是做事还是需要脚踏实地。
  • 此文只是日常学习LLM,顺手整理所得。
  • 本篇博文更多侧重对话、问答类LLM上,其他方向(代码生成)这里暂不涉及,可以去看综述来了解。

之前LLM模型梳理

BLOOM (BigScience)

  • BLOOM是一个自回归的大模型,可根据prompt来生成连续的文本。包括46种语言和13个编程语言。
  • 参数量为1760亿个参数。和GPT一样,使用的是decoder-only架构。
  • 训练所用数据集基本是手搓出来的。
  • 但是要想推理起来这个模型,起码需要8个A800 80G的显卡才能推理起来。小编前不久有幸推理了一下,模型将近就有328G,真是够大的。
  • 这个模型要想落地,可就需要很长一段时间了。

后BLOOM模型梳理

BLOOM
Firefly
BELLE

LLaMA (Meta)

  • 缺乏指令微调

后LLaMA模型梳理

LLaMA
Alpaca
FreedomGPT
Chinese-alpaca-lora
japanese-alpaca-lora
Wombat
Vicuna
Koala
ChatLLaMA
Chinese-ChatLLaMA
ColossalChat
Baize
gpt4all
HuaTuo

Alpaca (斯坦福)

  • 由Meta的LLaMA 7B微调而来,52k数据,性能约等于GPT-3.5
  • Self-Instruct: Aligning Language Model with Self Generated Instructions论文启发,使用现有强语言模型自动生成指令数据
  • 衍生项目:

Vicuna (UC伯克利、卡内基梅隆大学、斯坦福大学和加州大学圣地亚哥分校)

  • 与GPT-4性能相匹配的LLaMA微调版本, 130亿参数
  • 通过在ShareGPT收集用户共享对话对LLaMA进行微调而来,在超过90%的情况下,实现了与Bard和ChatGPT相匹配的能力

image

  • 训练流程:
ShareGPT收集70k对话数据
优化Aplaca训练脚本,处理多轮对话和长序列问题
PyTorch FSDP 8个A100 一天训练
质量评估,80个问题,用GPT-4对模型输出进行评价

三者之间汇总对比

image

Koala (UC伯克利 AI Research Institute(BAIR))

  • 使用网络获取的高质量数据进行训练,可以有效地回答各种用户的查询,比Alpaca更受欢迎,至少在一半的情况下与ChatGPT的效果不相上下
  • 得出有效结论:正确的数据可以显著改善规模更小的开源模型
  • 研究人员专注于收集一个小型的高质量数据集,包括ChatGPT蒸馏数据、开源数据等

ChatLLaMA (Nebuly)

  • 一个可以使用自己的数据和尽可能少的计算量,来创建个性化的类似ChatGPT的对话助手
  • 库的目的是通过抽象计算优化和收集大量数据所需的工作,让开发人员高枕无忧
  • ChatLLaMA旨在帮助开发人员处理各种用例,所有用例都与RLHF训练和优化推理有关。以下是一些用例参考:
    • 为垂直特定任务(法律、医疗、游戏、学术研究等)创建类似ChatGPT的个性化助手;
    • 想在本地硬件基础设施上使用有限的数据,训练一个高效的类似ChatGPT的助手;
    • 想创建自己的个性化版本类ChatGPT助手,同时避免成本失控;
    • 想了解哪种模型架构(LLaMA、OPT、GPTJ等)最符合我在硬件、计算预算和性能方面的要求;
    • 想让助理与我的个人/公司价值观、文化、品牌和宣言保持一致。

Chinese-ChatLLaMA(ydli-ai)

  • 中文对话模型ChatLLaMA、中文基础模型LLaMA-zh。
    -ChatLLaMA 支持简繁体中文、英文、日文等多语言。
  • LLaMA 在预训练阶段主要使用英文,为了将其语言能力迁移到中文上,首先进行中文增量预训练,
  • 使用的语料包括中英平行语料中文维基、社区互动、新闻数据科学文献等。再通过 Alpaca 指令微调得到 Chinese-ChatLLaMA。
  • 项目特点
    • 通过 Full-tuning (全参数训练)获得中文模型权重,提供 TencentPretrain 与 HuggingFace 版本
    • 模型细节公开可复现,提供数据准备、模型训练和模型评估完整流程代码
    • 提供目前最大的中文 LLaMA 模型
    • 多种量化方案,支持 CUDA 和边缘设备部署推理

FreedomGPT (Age of AI)

  • 建立在Alpaca之上,回答问题没有偏见或偏袒,并且会毫不犹豫第回答有争议或争论性的话题
  • 克服了审查限制,在没有任何保障的情况下迎合有争议性的话题。标志是自由女神像,象征自由。

ColossalChat (UC伯克利)

  • 基于LLaMA模型,只需不到100亿个参数就能达到中英文双语能力,效果与ChatGPT和GPT3.5相当。
  • 复刻了完整的RLHF过程,是目前最接近ChatGPT原始技术路线的开源项目
  • 使用了InstrutionWild中英双语训练数据集,其中包含大约100,000个中英文问答对。
    • 该数据集是从社交媒体平台上的真实问题场景中收集和清理的,作为种子数据集,使用self-instruct进行扩展,标注成本约为900美元。
    • 与其他self-instruct方法生成的数据集相比,该数据集包含更真实和多样化的种子数据,涵盖更广泛的主题。该数据集适用于微调和RLHF训练。
    • 在提供优质数据的情况下,ColossalChat可以实现更好的对话交互,同时也支持中文。
  • 完整的RLHF管线,共有三个阶段:
    1. RLHF-Stage1: 使用上述双语数据集进行监督指令微调模型
    2. RLHF-Stage2: 通过对同一提示的不同输出手动排序来训练奖励模型,分配相应的分数,然后监督奖励模型的训练
    3. RLHF-Stage3: 使用强化学习算法,这是训练过程中最复杂的部分。

Baize (加州大学圣迭戈分校、中山大学和微软亚研)

  • 包括四种英文模型(白泽-7B、13B、30B)和一个垂直领域的白泽医疗模型,计划未来发布中文的白泽模型。

  • 值得注意的是,该方法的数据处理、训练模型、Demo等全部代码均已开源,真是良心,由衷点赞。

  • 作者提出一种自动收集ChatGPT对话的流水线,通过从特定数据集中采样[种子]的方式,让ChatGPT自我对话,批量生成高质量多轮对话数据集。如果使用特定领域数据集,比如医学问答数据集,就可以生成高质量垂直领域语料。

    image

gpt4all(Nomic AI)

  • 基于GPT-3.5-Turbo的800k条数据进行训练,包括文字问题、故事描述、多轮对话和代码。
  • 该方案提供了完整的技术报告,包括收集数据、整理数据、训练代码和模型权重。

Huatuo-Llama-Med-Chinese(哈工大)


ChatYuan-large-v2 (元语智能)

  • 这个模型的商业气息较浓一些。不过,这也是无奈之举。
  • ChatYuan-large-v2是一个支持中英双语的功能型对话语言大模型。ChatYuan-large-v2使用了和 v1版本相同的技术方案,在微调数据、人类反馈强化学习、思维链等方面进行了优化。
  • ChatYuan-large-v2是ChatYuan系列中以轻量化实现高质量效果的模型之一,用户可以在消费级显卡、 PC甚至手机上进行推理(INT4 最低只需 400M )。

Firefly(yangjianxin1)

  • Firefly(流萤) 是一个开源的中文对话式大语言模型,基于BLOOM模型,使用指令微调(Instruction Tuning)在中文数据集上进行调优。同时使用了词表裁剪、ZeRO、张量并行等技术,有效降低显存消耗和提高训练效率。 在训练中,使用了更小的模型参数量,以及更少的计算资源。构造了许多与中华文化相关的数据,以提升模型这方面的表现,如对联、作诗、文言文翻译、散文、金庸小说等。
  • 因为该项目首先采用LLMPrunner对原始BLOOM模型进行此表裁剪,所以效果有限,优势在于小,缺点也在这里。

BELLE (链家)

  • 本项目重点关注在开源预训练大语言模型的基础上,如何得到一个尽可能效果好的具有指令表现能力的语言模型,降低大家研究此方面工作的门槛,重点在于中文大语言模型。

  • 针对中文做了优化,模型调优仅使用了由ChatGPT生产的数据(不包含任何其他数据)

  • 调优BLOOMZ-7B1-mt模型,开放了四个不同大小规模的指令学习数据集训练模型

    Datasize200,000600,0001,000,0002,000,000
    Finetuned ModelBELLE-7B-0.2MBELLE-7B-0.6MBELLE-7B-1MBELLE-7B-2M
  • 值得说明的是,该项目开源了一批由ChatGPT生成的中文数据集,具体如下:
    • 1.5M中文数据集:包含不同指令类型、不同领域的子集。
    • 10M中文数据集,包括25w条中文数学题数据、80w条用户与助手对话数据、40w条给定角色的多轮对话数据、200w条多样化指令任务数据。
  • ⚠️ 数据集开源协议均为GPL3.0,使用请注意。

ChatGLM-6B (清华)

GLM-130B(清华)

后ChatGLM梳理

ChatGLM
langchain-ChatGLM
ChatGLM-Med

langchain-ChatGLMimClumsyPanda

  • 该项目是基于本地知识的ChatGLM应用实现。基于本地文档类知识来增强ChatGLM的回答。这应该是最能落地的项目了。

  • 整体流程如下图:

    image

Med-ChatGLM(哈工大)

Dolly 2.0databricks

IDPChat (白海)

  • 中文多模态模型,基于预训练大模型LLaMA和开源文生图预训练模型Stable Diffusion为基础,快速构建而来。
  • 开发者可以根据场景需求,便捷地对其进行微调优化。

参考资料

<think>嗯,用户想了解Wi-Fi触发大型语言模型(LLM)的方法。首先,我需要明确这个问题的具体含义。可能是指如何利用Wi-Fi信号或相关技术来激活或触发LLM的响应,或者通过Wi-Fi环境中的某些条件来启动LLM的处理流程。接下来,我得考虑不同的应用场景和技术手段。 首先,Wi-Fi本身是一种无线通信技术,主要用于数据传输。触发LLM可能需要将Wi-Fi相关的数据作为输入,或者利用Wi-Fi网络的状态变化作为触发条件。比如,当设备连接到特定Wi-Fi网络时,自动启动某个LLM应用。或者,利用Wi-Fi信号的特征(如信号强度、接入点数量)作为环境传感器,触发相应的LLM处理。 然后,我需要分解可能的实现方法。一种情况是设备连接Wi-Fi后触发,比如智能手机连接到家庭网络时自动启动智能助手,这属于事件驱动的触发。另一种可能是利用Wi-Fi信号进行定位或环境感知,进而触发LLM。例如,在商场中通过Wi-Fi定位用户位置,提供基于位置的LLM服务。 还要考虑技术实现层面。如何监听Wi-Fi状态的变化?可能需要操作系统级别的API,比如Android的BroadcastReceiver监听网络连接状态。或者使用后台服务持续监测网络信号,当满足条件时调用LLM的API。另外,数据隐私和安全也是需要考虑的因素,确保用户数据在传输和处理过程中得到保护。 可能涉及到的步骤包括:监测Wi-Fi事件(连接、断开、信号变化),将事件转化为触发条件,调用LLM接口进行处理,并返回结果。例如,当用户进入覆盖特定Wi-Fi的区域时,系统检测到SSID或BSSID,触发LLM生成欢迎信息或相关提示。 此外,需要考虑不同平台和操作系统的差异,比如iOS和Android在Wi-Fi权限和后台服务上的限制。可能需要使用跨平台框架或原生开发来实现稳定的触发机制。 最后,应用场景可能包括智能家居、室内导航、个性化服务等。例如,智能家居系统中,当用户回家连接Wi-Fi时,LLM自动调整家庭设备设置或提供日程提醒。 需要验证这些方法的可行性和实际案例,是否有现有的应用或研究采用类似方法。可能需要查阅相关文献或开发者文档,了解具体的实现细节和最佳实践。 总结来说,Wi-Fi触发LLM的方法主要依赖于监测Wi-Fi相关的事件或数据,将其作为输入条件,通过编程接口或后台服务调用LLM进行处理,实现自动化或情境感知的智能响应。</think>Wi-Fi触发大型语言模型(LLM)的方法通常指通过Wi-Fi网络状态、信号特征或设备连接行为作为触发条件,驱动LLM执行特定任务。以下是逐步说明: --- ### **1. 核心原理** 通过监测Wi-Fi相关事件(如连接状态、信号强度、网络标识等),将事件转化为逻辑条件,进而调用LLM接口生成响应。 --- ### **2. 常见触发场景** #### **场景1:设备连接特定Wi-Fi网络** - **触发条件**:设备接入预设的Wi-Fi网络(如SSID为“Home_Network”)。 - **实现步骤**: 1. **监听网络状态**:通过系统API(如Android的`BroadcastReceiver`或iOS的`NWPathMonitor`)实时检测网络连接变化。 2. **匹配条件**:当检测到SSID或BSSID与预设值匹配时,触发后续操作。 3. **调用LLM**:向LLM发送预设提示(如“用户已到家,生成欢迎语”),返回结果并执行(如语音播报、推送通知)。 #### **场景2:Wi-Fi信号强度触发** - **触发条件**:信号强度(RSSI)达到阈值(如-70dBm)。 - **实现步骤**: 1. **持续监测信号**:通过后台服务周期性读取Wi-Fi信号强度。 2. **判断阈值**:当信号强度满足条件时,触发LLM处理。 3. **结合上下文**:例如在弱信号区域触发LLM提示“是否切换到移动网络?”。 #### **场景3:Wi-Fi定位与情境感知** - **触发条件**:通过Wi-Fi指纹(多个AP信号特征)判断用户位置。 - **实现步骤**: 1. **采集环境数据**:记录当前位置的Wi-Fi信号分布(如商场、办公室)。 2. **定位匹配**:匹配数据库中的Wi-Fi指纹,确定用户所处区域。 3. **触发LLM服务**:例如在商场中推送附近店铺的LLM导购信息。 --- ### **3. 技术实现关键点** #### **(1)系统权限与后台运行** - **权限需求**:需获取网络状态访问权限(如Android的`ACCESS_NETWORK_STATE`)。 - **后台服务**:确保应用在后台持续监听Wi-Fi事件(注意系统限制,如iOS需开启后台模式)。 #### **(2)LLM接口调用** - **本地部署**:若LLM本地运行(如设备端模型),可直接通过内部API调用。 - **云端调用**:若使用云端LLM(如GPT-4),需通过HTTP请求发送提示词并处理返回结果。 #### **(3)隐私与安全** - **数据脱敏**:避免传输敏感信息(如SSID、BSSID)至外部服务器。 - **用户授权**:明确告知用户Wi-Fi数据用途并获取同意。 --- ### **4. 示例代码(Android平台)** ```java // 监听网络变化的BroadcastReceiver public class WifiTriggerReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo netInfo = cm.getActiveNetworkInfo(); if (netInfo != null && netInfo.getType() == ConnectivityManager.TYPE_WIFI) { WifiManager wifiMgr = (WifiManager) context.getApplicationContext().getSystemService(Context.WIFI_SERVICE); WifiInfo wifiInfo = wifiMgr.getConnectionInfo(); String ssid = wifiInfo.getSSID().replace("\"", ""); if (ssid.equals("Home_Network")) { // 调用LLM接口 String prompt = "用户已连接到家庭网络,生成欢迎语。"; String response = LLMClient.query(prompt); showNotification(context, response); } } } } ``` --- ### **5. 应用案例** - **智能家居**:回家自动触发LLM播报天气、日程提醒。 - **零售场景**:进入商店Wi-Fi范围后,LLM提供个性化优惠信息。 - **办公场景**:连接到公司网络时,自动启动会议摘要生成。 --- ### **6. 挑战与优化** - **能耗控制**:避免频繁监听Wi-Fi导致电量消耗。 - **抗干扰设计**:处理信号波动导致的误触发(如加入去抖动逻辑)。 - **多条件融合**:结合蓝牙、GPS等其他传感器提高触发准确性。 --- 通过以上方法,Wi-Fi可作为物理世界与LLM交互的桥梁,实现情境感知的智能服务。实际开发中需平衡功能需求与系统资源限制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值