本地大模型编程实战(02)语义检索(1)

我们在百度、必应、谷歌等搜索引擎中使用的检索都是基于字符串的:用户输入字符串后,搜索引擎先对搜索内容进行分词,然后在已经进行了倒排索引的巨大数据库中找出最符合用户要求的结果。 语义检索与其主要的区别是:它根据文本的真正含义进行搜索,其基本思路是将待检索的内容都转变成矢量(这个过程也叫做嵌入),转化矢量的基本原则是:语义相近的内容距离更近、相似性更高。 当用户输入检索内容时,也是先把检索内容变成矢量,然后去矢量数据库中找到最相似的文档。这样检索出来的结果并不依据字面的意思,而是依据语义的相似度。 本文描述了如何使用 langchain 和 大语言模型 以及 矢量数据库 完成pdf内容的语义检索。 在对内容进行矢量化时使用了 nomic-embed-text,这个模型个头小,英文嵌入效果不错。 后面还将涉及到以下内容: 文档和文档加载器 文本分割器 嵌入 向量存储和检索器 ...

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

本地大模型编程实战(01)实现翻译功能

大语言模型的主要功能是预测:输入一些字符串,它预测输出另一些字符串,这个特点使它擅长翻译。 本文描述了如何使用大语言模型(LLM)实现基本的翻译功能,此翻译功能的特点是:无需指定源语言,只需要指定目标语言就可以进行翻译了。 ...

一月 24, 2025 · 2 分钟 · 火云

基于FastAPI和JWT实现OAuth2用户认证

本文阐述了如何基于FastAPI框架实现 OAuth2用户认证,其中使用哈希算法对密码进行了加密,使用 JWT 持有令牌。 附带完整的代码,避免大家再次踩坑。 ...

十二月 1, 2024 · 4 分钟 · 火云

使用FastAPI实现简单的OAuth2的Password和Bearer验证

本文讲述了基于FastAPI框架,实现实现简单的OAuth2的Password和Bearer验证。 附带完整的代码,避免大家再次踩坑。 ...

十二月 1, 2024 · 3 分钟 · 火云

使用FastAPI实现微服务API网关

本文阐述了基于FastAPI实现一个API网关的详细步骤,这样未来可以不断的在服务端像搭积木一样添加各种服务。 我们即将实现下面的简单的微服务架构,目前它只实现了请求转发功能: ...

十一月 14, 2024 · 2 分钟 · 火云

用FastAPI做langchain本地大模型的API

本文讲述了如何使用FastAPI和langchain框架,包装本地大模型llama3.1,实现语言翻译功能的API。 相对于 Flask ,使用FastAPI做接口要简便得多。 ...

十一月 5, 2024 · 2 分钟 · 火云

用Flask做langchain服务的API

本文讲述了如何使用一个利用本地大模型llama3.1实现语言翻译功能的API。 它用flask很轻松的将langchian服务开放为API,结合flasgger给文档添加注释并生成playground,并且使用jsonschema做json数据校验,轻松验证接口参数。 麻雀虽小,但五脏俱全,应该对langchain入门者有较大帮助。 ...

十一月 3, 2024 · 1 分钟 · 火云

使用LangServe做API开放本地大模型的能力

LangServe可以轻松的将langchain的能力包装为接口,为前端提供服务。本文通过一个简单的应用演示LangServe如何使用。 ...

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

基于langchain和本地大模型以及会话式检索增强生成技术实现知识问答

本文概述了基于langchian框架和对话式增强生成(Conversational RAG(Retrieval Augmented Generation))技术实现知识问答。 具体来说,系统自动记录聊天历史,并把它作为上下文提供给大模型,这样它让大模型产生了“记忆”,可以“理解”和关联上下文,体验更好。 此样例程序使用本地部署的nomic-embed-text模型做嵌入检索,使用本地部署的llama3.1做回答内容生成。 ...

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

基于langchain和本地大模型以及会话式检索增强生成技术实现知识问答

本文讲述了基于langchian框架,使用本地部署的nomic-embed-text模型做嵌入检索、llama3.1做回答内容生成的知识问答系统实例。 会话式检索增强生成,即:Conversational RAG。 nomic-embed-text:一个高性能开放嵌入模型,具有较大的标记上下文窗口。这个模型只有274M,但实际做嵌入和检索时,感觉比llama3好。 通过对比测试使用历史聊天记录和不使用历史聊天记录两种情况,我们可以明显看出来使用历史聊天记录的优点:它让大模型产生了“记忆”,可以“理解”和关联上下文,体验更好。 ...

十月 9, 2024 · 3 分钟 · 火云