微软开源bitnet b1.58大模型,应用效果测评(问答、知识、数学、逻辑、分析)

目       录

1.     前言... 2

2.     应用部署... 2

3.     应用效果... 3

1.1          问答方面... 3

1.2          知识方面... 4

1.3          数字运算... 6

1.4          逻辑方面... 6

1.5          分析方面... 7

4.     结论... 8


1.     前言

  微软开源的BitNet模型(特别是BitNet b1.58 2B4T)是一种革命性的低精度大语言模型(LLM),1.58位三值权重:权重仅取-1、0、+1三种值,每个参数平均占用约1.58位存储,结合8位整数激活值(W1.58A8配置),大幅压缩模型体积,通过创新的量化技术和架构设计,在性能、能效和部署灵活性上实现了显著突破。

  在x86 CPU上推理速度提升2.37–6.17倍,ARM CPU上提升1.37–5.07倍,CPU解码延迟低至29毫秒;相比全精度模型,能耗降低55.4%–82.2%;非嵌入内存仅需0.4GB,仅为传统FP16模型的1/6(如Qwen 1.5B需2.6GB),支持在普通笔记本或嵌入式设备上运行100B参数的模型。

  支持在CPU(如苹果M2芯片、ARM架构设备)上直接运行,无需GPU,适用于手机、IoT设备、嵌入式系统等资源受限场景;通过极低能耗和硬件要求,降低企业及个人使用大模型的成本,推动AI技术在发展中国家和小型企业中的普及。

  但是,也有局限性,知识密集型任务(如TriviaQA)表现较弱,需优化数据分布。

2.     应用部署

>git clone --recursive https://github.com/microsoft/BitNet.git

>cd BitNet

>conda create -n bitnet-cpp python=3.9

>conda activate bitnet-cpp

>pip install -r requirements.txt

>huggingface-cli download microsoft/BitNet-b1.58-2B-4T-gguf --local-dir models/BitNet-b1.58-2B-4T

>python setup_env.py -md models/BitNet-b1.58-2B-4T -q i2_s

如果提示错误:bitnet.cpp error : no type named 'system_clock'。

解决方案:在BitNet\3rdparty\llama.cpp目录中查找common.cpp、log.cpp、imatrix.cpp、perplexity.cpp文件,加上#include <chrono>语句。

>python run_inference.py -m models/BitNet-b1.58-2B-4T/ggml-model-i2_s.gguf -p "You are a helpful assistant" -n 5000 -cnv

3.     应用效果

1.1       问答方面

问题1:你是谁?

问题2:你是微软的吗?

问题3:你的强项是哪些方面?

问题4:请你给我编写一篇文章,主题:一个小孩子正在打篮球。

1.2       知识方面

问题1:请问你对工业知识熟悉吗?

问题2:我想做一个机器人,请给我一个配件清单

问题3:你对稀土冶炼工艺熟悉吗?

问题1:你对炼铁工艺熟悉吗?。

问题2:一般炼铁的炉温突升的工况有哪些影响因素?(后面的回复中,无限循环)

问题1:你对铁合金冶炼工艺熟悉吗?

问题2:铁合金生产的电极控制,一般应该如何调整?

1.3       数学运算

问题1:1+1等于多少?

问题2:为什么1+1=2呢?

问题3:1+1>2,这个条件成立吗?

问题4:1+1-1*1/1等于几?

问题5:1/0等于几?

1.4       逻辑方面

问题1:现在的温度是100,正常温度应该是50-99之间,请问温度现在处于什么状态?

问题2:现在的温度是100,正常温度应该是50-99之间,如果温度超出上限值,那么提示:温度过高;如果温度超出下限值,那么提示:温度过低。根据现在温度值,给出提示信息。

问题3:a的取值范围为0和1,b的取值范围为0和1,给出a和b分别取值的组态情况。

1.5       分析方面

问题1:请帮我分析一个温度数据,正常温度应该在110到140。

"2025-5-4 16:16:28"  "温度"  "149",

"2025-5-4 16:16:30"  "温度"  "149",

"2025-5-4 16:16:32"  "温度"  "149",

"2025-5-4 16:16:34"  "温度"  "149"。

问题2:2(x−3) (x-3)+5=3x+10,求x。(应该x=1或x=6.5,后面的回复,无限循环了)

4.   结论

  适合资源较少,简单的应用场景。或是自己根据场景进行微调。


物联网&大数据技术 QQ群:54256083

物联网&大数据项目 QQ群:727664080

QQ:504547114

微信:wxzz0151

博客:https://www.cnblogs.com/lsjwq

微软开源bitnet b1.58大模型,应用效果测评(问答、知识、数学、逻辑、分析)的更多相关文章

  1. 千亿参数开源大模型 BLOOM 背后的技术

    假设你现在有了数据,也搞到了预算,一切就绪,准备开始训练一个大模型,一显身手了,"一朝看尽长安花"似乎近在眼前 -- 且慢!训练可不仅仅像这两个字的发音那么简单,看看 BLOOM ...

  2. 微软开源自动机器学习工具NNI安装与使用

    微软开源自动机器学习工具 – NNI安装与使用   在机器学习建模时,除了准备数据,最耗时耗力的就是尝试各种超参组合,找到最佳模型的过程了.对于初学者来说,常常是无从下手.即使是对于有经验的算法工程师 ...

  3. 【重磅】微软开源自动机器学习工具 - NNI

    [重磅]微软开源自动机器学习工具 - NNI 在机器学习建模时,除了准备数据,最耗时耗力的就是尝试各种超参组合,找到模型最佳效果的过程了.即使是对于有经验的算法工程师和数据科学家,有时候也很难把握其中 ...

  4. 微软开源的Trill是什么?

    微软开源的Trill是什么? https://www.cnblogs.com/CattaC/p/10143445.html 微软开源的Trill是什么? 以下是一篇15年的文章的译文:https:// ...

  5. NNI (Neurol Network Intelligence) 是微软开源的自动机器学习工具

    NNI (Neurol Network Intelligence) 是微软开源的自动机器学习工具 https://www.cnblogs.com/ms-uap/p/9719071.html [重磅]微 ...

  6. zz【重磅】微软开源自动机器学习工具 - NNI

    [重磅]微软开源自动机器学习工具 - NNI 在机器学习建模时,除了准备数据,最耗时耗力的就是尝试各种超参组合,找到模型最佳效果的过程了.即使是对于有经验的算法工程师和数据科学家,有时候也很难把握其中 ...

  7. 成为钢铁侠!只需一块RTX3090,微软开源贾维斯(J.A.R.V.I.S.)人工智能AI助理系统

    梦想照进现实,微软果然不愧是微软,开源了贾维斯(J.A.R.V.I.S.)人工智能助理系统,贾维斯(jarvis)全称为Just A Rather Very Intelligent System(只是 ...

  8. 微软开源.NET Core的执行引擎CoreCLR{转载}

    继去年12月宣布.NET Core开源之后,微软拥抱开源的决心又向前迈了一步,Microsoft于昨日在 .NET Framework Blog上 宣布开源.NET Core 的执行引擎 CoreCL ...

  9. 资深人士剖析微软开源.NET事件:战略重心已经从PC转移到云端

    本文是雷锋网对我的访谈整理的文章,源地址是 http://www.leiphone.com/news/201411/6KaGhD7PDABnvrRf.html 2014年11月13日,微软表示开源.N ...

  10. 分享一个.NET平台开源免费跨平台的大数据分析框架.NET for Apache Spark

    今天早上六点半左右微信群里就看到张队发的关于.NET Spark大数据的链接https://devblogs.microsoft.com/dotnet/introducing-net-for-apac ...

随机推荐

  1. 目标检测 | Spatially Sparse Convolution

    Spatially Sparse Convolution 导言 为什么需要稀疏化? 在3D表示中,除了点云(Point Cloud)和网格模型(Mesh),我们常常还会使用到一种称为体素(Voxel) ...

  2. C# 多线程编程及其几种方式

    引言: 进程(process):应用程序的实例要使用的资源的集合.每个进程被赋予了一个虚拟地址空间,确保在一个进程中使用的代码和数据无法由另一个进程访问. 线程(thread):程序中的一个执行流,每 ...

  3. 【由技及道】在wsl容器中进行远程java开发【人工智障AI2077的开发日志003】

    指令接收:「需要万能开发环境」 系统警报:检测到主人即将陷入"环境配置地狱" 启动救赎协议:构建量子化开发容器 终极目标:让"在我机器上能跑"成为历史文物 需求 ...

  4. redmine 用户没有状态内容

  5. go ceph s3文件管理

    导入依赖 go get gopkg.in/amz.v1/aws go get gopkg.in/amz.v1/s3 创建用户 在初始化连接之前,我们需要创建一个用户得到accessKey和secret ...

  6. CSAPP学习笔记——Chapter12 并行编程

    CSAPP学习笔记--Chapter12 并行编程 并发编程有着其独特的魅力,之前接触cuda编程的时候,感受到一些,没想到书里还有相关的内容.今天我们主要围绕进程,I/O多路复用,线程三种并发的方式 ...

  7. Windows 提权-手工枚举

    本文通过 Google 翻译 Manual Enumeration – Windows Privilege Escalation 这篇文章所产生,本人仅是对机器翻译中部分表达别扭的字词进行了校正及个别 ...

  8. [每日算法] leetcode第1题:两数之和

    leetcode第1题入口 知识点 寻找循环体中目标值之间的关系来减少循环层数 (利用关系建立查找对方的数据结构来空间换时间) 题目描述 给定一个整数数组 nums 和一个整数目标值 target,请 ...

  9. Oracle UTL_HTTP

    Oracle 中可以通过包 UTL_HTTP 来获取访问 HTTP 的能力. declare req UTL_HTTP.REQ; resp UTL_HTTP.RESP; val varchar2(32 ...

  10. CSS布局——左右固定中间填满

    小小例子,注意中间的div应该写在最后,留爪. 先上个高清无码图 源码实现 <!DOCTYPE html> <html lang="en" xmlns=" ...