[合集]从零搭建langchain+本地大模型+本地矢量数据库的RAG系统

此系列文章详细的阐述了如何从第一行代码开始搭建一个可以运行完全在本地服务器的RAG(Retrieval Augmented Generation)系统,包含了详细的步骤说明和代码,它是保姆级教程。 它主要包含以下功能: 使用本地大语言模型做语言翻译 使用本地大语言模型做专业领域的知识问答 从系统架构来看,本系统包含了前端、API网关、后台服务三大部分: ...

十月 10, 2024 · 1 分钟 · 火云

如何选择FAISS的索引类型

在之前的文章中,我们系统性的介绍了 嵌入和语义检索 以及 向量相似度。 本文将在语义检索领域探讨更加接近实战的话题:如何如何选择FAISS的索引类型。 Faiss 是一个用于高效相似性搜索和密集向量聚类的库。它使用 C++ 编写,并提供了完整的 Python 封装。 可以在 CPU 上运行,只是一些最有用的算法是在 GPU 上实现的。它的主要功能是: k-NN 检索: 不仅返回最近的邻居,还返回第二近、第三近、……、第 k 近的邻居; 批量处理: 一次搜索多个向量,而不是一次搜索一个。 对于许多索引类型,这比一个接一个地搜索向量更快; 以精度换取速度: 以 10% 的不正确结果为代价,换取 10 倍的速度或使用更少的内存; 范围搜索:返回查询点给定半径内的所有元素; 本地存储: 将索引存储在磁盘上而不是在 RAM 中; … ...

十月 3, 2025 · 4 分钟 · 火云

用图形验证码增强用户认证安全性[python+vuetify]

这里通过代码讲述了使用python生成以及校验图片验证码,增强用户认证安全性的过程。 客户端则使用 vue3 和 vuetify3 框架使用后台API生成的图片验证码。 ...

一月 5, 2025 · 3 分钟 · 火云

[python]实现可以自动清除过期条目的缓存

由于有缓存图片验证码的需要,所以我找了一些开源的缓存想直接使用,结果要么太老旧,要么太复杂,要么和 fastAPI 整合有问题,所以才想到自己写一个简单的,够用就好。 本文讲述了如何实现一个简单的内存缓存,他可以把过期的键值自动清除,在缓存验证码等场合应该很好用。 ...

一月 4, 2025 · 1 分钟 · 火云

基于OAuth2.0和JWT规范实现安全易用的用户认证

遵循OAuth2.0和JWT规范实现用户认证,不但具有很好的实用性,还能提供很不错的安全保障。 本文结合实用的代码讲述了基于OAuth2.0和JWT,在前后端分离的系统中,实现用户使用方便而又安全可靠的用户认证的基本思路。 ...

一月 1, 2025 · 4 分钟 · 火云