- 博客(79)
- 收藏
- 关注
原创 LangChain- 终章
<think>我们只需要根据内容生成摘要,≤150字。内容是两个附录:FAQ、学习路线、术语表。摘要应概括主要内容:常见问题解答(旧API、模型选择、方法区别等),推荐学习路线(分周目标),术语速查表。字数限制。</think>本文为LangChain教程附录,包含新手FAQ(解答旧API、模型选择、invoke/stream/batch区别、记忆机制等)、四周学习路线(基础→智能体→记忆→进阶)及术语速查表,帮助快速掌握核心概念与实践路径。
2026-09-08 16:13:40
135
原创 LangChain-17 中间件
<think>我们只需要生成摘要,不超过150字。内容是关于中间件的定义、作用、示例等。摘要要简洁。</think>本章介绍中间件机制:在智能体流程关键节点插入自定义逻辑,实现模型调用前后拦截、动态提示、动态模型选择等扩展。通过装饰器或类方式实现,并回顾了日志、脱敏、审批等实例。
2026-09-08 16:11:49
282
原创 LangChain-16守卫
<think>我们只需要根据内容生成摘要,≤150字。需要概括第15章关于AI守卫的内容:定义、类型、内置PII检测、人工审核、自定义守卫。摘要要简洁。</think>第15章介绍AI“守卫”机制:在关键节点验证过滤,防PII泄露、提示注入、不当内容。分确定性规则与基于模型两类。内置PII中间件支持脱敏、遮盖、哈希、拦截,并可自定义检测。人工审核是最强守卫。还能通过中间件钩子自定义黑名单等规则,确保安全可控。
2026-09-08 16:10:57
184
原创 LangChain-15 多Agent
多智能体系统:把复杂应用拆成多个各司其职的专业智能体,协同完成任务。什么时候值得上多智能体?单个智能体工具太多,挑花眼、选错工具上下文太大,单个智能体记不过来任务天然需要分工(一个规划、一个查资料、一个算数)
2026-09-08 16:09:48
126
原创 LangChain-14 MCP
MCP(Model Context Protocol,模型上下文协议):一个开放标准,统一了"应用如何向 LLM 提供工具"。可以理解为AI 工具的 USB 接口——工具做成 MCP 服务器,任何支持 MCP 的 AI 应用都能即插即用。MCP 之前:每个工具为每个 AI 应用单独写适配,N 个工具 × M 个应用 = N×M 种对接。MCP 之后:工具实现一次 MCP 协议,所有 AI 应用直接用,N + M。
2026-09-01 09:35:46
180
原创 LangChain-13 HITL
<think>我们只需要生成摘要,≤150字。摘要内容应涵盖HITL定义、作用、三种决策、配置要点和checkpointer依赖。语言简洁。</think>本章介绍人机交互(HITL)机制:智能体执行敏感操作前暂停等待人工审批,支持批准、修改、拒绝三种决策,并提供配置示例及恢复执行方法。HITL是生产环境安全保命机制,必须配合检查点使用以保存暂停状态,拒绝时需写明理由供模型改进。
2026-09-01 09:34:54
126
原创 LangChain-12 流式输出
<think>我们只需要根据内容生成摘要,≤150字。内容讲流式输出,三种模式,自定义进度。摘要应简洁概括。</think>本章介绍智能体流式输出:通过 stream_mode 控制推送内容,包括 updates(代理步骤)、messages(token 打字机效果)、values(完整状态);工具内可用 stream_writer 发送自定义进度,实现实时反馈。
2026-09-01 09:33:46
156
原创 LangChain-11 检索与 RAG
<think>我们根据内容生成摘要,不超过150字。需要概括主要点:RAG定义、检索管道、两种架构、Agentic RAG示例、现有数据库方案。注意简洁。</think>本章介绍检索与RAG:通过检索外部资料增强生成,解决大模型上下文有限和知识过时问题。讲解检索管道五组件(加载、切分、嵌入、向量存储、检索器),比较2步RAG与Agentic RAG架构,并展示Agentic RAG的简单实现——以工具赋予模型检索能力。最后指出已有数据库可直接接为工具,不必重建向量库。
2026-09-01 09:32:40
179
原创 LangChain-10 长期记忆
长期记忆:跨对话线程持久保存的信息。昨天聊完,今天开新对话,AI 还记得你是谁、喜欢什么。短期记忆 = 这次聊天的记录本;长期记忆 = AI 的私人日记本(按用户分开存放)。LangChain 的长期记忆基于Store(存储器)记忆以 JSON 文档形式存放namespace(命名空间,类似文件夹)+key(键,类似文件名)命名空间通常包含用户 ID,实现"每个用户一本独立日记"支持按内容过滤、向量相似度搜索。
2026-09-01 09:31:46
188
原创 Langchain-09 Memory
短期记忆:让应用记住单个对话(线程)内的交互历史。用户第二轮说"我刚才说的名字是什么",AI 答得上来。线程:一次完整对话的容器,类似微信里的一个聊天窗口。用thread_id(线程 ID)标识。历史越来越长 → token 费用暴涨 → 超出上下文窗口直接报错多个用户 / 多个对话同时进行,自己管理容易乱checkpointer(检查点保存器)。默认只记messages。# ↑ AgentState 是默认状态,含 messages。
2026-08-28 15:32:08
148
原创 Langchain-08 结构化输出
结构化输出:让智能体最终返回的数据符合你预先定义的格式模板,直接得到 Python 对象(Pydantic / dataclass / TypedDict),不用再解析自然语言。为什么需要它?❌ 没有结构化输出:模型回答:"这位顾客叫约翰,邮箱是 john@example.com,电话 555-1234"你的代码还得写正则去抓名字、邮箱……脆弱得像豆腐渣✅ 有结构化输出:你定义:class ContactInfo(BaseModel): name: str;email: str;
2026-08-28 15:27:24
183
原创 Langchain-07 Tool
工具:智能体可以调用的函数。它把一个普通 Python 函数连同"说明书"(名称、描述、参数说明)打包,让模型知道什么时候可以调用、怎么调用。工具让模型能接触外部世界:查数据库、调 API、读写文件、搜索网页……函数名不好看?# @tool 括号里传参:第一个是工具名,description 是详细描述@tool("web_search", description="在互联网上搜索最新信息。遇到时效性问题时使用。")"""搜索网页。
2026-08-28 15:26:27
218
原创 Langchain-06 什么是Agent
智能体:语言模型 + 工具的组合体。它能对任务自主推理、自己决定调用哪些工具、反复迭代直到完成任务。简单说:模型只会"说",智能体既会"说"又会"做"。模型 vs 智能体你问模型:“北京今天天气如何?” → 它只能编:“我记得北京今天……”(瞎猜)你问智能体同样的问题 → 它发现有个工具可用,调用工具查到真实天气,再回答你 ✅。
2026-08-28 15:24:52
218
原创 Langchain-05 消息
消息:模型上下文的基本单位,代表对话中的一句话/一条信息。角色:谁说的(system / user / assistant / tool)内容:说了什么(文本、图片、音频等)元数据:附加信息(消息 ID、token 用量等,可选)为什么要用"消息列表"和模型对话?因为模型本身没有记忆——每次调用都是独立的。你发给它的消息列表,就是它能"看到"的全部世界。想让模型记住上文,就得把历史消息一起发过去。
2026-08-28 15:07:41
214
原创 LangChain-04 调用模型
模型:这里特指聊天模型,即你发消息给它、它回消息给你的大语言模型(LLM)。模型是智能体的"大脑"——它负责理解问题、做决策、生成回答。同一套接口,适配所有主流模型。切换模型只需要改一个字符串。
2026-08-27 10:27:54
194
原创 LangChain-03 环境准备
OpenAI/Anthropic 的 API 需要相应账号。如果你用的是智谱、DeepSeek、通义千问等国内模型,同样有对应的集成包(如。(尤其是要把代码传到 GitHub 的时候)。如果打印出了模型的回答,说明环境 OK,可以正式开始学习之旅了 🎉。),或者用兼容 OpenAI 接口的方式接入(设置。原理完全一样,教程代码只需改模型名。API Key 是你调用模型的"钥匙",LangChain 的模型集成是。
2026-08-27 10:26:16
152
原创 LangChain-02 认识LangChain
LangChain 是一个 Python(也支持 JS)开发框架,帮你更快地构建基于大语言模型(LLM)的应用,尤其是"智能体"应用。大模型 API就像一台超强发动机——有劲儿,但直接裸用很麻烦LangChain就是帮你造整车的那套底盘和变速箱——发动机一装,你就能开着跑了。
2026-08-27 10:24:54
344
原创 LangChain教程-目录
中文文档地址:https://langchain-doc.cn/v1/python/langchain/`原文档地址:https://docs.langchain.com/oss/python/langchain。```注: 本文基于LangChain官方文档编写``
2026-08-27 10:21:39
240
原创 前后端通用项目框架
本文档提供React+FastAPI/NestJS/ASP.NET Core+PostgreSQL多技术栈的全栈项目结构参考指南,适用于不同技术选型下的项目初始化。文档包含前端React规范(目录结构、命名、组件编写、状态管理、API封装)和三种后端技术栈(FastAPI、NestJS、ASP.NET Core)的规范对比与实现指南,以及数据库、前后端协作、环境部署和代码质量等通用规范。前端推荐Feature-Based结构,后端根据场景选择:FastAPI适合快速迭代,NestJS适合Node全栈,ASP
2026-07-10 10:07:52
189
原创 C# Web 开发从入门到实践
ASP.NET Core 开发指南摘要 ASP.NET Core 是一个跨平台、高性能的开源 Web 框架,支持构建现代 Web 应用。本文介绍了其核心开发流程: 基础入门:通过命令行创建 Web API 项目,演示控制器编写和路由配置 核心概念: 内置依赖注入容器及其生命周期管理 中间件管道处理请求/响应 配置文件(appsettings.json)读取 Web API 开发: RESTful API 设计规范 模型验证(DataAnnotations) CRUD 操作实现 数据库集成:使用 Entity
2026-03-19 10:12:19
324
原创 ASP.NET Core 面试题汇总
ASP.NET Core 是一个跨平台、高性能的开源 Web 框架,用于构建现代的、基于云的互联网应用。它是 ASP.NET 的重新设计,支持 Windows、Linux、macOS,可以部署到 IIS、Nginx、Docker、Azure 等多种环境。跨平台高性能开源统一的 MVC 和 Web API 框架内置依赖注入模块化中间件管道依赖注入是一种设计模式,通过外部注入依赖对象,而不是在类内部创建。ASP.NET Core 内置了轻量级的 DI 容器。
2026-03-19 10:10:01
825
原创 ASP.NET Core 面试八股高频题 + 标准答案精简版
ASP.NET Core 面试要点摘要 ASP.NET Core 是微软推出的跨平台、高性能 Web 开发框架,相比传统 ASP.NET 具有轻量、模块化等优势。其核心特性包括:中间件管道处理请求、依赖注入管理对象生命周期、配置系统读取参数等。Web API 开发涉及路由映射、模型绑定验证、ActionResult 返回结果等机制。EF Core 提供数据库访问能力,DbContext 通常注册为 Scoped 生命周期,通过 Migration 管理数据库结构变更。身份认证方面,JWT 是常用的无状态 T
2026-03-12 10:35:37
280
原创 Next-4-路由导航
Next.js 提供了多种客户端路由导航方式,包括 <Link> 组件和 useRouter Hook,支持动态路由、预加载和事件监听。<Link> 组件可避免整页刷新,支持参数传递和预获取页面;useRouter 则提供编程式导航方法如 push、replace 和 refresh。此外,Next.js 支持自动和手动路由预加载,以及动态路由参数传递。服务端路由导航可通过 redirect 和 permanentRedirect 实现,分别对应临时和永久重定向。这些功能共同提升了页
2025-12-24 17:27:28
203
原创 Next-3-App Router
Next.js 13的App Router引入了基于文件系统的路由系统,支持嵌套路由、服务器组件默认、共享布局和流式渲染等特性。通过文件夹结构定义路由层级,如app/dashboard/page.js对应/dashboard路径。服务器组件可直接异步获取数据,客户端组件需标记'use client'。Layout用于共享UI结构并保持状态,Template在路由切换时重新渲染,适合动态效果。Loading组件可展示加载状态。示例展示了数据获取和客户端交互的实现方式。
2025-12-23 11:58:46
797
原创 Next-2-项目搭建
本文介绍了Next.js项目的初始化与核心配置方法。通过npx create-next-app@latest命令可快速搭建项目,支持TypeScript、ESLint等选项。重点说明了App Router和Pages Router两种路由模式的区别:App Router采用"文件夹即路由"的约定,支持嵌套布局和流式渲染;Pages Router则沿用传统的文件路由方式。文章还对比了两种模式在数据获取、渲染方式、路由跳转等方面的差异,并提供了简单的代码示例,帮助开发者快速理解Next.js
2025-12-22 11:34:12
359
原创 Next-1-启动!
Next.js是基于React的现代Web框架,支持服务端渲染(SSR)、静态生成(SSG)和混合渲染,提供路由、API、图像优化等功能。核心特性包括:SSR提升首屏加载和SEO,SSG优化静态页面性能,内置API路由和图像优化组件。通过文件系统自动映射路由,支持动态路由和数据获取(getStaticProps/getServerSideProps)。可部署到Vercel等平台,还提供中间件、增量静态生成(ISR)和国际化等进阶功能。Next.js结合高性能与开发便捷性,是构建现代Web应用的理想选择。
2025-12-19 11:05:36
315
原创 NestJs-拦截器
NestJS拦截器是基于AOP思想的核心功能,用于在方法执行前后注入逻辑。主要功能包括修改请求/响应数据、异常处理和异步操作。通过实现NestInterceptor接口创建拦截器,支持全局、模块和方法级注册。常见应用场景包括统一响应格式、性能监控和缓存实现。拦截器与过滤器的区别在于前者可修改数据流而后者仅处理异常。最佳实践建议保持职责单一、优先模块注册并优化性能敏感操作。典型示例展示了如何实现数据过滤和响应转换功能。
2025-12-18 17:33:04
403
原创 NestJs-JWT鉴权
JWT 是一种基于 JSON 的安全令牌标准,用于身份验证和授权。它由 Header、Payload 和 Signature 三部分组成,通过密钥签名确保安全性。在 Node.js 中可使用 jsonwebtoken 库生成和验证 JWT,常见应用场景包括无状态会话和分布式系统授权。使用时需注意密钥保护、HTTPS 传输和设置合理过期时间。NestJS 中可通过 @nestjs/jwt 模块实现 JWT 鉴权,结合 Passport 策略进行验证,典型流程包括提取令牌、验证签名并返回用户信息供后续授权使用。
2025-12-18 11:56:02
980
原创 PostgreSql 常用聚合函数
PostgreSQL聚合函数示例展示了15种常用统计方法。基础统计包含count、sum、avg等;扩展统计计算标准差和方差;位运算聚合处理按位操作;字符串和JSON聚合实现数据组合;有序集合函数计算百分位数和众数;假设集合分析数据分布。示例使用临时表demo(id,v,t),包含3条记录,其中v字段含NULL值。所有功能均基于PG15原生支持,无需额外扩展。结果表清晰展示各函数输出,如count(*)返回3而count(v)返回2(忽略NULL),string_agg生成"a,b,c"
2025-12-15 16:39:58
348
原创 NestJs-管道
NestJS 管道与验证机制解析 NestJS 的管道(Pipe)是一种强大的预处理机制,主要用于控制器方法执行前的数据验证和转换。管道通过实现 PipeTransform 接口,可以在请求到达控制器前对输入数据进行处理。 核心功能 数据验证:自动验证输入数据,不符合规则时直接抛出异常 数据转换:将输入数据转换为所需格式(如字符串转数字、普通对象转DTO实例) 内置管道 Nest 提供多个开箱即用的管道: ParseIntPipe:字符串转整数 ValidationPipe:结合 class-validat
2025-12-10 17:55:06
882
原创 LINQ语法
LINQ(Language Integrated Query)是.NET框架中的查询技术,提供两种语法形式:类SQL的查询语法和使用Lambda表达式的方法语法。核心功能包括数据筛选(Where/OfType)、投影(Select/SelectMany)、排序(OrderBy/ThenBy)、分组(GroupBy)、连接(Join/GroupJoin)、集合操作(Distinct/Union)、分页(Skip/Take)、聚合(Sum/Average)以及类型转换(Cast/ToArray)等。LINQ支持
2025-12-04 16:16:08
826
原创 学习React-27-导航
React Router导航功能摘要(149字): React Router提供多种导航方式:1)Link组件生成<a>标签,支持to/replace/state等参数控制跳转行为;2)NavLink可自动高亮匹配路由,支持active/pending状态样式控制;3)useNavigate钩子实现编程式导航,支持路径跳转、历史记录操作和状态传递;4)redirect用于权限路由跳转,v6推荐在loader中返回redirect();5)通配路由"*"处理404页面。关键特性
2025-11-25 17:45:16
890
原创 学习React-26-路由操作(loader&action)
React Router v6.4+引入了loader和action作为数据路由的核心功能。loader用于路由渲染前异步加载数据,通过useLoaderData访问返回数据;action处理路由级数据提交,常与<Form>组件配合。两者都支持异步操作,loader在路由匹配后执行,action处理表单提交。典型流程:页面加载触发loader,用户交互触发action,完成后重新调用loader更新数据。需注意返回可序列化数据,配合错误处理机制使用。
2025-11-25 16:30:12
438
原创 学习React-25-路由懒加载
本文介绍了React Router中的懒加载和useNavigation两大核心功能。懒加载通过React.lazy()和Suspense实现路由组件按需加载,优化首屏性能,并详细说明了其实现方法和注意事项。useNavigation钩子则用于获取导航状态(idle/loading/submitting)和编程式导航,提供了优化用户体验的方案,包括加载状态提示的实现。文章通过代码示例和效果演示,展示了如何在项目中应用这些技术,同时强调了版本兼容性和使用限制等关键点。
2025-11-24 14:43:22
631
原创 学习React-24-路由传参
本文介绍了React Router中三种传递参数的方式: 动态路由(useParams):通过URL路径传参,如/user/123,适合RESTful路由参数 查询字符串(useSearchParams):通过URL查询参数传参,如/search?keyword=react,适合筛选、分页等场景 状态传递(state):通过路由状态对象传参,不暴露在URL中,但刷新后会丢失,适合临时数据传递 三种方式在URL暴露性和刷新保留性上各有特点,可根据具体场景选择使用。
2025-11-24 11:44:23
313
原创 学习React-23-React-router
React Router v7 整合了原先拆分的包,只需安装 react-router。演示了基本路由配置和四种路由模式(BrowserRouter、HashRouter、MemoryRouter、StaticRouter)的特点及适用场景。详细介绍了嵌套路由、布局路由和索引路由的实现方式,包括子路由占位符<Outlet />的使用和懒加载优化建议。提供了从基础配置到高级用法的完整路由解决方案,适用于不同项目需求。
2025-11-22 17:59:49
659
原创 学习React-22-Zustand
Zustand 是一个轻量级 React 状态管理库,提供简洁的 Hook API 和高效性能。其核心特性包括极简的 store 创建方式(create 函数)、无需 Provider 嵌套、自动渲染优化以及中间件支持(如 immer 实现不可变状态、persist 数据持久化)。通过 useShallow 可优化多状态选择时的渲染性能。相比 Redux,Zustand 更适合中小项目,以更简单的代码实现全局状态管理。安装使用方便(npm install zustand),支持 TypeScript 类型推
2025-11-20 13:03:41
812
原创 Docker核心概念与实战指南
Docker是一种轻量级的容器化技术,通过共享宿主机内核实现高效资源利用,相比虚拟机具有启动快、占用小等优势。其核心组件包括镜像(只读模板)、容器(运行实例)和仓库(镜像存储中心)。安装方式支持Linux(原生最佳)、Windows(需WSL)和Mac系统,主要通过命令行操作。常用命令包括镜像管理(pull/images/rmi)、容器管理(run/stop/ps)等,支持端口映射(-p)、后台运行(-d)等参数配置。Docker Hub是官方镜像仓库,可通过配置镜像站解决网络问题,同时需注意不同CPU架构
2025-11-10 17:06:18
912
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅