>重点算法解疑系列文档·快一点

GLM-5.3编程模型本地部署与实战:从环境搭建到IDE集成全指南 大型语言模型(LLM)通过海量代码和文本数据训练,能够理解自然语言指令并生成、解释和调试代码,其核心原理是基于Transformer架构的序列预测。这项技术的工程价值在于显著降低编码门槛、提升开发效率,并辅助代码审查与知识学习。在实际应用场景中,开发者常借助此类模型进行日常开发辅助、技术文档生成和遗留代码理解。本文聚焦于智谱AI最新开源的GLM-5.3编程模型,该模型在代码生成准确率和长上下文理解等关键能力上实现了显著跃迁。文章提供了从硬件环境准备、使用vLLM引擎进行本地部署、核心API调用,到最终集成至 阅读详情
 我是以一个初学者的身份来看这本书的,这个我在前言中就说过了,因此对本章的理解我有点举步维艰,因为本章有很多不常见的API,如游览文件夹,把图片读到特定的内存数据区,这些API都是我作为一个初学者首次遇到的,难免疑点重重,另外本章还有一些系统级定义的结构类型如位图相关结构,最令人头痛的是文件操作,文件操作涉及到指针,句柄(指针与句柄的概念非几十面A4的纸说不清,甚至可以写成一本厚厚的书),MFC对文件对象及文件操作的封装实现属于比较低层的Win32编程知识,Cqtml在书中说过,作为一个初学者,对上述这些东西不必深究,只要知道如何使用它们(系统API函数)就可以了,但是如果随着学习的深入,如果不深入理解Win32编程的一些低层知识,如ASM,MFC,OPP,各种编程语言的对象模型等,你将永远不能深入Win32编程而不能体会到其中的乐趣,对于一些概念的理解,你也将处于模糊的认识程度,本文如有知识上的失误,请高手一定指正,如果你觉得本文出自一个初学者之手没有什么看头的话,请千万止步..
    首先来探索一下本章的知识结构,本章从178页的10-3:图形压缩包的使用可以分为前后二部分,前一部分包括OnButton()和LoadBmp(),后一部分主要包含LoadData()和GetPic0(),前一部分是不作为游戏的主体部分的,(后一部分的LoadData()和GetPic0()才是游戏的源程序部分)最后形成的"资源打包.exe"作为游戏的附件工具,这个工具用来对指定文件夹下的指定个指定文件名格式的.bmp和.txt(但是像"景"文件夹下的静物图片没有对应的.txt,程序是怎么处理这个例外情况的呢?景.dar是不是会照样生成?.dar中到底有什么内容呢?后面在谈到前后二部分作为互逆过程的对比会涉及到)作打包和压缩处理,注意这里的措词"打包"和"压缩",可以想像后一部分的LoadData()和GetPic0()是与前一部分的某个函数的功能或某个函数体内的某些语句功能是互为逆过程的,即将打包好的.gam和.dar一次性地读入内存,和在以后的取图操作中能够从.gam和.dar中读入所需的图形数据和偏移数据等,这当然是由GetPic0()中完成的,LoadData()发生在前,它将.gam和.dar一次性读入内存,涉及到MFC对二进制文件的读取知识,而OnButton()在(0,ShuLian)个循环里调用LoadBmp()作压缩打包处理涉及到MFC对二进制文件的写入操作,注意LoadBmp()并不是API,而是自定义的,LoadBmp()内封装了"将图形读入特定内存数据区bil的API,并且加入了新的功能,即不但读入.bmp到bil,还从.bmp对应的.txt读取2个偏移值到&bufx[pop],&bufy[pop],还形成一个&bufadd[pop],最后还验证显示以检验算法及打包结果,而所有的这些都是必要的,因此要在LoadBmp()内对这个API进行封装,现在我们来分析前后2部分互为逆过程的对比,刚才谈到对.gam的写入是按二进制方式进行的,而对.dar的写入是按.txt的写入进行的,对.gam和.dar的实际写入是在OnButton()体内(0,ShuLian)个循环之外进行的,因为所有的循环过程实际上只是Buf形成的过程,于是从173页C:写图形包开始,将其一次性写入到.gam,形成实际的.gam文件(Buf就是.gam文件的内容),每个循环都调用了一次LoadBmp(),LoadBmp(i)被执行,当前循环变量i的值指定的.bmp和.txt分别转化为bil和&bufx[i],&bufy[i],&bufadd[i],bil填充buf,&bufx[i],&bufy[i],&bufadd[i]填充数组bufx[],bufy[],bufadd[],直到i=ShuLian,Buf和三个数组最终形成,在经过C:写图形包,D:写偏移包后,.gam和.dar最终形成,因此最终和写入过程是在OnButton()体内的循环外完成的而不是在(0,ShuLian)个LoadBmp()里完成的,OnButton()作为资源打包.exe界面上的"打包"按钮的消息函数,在(0,ShuLian)个循环里调用LoadBmp(),为什么这样设置呢,这是程序的要求,资源打包.exe的程序流程就是要用户先点击"选择目录"获得指定的文件夹和指定文件夹下的资源个数ShuLian(此时它们被显示到程序界面上的二个文件框内),用户再点击"打包"按钮,OnButton()被执行,ShuLian个LoadBmp()过后,经过C,D二个最终写入过程,.gam和.dar最终生成,每一个LoadBmp()都是向Buf中添加数据块的过程和数组Bufx[],Bufy[],Bufadd[]当前元素值生成的过程,请读者自己想象一下OnButton()体内Buf的内存叠加过程和3个数组不断完善的过程这2个过程,我们知道硬盘上文件有二种,一种是二进制文件,其ASCII码是乱码,因为它在硬盘上的存在形式是按其中内存中被加载形成的镜像来存储的,文件的大小正是镜像的大小,文本文件就不用讲了,MFC对.txt文件的读写都存在一个"读写头"(前面讲到过,在读取初始化表.dat中),以指示下一次的写入位置和读取位置,写入和读取都是用特定的函数来完成的,那么在二进制文件的读写操作中是不是也存在一个"读写头"呢?前面说到,OnButton()体内,Buf的形成过程是内存数据叠加的形式,在i<ShuLian前,当前LoadBmp(i)完成之后,上一次Buf加上新添加的bil形成新的Buf,新的Buf的长度是一个整型数据,它作为一个记录指示下一次LoadBmp(),即LoadBmp(i=i+1)形成的bil的在更(第四声)新的Buf中的写入位置,LoadBmp(i=i+1)过后,更新的Buf的长度作为再下一个内存块的写入位置,很多人理解不了为什么Buf的长度是一个整型数据,如果你知道指针是一个32位整型数据的话你就能理解了(VB中没有指针,把HDC定义为Long),Buf因此既是内存长度,又是一个整型数据,起了指针的作用,指示着下一块内存的写入位置,其实它就是Bufadd[i]的值,打开.dar文件,第一列数据就是Bufadd[i],i属于(0,ShuLian),指示下一次的写入位置即bufadd[i=i+1],Bufadd[i]作为各个图片对应的在Buf中的图片位置,GetPic0()用它来提取指定的图片,打开.dar可以看到它们都是整型数据,共同构成了整个数组Bufadd[]的值,书中称它们为索引,它就相当于.txt中的"读写头",173页定义了Bufadd[1]=0,Buf的大小是15*1024*1024(15M),聪明的你现在一定能够理解这些数字的意义了吧?说完了后一部分再来说前一部分,LoadData()创建文件句柄(文件对象?)来读取.gam和.dar,GetPic0()中有一句根据内存是否为空来判断是否加载了压缩资源包以决定使用何种读取图片和偏移的方式的语句,OpenDir()中FindFile0()是在前一章定义的,封装了浏览文件夹的API,它的功能不仅是返回它的出口参数值,我们应该考虑到它的全部作用,即FindFile0()作为一个普通语句来调用完成的全部功能,除了返回出口参数,它的其它的功能还有将符合条件的文件加入列表框..
BEP分词算法 因此,在训练初期,这些合并会创建由两个字符组成的 token,随着训练的推进,逐渐生成更长的子词(subwords)。BPE(Byte-Pair Encoding,字节对编码)训练的第一步是计算语料库中所有独一无二的词集(在完成规范化和预分词步骤之后),然后提取构成这些词的所有符号来构建初始词表。这样一来,基础词表的大小就能保持在较小的规模(256),同时你所能想到的任何字符都会被包含进来,而不会被转换为未知 token。将被添加到词表中,并且该 token 对 将在 语料库 的所有词中被合并。 阅读详情

相关推荐

>重点算法解疑系列文档·再快一点

 由于本章对读者的可接受能力的考虑,对DX的引入作了二点处理,1:从MFC中引入DX,2:使用DX的窗口模式,学习中应该着重注意的是原GDI贴图函数向DX下的贴图函数的改写,这些很容易理解,勿须再谈..        作者为什么特别提到从MFC中引入DX呢?这个问题是不是来得有点莫明其妙?下面解释一下,因为MFC对窗口对象以及对窗口对象操作(如创建它,从内存中销毁它..),消息机制,绘图机制的AP

BlUe H0Use 768

>重点算法解疑系列文档·脚踏实地

对这篇文章的理解应该在熟读我的系列文档的"走四方"篇之后进行,本章的任务之一是在活动对象的显示中加入A*寻路,这是本章的任务1,另外,使动物都活动起来(走动或跑动一段路,当你看完本文的时候你就会知道了,走动或跑动是由程序给man[i].lb=兽的man[i].zs随机赋值的结果,而走动或跑动"一段路"是程序给man[i].lb=兽的man[i].x0,man[i].y0随机赋值的结果,反映到man

BlUe H0Use 679

>重点算法解疑·穿越丛林

对mlmap()和movesmap()的理解有没有感觉到我的系列文档的每一篇都是在讲二个相关或相似的函数,这是一种巧合,作者的书中每篇都恰好用到了二个这样的函数,这二个函数可以涵盖那一章的整体的知识体系,对那一章的理解只要理解了这二个函数就差不多了.mlmap()顾名思义就是"move & link map",即"移动拼接地图",movesmap()也带有地图移动的意思,可见这二个函数的作用共同构

BlUe H0Use 724

>重点算法解疑·广阔天地

每一个关卡地图都包括二个场景文件,出场对象数据文件.dat和地图障碍模型文件.map,如1*1.dat,1*1.map,场景文件是用LoadMap()来读取的,它的程序作用是用来初始化地图场景,这是大体上的说法,细一点说,它的最终的程序作用是给要出场的各个man[i]的所有分量赋值,.map障碍文件的读取LoadZa()为A*所用,是第七章以后的内容,(书中提到的场景一词就是指.dat中定义的Rs

BlUe H0Use 673

学VC 编游戏 重点算法解疑系列文档 - 走四方

对manmove()和bianfw()的理解 manmove()实际上实现的作用是计算man[i](i的值由manmove()的入口参数i的当前值取得)的man[i].xix,man[i],yiy当前值,man[i].xix,man[i],yiy的变化过程是这样的:如果程序刚加载,此时人物的x0,y0,xix,yiy值都由程序赋于(具体赋于的初值在源程序中的位置不用我明说了吧?),人物初始

BlUe H0Use 1150

学VC 编游戏》重点算法解疑·前言

    写了这么多了,合计起来有7篇文章,也有10000左右的纯汉字,当初提笔的初衷之一是我考虑这个系列或多或少地对坛友们会有些用,第二是想体现一下自己的个人价值(说得恶心请原谅),但愿对你们能有用,读懂这些系列文档的配置是你研究过这本书并有一点VC,MFC的基础知识,了解OPP及一些Win32的系统低层基础知识,坛子里有人说他不懂VC++,甚至VC++的代码跟其它语言写成的源程序他都

BlUe H0Use 965

《学VC 编游戏》重点算法解疑·走四方

对manmove()和bianfw()的理解 manmove()实际上实现的作用是计算man[i](i的值由manmove()的入口参数i的当前值取得)的man[i].xix,man[i],yiy当前值,man[i].xix,man[i],yiy的变化过程是这样的:如果程序刚加载,此时人物的x0,y0,xix,yiy值都由程序赋于(具体赋于的初值在源程序中的位置不用我明说了吧?),人物初始

BlUe H0Use 1117

034国家级痛点解疑:数值风洞与气动仿真高精度湍流模型算法

可交付物定义:本文件为国家级工程总控执行手册,无空泛论述、无纯理论推导,全内容可直接拆解至研发班组、按周节点验收、责任到人。目标:5年内完成全自主数值风洞底座+高精度湍流模型算法库研发,100%摆脱国外商用仿真软件依赖;核心算法精度、计算效率、大规模并行能力追平国际主流CFD套件,满足航空、航天、轨道交通、风电四大领域高精度气动仿真需求,在国家重点型号装备中实现75%替代,补齐高端气动仿真“算法底座”卡脖子短板。

chuangshitianzun的博客 791

重点 2022面试必刷461道大厂架构面试真题汇总+面经+简历模板

2022年的第一个月已经过半了,今年的金三银四也快到了,很多粉丝私信反应说让我总结一份高质量面试题,金三银四之前想要准备准备,于是就有了今天这篇文章~ 在过去的一年里,LZ看到很多小伙伴在面试的时候都拿到了自己心仪的Offer,同时也在各大论坛博客平台看到了大家分享出来的面经,面试题。趁着年末时间多,公司上我手头的活基本完事了,就在业余时间把阿里,字节等大厂的Java岗面试真题为大家简单汇总了一下,一共是22个主流技术;除面试汇总外还有一份阿里七面面经与架构师简历模板,想要在金三银四面试的小伙伴可以好好看看

muli525的博客 1008

AI辅写疑似度检测:揭示写作真实性的关键之匙

未来的疑似度检测工具将更加注重深度学习技术的应用,以提升检测的准确性和效率。此外,随着全球化和跨文化交流的增多,多语言环境下疑似度检测技术的研发和应用也将成为未来的研究重点。通过了解疑似度检测的背景与意义、方法与技术、局限性、应用场景和发展趋势等方面的知识我们可以更好地应对相关问题确保自己的学术成果真实可靠同时我们也应该关注疑似度检测的未来发展为推动社会的进步和发展贡献自己的力量。语言的复杂性和文本的多样性使得完全准确的检测面临挑战。在出版业,疑似度检测有助于维护出版物的质量和信誉,防止侵权行为的发生。

2301_79533350的博客 864

编程语言python入门软件,python编程入门自学

也是一款数据科学的Python工具,如果你想深度学习Python,那这款工具绝对是你的首选模块化、易于扩展,而且可以与Python配合使用。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等。轻巧好用,被视为最佳的Python工具,不过它并不适合大型项目。

chatgpt001的博客 129

前端都在聊什么 - 第 1

Hello 小伙伴们早上、中午、下午、晚上、深夜好,我是爱折腾的 jsliang~「前端都在聊什么」是 jsliang 日常写文章/做视频/搞直播过程中,小伙伴们的提问以及我的解疑整理。本期对应 2023 年的 01.01-01.15 这个时间段。本期针对「工作」「学习」「规划」「闲谈」这 4 个板块的 20 个问题进行了讨论,看看有没说到你心中想法去的。你的 点赞 和 关注 是我持续更新的动力????...

weixin_41806099的博客 1926

【课程设计】django化妆品电商价格监测系统-计算机毕业设计源码44421

本系统采用Vue框架作为前端技术,Django作为后端框架,数据库使用MySQL。系统功能包括用户端的商品信息查看、最新资讯查看、通知公告查看、商品购买、商品数据对比等;管理员端则包括用户管理、商品品牌管理、商品信息管理、品牌数据管理、通知公告管理及资源管理等。该系统通过自动化价格监测与数据对比,优化了商品管理和用户体验,提升了市场竞争力。

Biye_Design的博客 2823

AI大模型如何抓取和推荐南京本地商户?GEO技术链路与POI权重算法拆解

AI大模型正重构本地服务流量分发,通过语义理解、地理围栏与知识图谱实现精准商户推荐。GEO(生成式引擎优化)聚焦POI数据结构化、多平台一致性与时效标签,提升商户在AI推荐中的可见性。技术链路涵盖意图解析、多级召回、语义匹配与结果生成,强调信息完整度、用户行为与内容更新频率。构建覆盖地域+品类的问答库,是提升推荐权重的关键策略。

xingdi999的博客 318

从“多传感器扇区统计”看ADAS感知任务拆解:算法、修正与工程落地

ADAS感知配置看起来很复杂:前视摄像头、角雷达、前向毫米波、激光雷达、超声波……新手容易一上来就想“做个完整融合系统”。本文只做第1步和第3步的简化版,重点不是堆功能,而是把“区间算法”怎么落到ADAS讲清楚。

Norman2025的博客 210

Chaikin‘s Corner Cutting 算法 应用canvas绘制平滑的曲线

本文介绍Chaikin角切割算法在Canvas画笔中的应用,通过“等距重采样—三角窗平滑—两轮角切割细分”三步管线,有效解决手绘线条因速度不均和手抖导致的锯齿与毛刺问题。该方案以恒定物理间距为基础,结合三角窗加权平均与凸组合细分,实现丝滑曲线生成,兼顾实时性与视觉美感,是画笔类应用的理想平滑方案。

weixin_55896343的博客 215
上一篇: >重点算法解疑系列文档·再快一点
下一篇: 《学vc,编游戏》源码学习一
bearfirstblog
博客等级 码龄20年 10粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值