pythonToys
文章平均质量分 79
理智点
如需联系 leezed525@qq.com
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
6.3 完成 RAG
本文介绍了如何通过YAML文件配置实现大语言模型系统的最后组装步骤。主要内容包括:1) 开发YamlUtil工具类,支持读取/修改YAML配置文件,通过环境变量替换(!env标签)和嵌套键值操作;2) 创建CFGLoader类对YAML配置进行二次封装,提供更友好的字典式访问接口。该方案实现了灵活的配置管理,为后续集成embedding模型、向量数据库和大语言模型提供了可维护的配置基础。代码展示了YAML文件操作的核心方法,包括环境变量处理、键值校验和内容读写等功能。原创 2025-08-10 15:20:35 · 376 阅读 · 0 评论 -
6.2 实现文档加载和切分和简易向量数据库的功能
"""""""""初始化向量存储类"""pass# 数据库持久化,本地保存# 从本地加载数据库# 根据问题检索相关的文档片段简单定义一个基类,相当于抽象类的功能,但是不去具体实现,主要目的是指定我们的向量数据最基本的需要实现的功能persist(self, file_path) 的功能是将资料保存下来,注意,这里我的意思是把资料保存成一种方便数据库读取和修改的形式,避免老是去读取本地的各种格式的文档def load_vector(self): 的功能是读取之前持久化保存下来的数据。原创 2025-07-01 20:57:47 · 678 阅读 · 0 评论 -
6.1 实现Embeding模块
一开始本身是想通过api调用的方式来实现这个功能的,但是大致翻了几家云服务的厂商,免费额度感觉用起来很麻烦,索性采取下载模型然后部署在本地的方式来实现了""""""抽象出来一个基类,把一些公共的方法定义在上面,省的到处改,现在先定义一个基础的获取embedding 的功能path参数,主要是用来控制huggingface下载模型的位置,不指定的话默认会下载c盘,不喜欢这种什么乱七八糟的东西都往c盘塞的东西。device 就是定义模型放在cpu上还是gpu上了。原创 2025-06-30 17:51:45 · 742 阅读 · 0 评论 -
6.0 手动实现一个RAG工程开始
因此为了解决这个问题,人们提出了RAG,其本质就是通过各种方式,使LLM在接受对话的时候,获取相关知识点的内容,先了解一遍相关的知识点在进行回答,通过这种方式使LLM回答有依据的内容,而不是瞎说一些胡话,从而减轻幻觉的问题。原因也很简单,虽然现在的LLM功能越来越强大,参数量也日渐增多,但是对于人类浩瀚的知识而言,又或者说对于人们数不尽的想象力所提出的稀奇古怪提出的问题而言,LLM显然无法做到对各方面的知识点做到尽善尽美,因此就会产生。的问题,对不知道的东西就开始瞎编,这也是大模型的一个痛点。原创 2025-06-29 16:36:46 · 397 阅读 · 0 评论 -
5 手写卷积函数
对于卷积层的具体操作,我这里就不在具体说卷积具体是什么东西了。对于手写卷积操作而言,有两种方式,一种就是最朴素的通过滑动窗口来实现的方式,另一种方式就是使用矩阵乘法来简化操作过程的方式。原创 2025-06-28 14:43:34 · 659 阅读 · 0 评论 -
4 mnist cgan生成指定图像
在有了gan的基础上,我们可以去模仿mnist图像的生成,但是随之而来的一个问题就是,我们生成出来的图像是随机的,我们无法去指定我们要生成的图像是怎么样的,这对于我们图像生成的应用而言是非常糟糕的,所以随之而来的就是cgan的工作,通过在训练是指定生成的标签,来实现指定的图像生成可以看到目前也是可以做到根据我们指定的label来进行生成图像了,但是生成的图像有些质量不好,不过我觉得是因为模型没有精细设计和本身mnist的数据就有些小问题的原因。原创 2025-06-18 14:08:42 · 366 阅读 · 0 评论 -
3 mnist gan小试牛刀
输入: 噪声 Z,维度为 [B, latent_dim, 1, 1] (经过全连接层后)# 经过全连接层将噪声向量转换为适合反卷积的维度# 将一维向量 reshape 成特征图nn.Unflatten(1, (256, img_size // 4, img_size // 4)), # 256 是通道数,img_size//4 是 H 和 W# 反卷积层 1: 256x7x7 -> 128x14x14# 反卷积层 2: 128x14x14 -> 64x28x28。原创 2025-06-11 15:46:48 · 943 阅读 · 0 评论 -
2. 手写数字预测 gui版
这里的预训练权重就直接用了上一篇文章中训练出来的权重,还给她放到cuda上了,不过这么小的模型其实放不放其实都无所谓,没有太大的影响。还有其中的4大部分都是开口的,并没有闭合4上面的开口,导致写一个很标准的4反倒有时候会预测出错,还有其他的一些问题我就不赘述了。这是mnist数据集中的数据,可以看出这里的0大部分都是上面闭合,导致模型预测奇怪位置的闭合的0会失准。目前的画布是白色的,画笔是黑色,但是mnist数据集的底是黑色的,画笔是白色的,因此需要使用。总之如果想要模型想要获得更好的表现,原创 2025-05-31 15:28:12 · 421 阅读 · 0 评论 -
1. pytorch手写数字预测
这里我准备了两个模型,一个MLP模型和一个简单地CNN模型,其中MLP模型参数量1M,CNN模型参数量大概8M,当然这俩模型也没有很仔细的规划return xx = x.view(B, -1) # 展平return x。原创 2025-05-30 21:25:13 · 562 阅读 · 0 评论
分享