纯c#运行开源本地大模型Mixtral-8x7B
先看效果图,这是一个比较典型的逻辑推理问题,以下是本地运行的模型和openai gpt3.5的推理对比
本地运行Mixtral-8x7B大模型:

chatgpt3.5的回答:

关于Mixtral 8x7B这个就不多介绍了,但凡在关注开源大模型的朋友应该知道这个模型是目前市场上最具竞争力的开源大型模型之一,其能力水平在多项任务中都有可以和gpt3.5打的有来有回,今天主要聊聊使用c#如何本地化部署实践
整个模型部署其实相对已经比较简单了,其核心是采用了llama.cpp这个项目,这个项目是用 ggml(一个用 c++ 开发的一个机器学习的张量库)写的一个推理 LLaMA 的 demo,随着项目持续火爆吸引了大量没有昂贵GPU 的玩家,成为了在消费级硬件上玩大模型的首选。而今天我们要用到的项目就是依赖llama.cpp的c#封装实现的nuget包LLamaSharp,地址(https://github.com/SciSharp/LLamaSharp)。基于它对llama.cpp的c#封装从而完成本机纯c#部署大模型的实现。通过LLamaSharp既可以使用cpu进行推理,如果你有30系以上的N卡,也可以使用它的LLamaSharp.Backend.Cuda11或者Cuda12进行推理,当然其效果肯定相比纯CPU推理速度更快。
整个项目我已经放到github上了,有兴趣的同学可以自取:https://github.com/sd797994/LocalChatForLlama
另外关于模型格式说一下,当前使用llama.cpp主要通过gguf格式加载,这是一种专门面向llama.cpp的格式,可以通过huggingface搜索:https://huggingface.co/models?search=gguf。而我目前使用的是Nous-Hermes基于Mixtral-8x7B微调的版本,它的repo如下:https://huggingface.co/TheBloke/Nous-Hermes-2-Mixtral-8x7B-DPO-GGUF/tree/main 据说Nous-Hermes微调版本的性能略好于Mixtral-8x7B。唯一需要注意的是如果不是使用我推荐的模型,index.cshtml这里需要根据模型的实际输出硬编码成对应的字段:

最后的Tips:由于模型确实比较大,在纯CPU模式下如果内存不太够(一般16G)的情况下推理很缓慢,一分钟可能也就能输出几个字。建议上较大内存的纯CPU推理或者使用NVIDIA的显卡安装对应的CUDA环境后基于CUDA推理,整个效果会快很多。
纯c#运行开源本地大模型Mixtral-8x7B的更多相关文章
- 千亿参数开源大模型 BLOOM 背后的技术
假设你现在有了数据,也搞到了预算,一切就绪,准备开始训练一个大模型,一显身手了,"一朝看尽长安花"似乎近在眼前 -- 且慢!训练可不仅仅像这两个字的发音那么简单,看看 BLOOM ...
- 直接拿来用!Facebook移动开源项目大合集
直接拿来用!Facebook移动开源项目大合集 时间:2014-04-22 15:37 作者:唐小引 随着iOS依赖管理工具CocoaPods和大量第三方开源库成熟起来,业界积累了大量的优秀开源项目. ...
- C#开源系统大汇总(个人收藏)
C#开源系统大汇总 一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖 ...
- C#开源资源大汇总
C#开源资源大汇总 C#开源资源大汇总 一.AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架.Encase 独特的提供了把方面(aspects)部署到运行 ...
- 华为高级研究员谢凌曦:下一代AI将走向何方?盘古大模型探路之旅
摘要:为了更深入理解千亿参数的盘古大模型,华为云社区采访到了华为云EI盘古团队高级研究员谢凌曦.谢博士以非常通俗的方式为我们娓娓道来了盘古大模型研发的"前世今生",以及它背后的艰难 ...
- DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍
DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍 1. 概述 近日来,ChatGPT及类似模型引发了人工智能(AI)领域的一场风潮. 这场风潮对数字世 ...
- servlet的生命周期与运行时的线程模型
第 14 章 生命周期 注意 讲一下servlet的生命周期与运行时的线程模型,对了解servlet的运行原理有所帮助,这样才能避免一些有冲突的设计. 如果你不满足以下任一条件,请继续阅读,否则请跳过 ...
- Facebook 正式开源其大数据查询引擎 Presto
Facebook 正式宣布开源 Presto —— 数据查询引擎,可对250PB以上的数据进行快速地交互式分析.该项目始于 2012 年秋季开始开发,目前该项目已经在超过 1000 名 Faceboo ...
- [Spark内核] 第36课:TaskScheduler内幕天机解密:Spark shell案例运行日志详解、TaskScheduler和SchedulerBackend、FIFO与FAIR、Task运行时本地性算法详解等
本課主題 通过 Spark-shell 窥探程序运行时的状况 TaskScheduler 与 SchedulerBackend 之间的关系 FIFO 与 FAIR 两种调度模式彻底解密 Task 数据 ...
- 如何运行开源的React Native项目?
如何运行开源的RN项目? 1.下载 2.解压 3.配置本地sdk位置 sdk.dir = D\:\\Android\\SDK 4.调整gradle版本 apply plugin: "com. ...
随机推荐
- vue2升级vue3:Vue2/3插槽——vue3的jsx组件插槽slot怎么处理
插槽的作用 让用户可以拓展组件,去更好地复用组件和对其做定制化处理. Vue 实现了一套内容分发的 API,将<slot>元素作为承载分发内容的出口,这是vue文档上的说明.具体来说,sl ...
- DarkMode(2):深色模式解决方案——css颜色变量实现Dark Mode
暗黑模式实现,最初的设计,就是参考之前的主题模式.所谓多套主题/配色/皮肤,就是我们很常见的换肤功能.换肤简单的实现就是更换 css实现不同样式呈现不同肤色. 之前做不同颜色的皮肤,暗黑模式可以单做其 ...
- 克魔助手:方便查看iPhone应用实时日志和奔溃日志工具
克魔助手:方便查看iPhone应用实时日志和奔溃日志工具 查看ios app运行日志 摘要 本文介绍了一款名为克魔助手的iOS应用日志查看工具,该工具可以方便地查看iPhone设备上应用和系统运行 ...
- A/B 实验避坑指南:为什么不建议开 AABB 实验
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 本文将针对日常开设 A/B 实验过程中一个不太合理的使用方法--AABB 实验进行详细的解释,告诉大家为什么不建议 ...
- Python FastAPI 获取 Neo4j 数据
前提条件 先往Neo4j 里,准备数据 参考:https://www.cnblogs.com/vipsoft/p/17631347.html#创建传承人 搭建 FastAPI 项目:https://w ...
- PPT 毕业答辩:学术风格的PPT
PPT 毕业答辩:学术风格的PPT 合适字体 便于阅读, 封面.标题 楷体.华康俪金黑.粗宋体.思源宋体.中山行书 正文 宋体.仿宋.微软雅黑.思源黑体 主题色 学术红.严谨紫.科学蓝 跟着LOGO ...
- WebService autoconfigure.web.servlet.DispatcherServletPath
SpringBoot WebService 源代码:https://gitee.com/VipSoft/VipWebService SpringBoot 整合 WebService cxf 报错 Co ...
- 【Debug】常用问题排查流程
常用问题排查流程 查看当前用户信息
- 用 three.js 绘制三维带箭头线
需求:这个需求是个刚需啊!在一个地铁场景里展示逃生路线,这个路线肯定是要有指示箭头的,为了画这个箭头,我花了不少于十几个小时,总算做出来了,但始终有点问题.我对这个箭头的要求是,无论场景拉近还是拉远, ...
- 快捷键:mysql + idea + 浏览器
mysql快捷键:ctrl+r 运行查询窗口的sql语句ctrl+shift+r 只运行选中的sql语句ctrl+q 打开一个新的查询窗口ctrl+w 关闭一个查询窗口ctrl+/ 注释sql语句 c ...