- 博客(28)
- 收藏
- 关注
原创 LangChain实战快速入门笔记(七)--LangChain使用之Retrieval
Retrieval直接翻译过来即“检索”,本章Retrieval模块包括与检索步骤相关的所有内容,例如数据的获取、切分、向量化、向量存储、向量检索等模块。常被应用于构建一个"企业/私人的知识库",提升大模型的整体能力:文档嵌入模型,提供将文本编码为向量的能力,即文档向量化。文档写入和用户查询匹配前都会先执行文档嵌入编码,即向量化。• LangChain提供了超过25种不同的嵌入提供商和方法的集成,从开源到专有API,总有一款适合你。
2025-12-19 11:03:22
888
原创 LangChain实战快速入门笔记(六)--LangChain使用之Agent
Agent(智能体) 是一个通过动态协调 **大语言模型(LLM)**和工具(Tools)来完成复杂任务的智能系统。它让LLM充当"决策大脑",根据用户输入自主选择和执行工具(如搜索、计算、数据库查询等),最终生成精准的响应。需求:计算3的平方,Agent自动调用工具完成# 1.定义工具 - 计算器(要求字符串输入)"""基础数学计算工具,支持加减乘除和幂运算参数:expression: 数学表达式字符串,如 "3+5" 或 "2**3"返回:计算结果字符串或错误信息"""
2025-12-16 17:13:28
850
原创 LangChain实战快速入门笔记(五)--LangChain使用之Tools
要构建更强大的AI工程应用,只有生成文本这样的“纸上谈兵”能力自然是不够的。工具Tools不仅仅是“肢体”的延伸,更是为“大脑”插上了想象力的“翅膀”。借助工具,才能让AI应用的能力真正具备无限的可能,才能从“认识世界”走向“改变世界Tools 用于扩展大语言模型(LLM)的能力,使其能够与外部系统、API 或自定义函数交互,从而完成仅靠文本生成无法实现的任务(如搜索、计算、数据库查询等)。•增强 LLM 的功能:让 LLM 突破纯文本生成的限制,执行实际操作(如调用搜索引擎、查询数据。
2025-12-15 19:09:38
1001
原创 LangChain实战快速入门笔记(四)--LangChain使用之Memory
大多数的大模型应用程序都会有一个会话接口,允许我们进行多轮的对话,并有一定的上下文记忆能力。❗❗但实际上,模型本身是不会记忆任何上下文的,只能依靠用户本身的输入去产生输出。🤖:如何实现记忆功能呢? 实现这个记忆功能,就需要额外的模块去保存我们和模型对话的上下文信息,然后在下一次请求时,把所有的历史信息都输入给模型,让模型输出最终结果。而在 LangChain 中,提供这个功能的模块就称为Memory(记忆) ,用于存储用户和模型交互的历史信息。 Memory,是LangChain中用于多轮对话中保
2025-12-15 17:37:13
619
原创 LangChain实战快速入门笔记(二)--LangChain使用之Model I/O
Model I/O 模块是与语言模型(LLMs)进行交互的核心组件,在整个框架中有着很重要的地位。所谓的Model I/O,包括输入提示(Format)、调用模型(Predict)、输出解析(Parse)。分别对应着Prompt Template,Model 和Output Parser。简单来说,就是输⼊、模型处理、输出这三个步骤。针对每个环节,LangChain都提供了模板和工具,可以快捷的调用各种语言模型的接口。
2025-12-11 19:19:48
942
原创 LangChain实战快速入门笔记(一)--LangChain使用概述
LangChain 是2022 年 10 月,由哈佛大学的(哈里森・蔡斯)发起研发的一个开源框架,用于开发由大语言模型(LLMs)驱动的应用程序。比如,搭建 “智能体”(Agent)、问答系统(QA)、对话机器人、文档搜索系统、企业私有知识库等。简而言之:LangChain 之于 LLMs,类似 Spring 之于 JavaLangChain 之于 LLMs,类似 Django、Flask 之于 Python顾名思义,
2025-12-02 17:30:25
845
原创 面试(三)
面试官问:“介绍一下缓存三兄弟。答:穿透、击穿和雪崩。缓存穿透是查询一个根本不存在的数据,导致请求直接穿透缓存去访问数据库。解决方案是参数校验、缓存空对象和使用布隆过滤器。缓存击穿是一个热点key在过期瞬间,被高并发请求击穿,全部打到数据库。核心解决方案是使用互斥锁或设置热点数据永不过期。缓存雪崩是大量key在同一时间集中过期或Redis服务宕机,导致数据库被瞬时流量压垮。主要通过差异化过期时间、构建高可用集群和服务熔断降级来解决。
2025-11-28 15:15:47
220
原创 面试(二)
缓存雪崩是我在设计和维护缓存系统时非常关注的一个问题。它指的是在同一时刻,大量缓存集中失效或者 Redis 服务本身宕机,导致所有请求直接穿透到数据库,从而压垮数据库的连锁故障。我遇到的典型场景主要有两种:一是给一批 key 设置了相同的过期时间,比如在凌晨批量刷新数据。二是 Redis 集群中的某个节点或者整个服务不可用。首先,预防是关键。对于大量 key 同时过期,我最常用的方法是给缓存过期时间加上一个随机值,让失效时间点均匀分布,避免瞬时高峰。其次,架构要健壮。
2025-11-28 14:14:20
727
原创 AI大模型应用开发(三)------LangChain
LangChain是一个基于大语言模型用于构建端到端语言模型应用的框架,它提供了一系列工具、套件和接口,让开发者使用语言模型来实现各种复杂的任务,如文本到图像的生成、文档问答、聊天机器人等。
2025-11-23 17:26:19
21
原创 AI大模型应用开发(二)------RAG
(1)LLM的知识不是实时的,不具备知识更新。(2)LLM可能不知道你私有的领域/业务知识。(3)LLM有时会在回答中生成看似合理但实际上是错误的信息。在数学中,向量(也称为欧几里得向量、几何向量),指具有大小(magnitude)和方向的量。它可以形象化地表示为带箭头的线段。箭头所指:代表向量的方向;线段长度:代表向量的大小。import os# texts 是一个包含要获取嵌入表示的文本的列表;# model 则是用来指定要使用的模型的名称# 生成文本的嵌入表示。结果存储在data中。
2025-11-20 16:56:00
309
原创 AI大模型应用开发笔记(一)------常识
*提示词(Prompt)的概念:**用户发送给大语言模型的问题、指令或请求,是模型理解用户需求并生成回答的基础。**提示词作用:**帮助大模型解决问题,提升工作效率。**大模型插件:**一种软件组件,它们设计用于增强和扩展基础大模型的功能。如网络搜索,视觉生成,语音合成等。如计算器、时钟、天气信息体育赛事报道,实时,热点新闻图片生成,语音合成,代码解释器学习笔记,有用的话记得关注么么哒!!
2025-11-18 15:27:46
646
原创 AI大模型开发(五)------Langchain+streamlit实现本地模型到云上模型的切换
LangChain是一个用于构建和管理基于语言模型(language Models,LM)的应用程序的框架。**设计目标:**简化语言模型的使用过程,使其更容易被集成到各种应用场景中。1.模块化设计:采用模块化设计,将不同功能拆成独立的组件。2.强大的模型支持:支持多种预训练语言模型。3.易用的API:提供简单易用的python API,开发者可以通过几行代码快速实现复杂的语言处理任务。4.丰富的工具和组件。
2025-11-14 11:26:23
748
原创 AI大模型开发(三)-----Streamlit基础API
Streamlit是一个开源Python库。它旨在让数据科学家和工程师能够以最少的代码和配置,将他们的数据分析和模型展示转化为交互式的Web应用。设计目标:简单易用,同时保持高度的灵活性和可定制性。类似chatGPT的前端页面实现,后续会引入ollama实现聊天记得关注么么哒!!!
2025-11-13 17:43:09
223
原创 Centos7启动docker并进入redis命令
可以从上一步中出来的结果,最前边复制,找到要用的redis,复制其最前面的码,替换到上述命令中,然后按Enter就能进入Redis。可能会让输入密码,输入创建虚拟机时设置的密码,按Enter键,切换到root用户。正常情况下docker是未启动的,输入该命令后显示的docker未启动。如果Docker安装成功的情况下,显示的是。这里的redis是给这个redis起的名字。
2025-10-31 17:53:28
197
原创 实战中学习Matlab(小白都能学会)
A=[1 2 3 5 8 5 4 6] //构建一个1X8的矩阵AB = 1:2:9 //构建一个矩阵B,要求最大值是1,最小值是9,步长是2;步长不能缺少C = repmat(B,m,n) //把B这个矩阵横着重复m次,竖着重复n次;D = ones(2,4) //生成一个2行4列的矩阵D,所有位置都为1。
2024-02-27 11:37:03
1167
原创 回文数代码实现
如果x是负数直接就不是回文数;如果x大于0,创建一个变量b用来储存传入x的原始值,创建一个变量a,并且赋初值为0,用来存储将x一步步倒过来的值。最后只需要比较a与b的值是否一致,就能判断是不是回文数。从左向右读, 为 -121。从右向左读, 为 121-。因此它不是一个回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。从右向左读, 为 01。因此它不是一个回文数。是一个回文整数,返回。
2023-10-19 22:15:08
177
1
原创 求两数之和
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。遍历每个元素 x,并查找是否存在一个值与 target−x 相等的目标元素。输入:nums = [2,7,11,15], target = 9。输入:nums = [3,2,4], target = 6。输入:nums = [3,3], target = 6。
2023-10-18 10:01:14
101
1
原创 [算法题]只出现一次的数字
所以,x&(-x)得到的是x最低位的1(带权重),3=011,-3=101,3&(-3)=011&101=1。4.令c=x&(-x),则c&b和c&a的结果必然不同,而对那些两两出现的数num,他们的第i位必然相同(因为是同一个数),所以num&c的结果必然相同,因此可以用num&c将nums中的所有数分成两部分:一部分是a和其他两两出现的数,另一部分是b和其他两两出现的数。3.得到x=a^b中最低位的1(带权重),假设最低位1的序号是i,由于a≠b,所以a,b的第i位必然不相同,一个为0,一个为1。
2023-10-16 23:21:01
113
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅