自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(346)
  • 资源 (9)
  • 收藏
  • 关注

原创 LangGraph学习-(1)跑通一个最小状态图

3. 用 set_entry_point / add_edge / add_conditional_edges 定义边。2. 用 add_node 注册所有节点(名字→函数的映射)。1. 创建 StateGraph 实例,传入状态结构定义。4. 调用 compile() 编译为可执行的图。

2026-06-08 17:12:56 138

原创 最小实现ReAct Agent

最小 ReAct 就是:让大模型先思考要不要调用工具,如果要,就执行工具并把结果写回状态,再继续思考,直到证据足够时输出最终答案。这一步非常重要,因为 observation 会进入下一轮状态,变成模型继续思考的依据。像“今日、今天、最新”这种词,如果不先锚定成绝对日期,模型就容易乱猜。模型负责思考,工具负责取信息,状态负责记过程,循环负责推进到答案。所以 ReAct 的重点不是“回答”,而是“边想边做”。它不是工具结果,也不是最终答案,而是模型的当前判断。

2026-05-26 15:02:53 432

原创 技术经理面试相关--管理和沟通篇

老板要你做一个不合理需求怎么办?团队出现冲突怎么处理?产品和技术冲突怎么办?如何评价一个工程师?如何处理绩效差的人?需求频繁变更怎么办?

2026-05-06 17:16:41 41

原创 技术经理面试相关--技术篇

一个接口从 200ms → 2s,你怎么排查?如果业务要快上线,你如何取舍技术债?如何评估一个技术方案 ROI?技术方案如何支持业务增长?

2026-04-30 18:01:21 60

原创 技术经理的工作范围

联合测试团队制定测试方案,确保测试全面性;全维度风险识别与应对:识别技术(选型失误、架构瓶颈)、项目(工期延误、资源不足)、人员(核心员工离职)、业务(需求变更、业务调整)等各类风险,制定风险预案;技术合规落地:对接公司法务 / 合规部门,落地数据合规(个人信息保护法、GDPR)、行业合规(等保、密评),如做数据脱敏、用户数据最小化采集、操作日志留存;核心是搭建、培养、激活、留存技术团队,解决 “人从哪来、能力怎么提、怎么激励、怎么留” 的问题,是所有管理工作的前提,也是技术经理最核心的管理职责之一。

2026-04-29 17:19:16 388

原创 java面试知识点复习

ConcurrentHashMap底层原理。

2026-04-29 17:08:23 53

原创 Python面试题

三、面向对象 OOP(高频核心)二、函数与参数(进阶基础)四、类型、迭代器、生成器。六、内存管理与底层机制。八、模块、导入、工程化。五、数据结构底层原理。七、并发、协程、异步。

2026-04-28 09:19:39 47

原创 前端学习---(7)vue上手(路由)---3

路由https://gitee.com/marina-37/vue3_vite_ts#43-%E4%B8%A4%E4%B8%AA%E6%B3%A8%E6%84%8F%E7%82%B9。学习视频 https://www.bilibili.com/video/BV1Za4y1r7KE(031-042路由部分)Home.vue,News.vue,About.vue 被称为路由组件,靠路由规则渲染出来的,交路由组件。path:‘/’, // 当路径是/ 重定向到 /about。路由的replace。

2026-03-07 17:52:04 218

原创 前端学习---(7)vue上手(组件)---2

provide 和 inject 用于父组件向子组件传递数据,任何后代的组件树,无论层级有多深,都可以注入由父组件提供给整条链路的依赖。全局注册,如果你全局注册了一个组件,即使它并没有被实际使用,它仍然会出现在打包后的 JS 文件中。全局注册在大型项目中使项目的依赖关系变得不那么明确,局部注册依赖关系更加明确。组件生命周期的八个钩子函数。导入的组件可以直接使用。在每个vue组件中注册。

2026-03-05 10:40:25 236

原创 前端学习---(7)vue上手(基础)---1

key 是 Vue 给 v-for 循环渲染的元素添加的唯一标识,:key=“index” 就是把循环的「索引值」作为这个唯一标识。表单事件: input(输入实时触发)、change(值改变触发)、submit(表单提交)、blur(失去焦点)鼠标事件: mouseenter(鼠标进入)、mouseleave(鼠标离开)、contextmenu(右键)页面/窗口事件: load(页面加载)、resize(窗口缩放)、scroll(滚动)点击事件: click(单击)、dblclick(双击)

2026-03-04 16:05:19 228

原创 软件研发类项目流程

②按测试计划,执行单元测试、集成测试、系统测试,核心模块需做压力测试(如并发量、QPS指标)①核心模块必须输出《技术设计文档(TDD)》,包含架构图、模块划分、接口定义。①测试人员基于《需求评审纪要》编写测试用例,覆盖功能、性能、兼容性、异常场景。② 每周/每版本迭代后组织复盘会,记录问题(如延期原因、技术坑)、改进措施。②明确需求优先级(P0/P1/P2)、验收标准(可量化)、排期。③. 明确技术选型(如框架、中间件、云服务)的理由与成本。③ 输出《上线报告》,记录版本内容、风险点、回滚方案。

2026-01-08 18:50:40 292

原创 大模型的微调技术简介

大模型微调(Fine-tuning)是在通用“基座模型”的基础上,使用特定任务 / 领域的数据集(如医疗对话、法律文档分析、代码生成等)进行进一步训练,通过更新模型参数,使其获得专业能力的过程。因为其位置(关键权重旁)和方式(可合并的旁路) 在效果、效率和便利性上取得了最佳平衡。方式 1:合并 LoRA 适配器到原模型(推荐,部署时无需加载 PEFT)④ **BitFit(仅调偏置)**极简低成本方案。③**Adapter(适配器)**多任务首选。(仅参数高效微调(PEFT))微调和RAG(检索增强生成)

2026-01-07 15:51:30 627

原创 如何评估LLM和Agent质量

Agent 是大模型 + 工具 + 记忆 + 规划的综合体,其核心价值是完成复杂任务,因此评估重点从 “模型能力” 转向 “任务执行能力”。LLM和Agent两者的评估维度有重叠但侧重点差异显著 —— 大模型侧重基础语言与认知能力,Agent 侧重复杂任务的闭环执行能力。自动评估:基于标准化数据集(如 MMLU 评估大模型综合能力)、指标计算(BLEU、任务完成率),优势是高效、可量化,适合初步筛选。但核心都是能力匹配度、可靠性、实用性三个核心目标。这是大模型的核心竞争力,决定其 “能不能用”。

2025-12-31 17:57:26 421

原创 大模型蒸馏技术简介

大模型蒸馏本质上是一种模型压缩与知识迁移技术,核心目标是让体积小巧、资源消耗低的“学生模型”,精准复刻大型复杂“教师模型”的核心能力。② 在蒸馏时,教师模型不把它复杂的“世界模型”(那需要同样大的参数来存储)直接交给学生,而是把它对这个具体问题的“思考结论”——即包含了“猫狗相似”这个关系的软标签 [0.7, 0.25, 0.05]——交给了学生。训练大模型(教师模型):首先需要训练一个大模型,这个模型通常非常复杂,且在训练数据上表现出色,但计算消耗也非常大。知识蒸馏,就是把知识浓缩,然后交给学生模型;

2025-12-29 22:12:24 394 1

原创 大模型剪枝(Pruning)技术简介

识别并移除模型中冗余或贡献低的参数 / 结构,同时保持性能基本不变。② 注意力头剪枝 (Attention Head Pruning)在不显著损失模型性能的前提下,实现模型的轻量化与高效化。③通道剪枝 (Channel Pruning)①权重剪枝 (Weight Pruning)④层剪枝 (Layer Pruning)

2025-12-29 09:12:41 302

原创 多模态大模型应用技术栈

图文检索的核心是 “跨模态语义对齐”—— 让模型学会 “文本描述的含义” 与 “图像视觉特征” 的对应关系。核心逻辑是将文本和图像映射到同一高维向量空间,通过计算向量相似度(余弦相似度 / 内积)实现 “以文搜图”“以图搜文”“图文配对”。模型选择: Stable Video Diffusion(SVD) / Open-Sora / 魔搭社区视频模型。模型选择: CLIP / BLIP-2 / EfficientNet + BERT。方案3: 开发一款长视频生成大模型(尚未实现)

2025-12-25 18:50:30 340

原创 OpenGauss数据库安装和SpringBoot项目使用OpenGauss数据库

虽然引用依赖是opengauss-jdbc,但opengauss-jdbc-3.1.0.jar中的路径依旧是 org.postgresql.Driver。引入OpenGauss的maven依赖(版本太高可能会出现依赖冲突,比如7.0.0会有slf4j的依赖冲突)连接使用navicat等 使用postgreSQL 或者opengauss驱动。所以driverClassName填写 org.postgresql.Driver。opengauss数据库安装。

2025-12-24 10:40:44 322

原创 大模型架构理解与学习

②有些任务只需要 “生成”(比如聊天、写代码),不需要依赖明确的 “输入理解”(开放式生成)—— 于是单独拿出 Decoder,做成了。(比如 GPT 系列(GPT-1~4)、LLaMA 系列(LLaMA 1/2/3)、Qwen(通义千问)、Mistral);①有些任务只需要 “理解”(比如判断评论是好评还是差评),不需要 “生成”—— 于是单独拿出 Encoder,做成了。③有些任务需要 “先理解再生成”(比如翻译、摘要)—— 于是保留了完整的。优化 1:注意力机制 “瘦身”(解决 “慢” 的问题)

2025-12-22 18:07:45 471

原创 MCP协议的简介和简单实现

​模型上下文协议(Model Context Protocol,简称 MCP)一种开放的、通用的标准化协议, 旨在标准化大型语言模型(LLM)与外部数据源或工具之间的交互方式。MCP Client 客户端:运行在主机(host)里的客户端,当有需要的时候被激活,与MCP Server 建立连接(客户端和服务器是一对一连接)。②意图解析: 聊天机器人(Host主机)将问题发给大模型,分析可用的工具,并决定用哪一个工具,如查询天气的工具;MCP 的本质是为 AI 模型提供统一的交互标准;

2025-12-18 15:25:59 394

原创 Fastapi离线环境如何使用swagger

离线环境 或者 网络状态不好的情况下swagger-ui.css 和 swagger-ui-bundle.js加载不出来。参考: https://pypi.com.cn/project/fastapi-offline/1.5.0/可以使用 FastAPIOffline。

2025-12-18 10:36:59 235

原创 大模型推理优化方案

① 量化②剪枝(Pruning)③知识蒸馏(Knowledge Distillation)①GPU 加速(NVIDIA/AMD)②CPU 加速(Intel/AMD/x86/ARM)① 通用推理引擎②生成式模型专用引擎① 批处理与动态调度②内存优化③轻量级部署工具推理优化是提升大模型(尤其是小参数模型如 Qwen2-0.5B-Instruct)部署效率的核心环节,除了之前提到的llama.cpp优化手段,还有很多针对不同场景(如低延迟、高吞吐量、跨硬件适配)的方案和工具。

2025-12-16 17:15:09 1010

原创 语音交互系统的技术实现简介

流式 ASR: 实时采集音频,按固定时长(200-500ms)切分「音频块」,每处理一个音频块,就输出增量更新的识别文本。FunASR实时输出有个特性 :每次解码后输出「中间结果」(实时更新),静音时输出「最终结果」,完成一句话的识别闭环;非流式 ASR: 麦克风采集到语音生成语音文件(wav/mp3),ASR模型读取语音文件,然后输出识别结果。核心技术是: ASR (语音识别)+ LLM (推理和内容生成)+ TTS(自然语言生成)Whisper(读威斯珀) 伪流式适合快速原型验证,无需复杂配置。

2025-12-16 14:18:48 278

原创 大模型应用中的意图识别和槽位抽取

会给模型带来巨大的处理负担,使模型难以准确地捕捉和理解其中的关键内容,容易出现混淆和错误的关联,进而影响其对意图和槽位的准确识别和抽取。通过提示词设计,无需添加复杂的额外算法或模型架构,就可使 AI 智能体快速具备意图识别和槽位抽取能力。目的是需要智能体能够理解准确各种各样、形式各异但意思相近的问题,(比如方言类、反问语气、情绪化语气等),这就要求 LLM 节点得有很强的泛化和识别能力。但比较贵,而且难以控制。意图识别和槽位抽取是自然语言理解(NLU)的两个关键部分,会直接影响智能体的交互质量和用户体验。

2025-12-12 10:34:03 793

原创 langchain基础教程(8)---使用LangGraph的搭建混合型的RAG

按照流程图, 使用add_edge 连接节点和节点, 并行节点也使用add_edge, 条件分支要使用add_conditional_edges。状态是一个类型化字典(TypedDict),用于存储各个节点的结果,加上输入问题 一共9个。全局的 “数据容器”, 用于在节点间传递信息(如上下文、工具结果、中间节点的结果数据)节点间的 “流转规则”, 决定了 “执行完当前节点后,下一步该去哪里”(节点0 A是输入问题,没有任何功能不能算个节点)(节点9 输出回答,这里是直接输出,也不能算节点)

2025-12-11 17:01:32 433

原创 langchain基础教程(7)---搭建RAG的步骤

LangChain: 企业级 RAG 系统、适用于复杂场景(多数据源、多 LLM、Agent 集成)、二次开发需求高。RAG 原理: 检索(从知识库获取相关信息)→ 增强(将信息作为上下文输入模型)→ 生成(模型基于上下文回答)RAG策略下,Prompt的设计变得尤为重要。简洁性: 在保证明确性的前提下,Prompt应尽可能简洁明了,避免引入不必要的冗余信息。② Agentic RAG(智能体式 RAG):灵活智能,适合复杂场景。① 2 步 RAG(2-step RAG):简单可预测,适合固定场景。

2025-12-08 19:14:51 350

原创 langchain基础教程(6)---构建知识库--②向量数据库-milvus

milvus和chromadb有一点不一样。

2025-12-08 14:53:57 237

原创 langchain基础教程(6)---构建知识库--①向量数据库-chromadb

①向量(Vector):将非结构化数据(文本、图像、音频、视频等)通过 Embedding 模型转换后的高维数值数组(例如 768 维、1536 维),每个维度代表数据的一个语义 / 特征属性。更通俗的说法,向量就是一个数字列表,例如:[12, 13, 19, 8, 9]。②向量的数据表示: 由ID(唯一标识)、向量(数值表示)、有效负载(元数据)组成。向量数据库是专门用于存储、管理和检索高维向量数据的数据库系统。③ 将向量和元数据(内容,标题,页码等)一块存到向量数据库中。

2025-11-30 15:21:52 428

原创 langchain基础教程(5)---长期记忆实现---使用Mem0

milvus操作参考: https://milvus.io/docs/zh/manage-collections.md。这种记忆库就是利用大模型,将对话提取/总结, 其效果非常依赖大模型的质量和prompt(默认prompt可能效果不佳)基础存储无记忆管理逻辑,仅提供基础增删改查。milvus安装之后可以使用 http://ip:9091/webui 可视化页面查看。git地址: https://github.com/mem0ai/mem0。② 内置智能记忆管理,支持长期记忆,短期记忆,可配置遗忘策略。

2025-11-27 16:21:58 486

原创 langchain基础教程(4)---短期记忆和长期记忆

在langchain官方文档中,store是在工具中使用,但是我个人认为,store放在中间件(before_model,after_model)中使用更方便。然而随着聊天轮数越来越多, 聊天记录越来越长,然后送入模型的数据会越来越长,终究会超过大模型的上下文长度;但上述都有缺点,随着聊天轮数的增多,聊天记录总归会超过大模型上下文窗口上限, 无论是截断/精简/摘要都会丢失一些消息或者细节;长期记忆(历史对话)放入外部存储环境中(如向量数据库,数据库,文档,redis),然后根据需要加载 相关的对话历史;

2025-11-26 17:25:58 333

原创 使用Uvicorn和Gunicorn部署FastApi

是一个WSGI 服务器兼进程管理器,本身主要用于同步框架(如 Flask),但在生产环境中,常被用来管理 Uvicorn 进程,充分利用多核 CPU 提升并发能力。同步框架: 当服务器(如 Gunicorn)收到请求时,会分配一个线程 / 进程处理该请求,线程会全程阻塞直到请求处理完成(包括等待 I/O 操作,如数据库查询)异步框架: 请求处理过程中遇到 I/O 等待时,不会阻塞线程,而是主动让出资源,让线程处理其他请求,从而用更少的资源(线程)实现更高的并发。先说一下什么是同步框架,什么是异步框架。

2025-11-25 14:35:17 516

原创 langchain基础教程(4)---create_agent核心参数详解

这是大模型调用工具的信息, 工具的自定义参数 是大模型产生的, agent信息在ToolRuntime中,ToolRuntime中的信息 包含messages(对话信息),context(上下文信息),config(运行的配置),stream_writer,tool_call_id(当前调用工具id),store。: 系统提示词,信息发送给模型的时候会添加,运行时是看不到的,无论是工具还是中间件,都不会有。: 运行时上下文, 自定义信息, 可在Runtime中获取。langchain 版本 1.0。

2025-11-24 17:18:20 335

原创 AutoGen入门(2)---AutoGen高级功能简介

Graph Flow是 AutoGen 中用于结构化多智能体协作的核心工具,通过 “节点 - 边 - 上下文” 模型,将复杂任务拆解为可预测的步骤序列。GraphFlow 是 AutoGen AgentChat 中用于定义有向图工作流的框架,旨在通过可视化节点与边的关系,实现多智能体协作的结构化、可预测执行。③支持跨回合协作(如长对话、多步骤任务),确保逻辑连贯性(例如:数据分析任务中,智能体需记住前期清洗的数据结果,才能继续建模)。Swarm 实现了一个团队,其中代理可以根据其能力将任务移交给其他代理。

2025-11-12 17:59:03 648

原创 AutoGen入门(1)---AutoGen基础简介

AutoGen 是微软于 2023 年开源的前沿多智能体协作框架,AutoGen 的核心理念是让多个智能体通过对话(conversation)相互协作,共同完成任务,支持 LLMs、人类输入和工具的灵活组合。此方法在与团队和应用程序/用户之间的异步通信的持久会话中很有用:一旦团队完成一次运行,应用程序会保存团队的状态,将其放入持久存储中,并在反馈到达时恢复团队。②保存和加载团队: 在团队上调用 save_state 方法来获取团队的状态,并通过在团队上调用 load_state 方法来加载它。

2025-11-12 15:14:49 1058

原创 LangGraph基础教程(4)---LangGraph的核心能力

LangGraph 的中断(Interrupt) 功能允许在图执行的任意点动态暂停流程,等待外部输入(如人工审批、内容编辑)后再恢复,核心依赖检查点(持久化状态) 和thread_id(定位待恢复状态);① 检查点(Checkpointer):必须启用(如InMemorySaver、SqliteSaver),用于持久化暂停时的图状态,确保恢复时不丢失进度。定义:关联特定执行实例的检查点集合,通过 thread_id 标识(可自定义为会话 ID、用户 ID 等)。

2025-11-11 15:03:17 1146

原创 LangGraph基础教程(3)---LangGraph的工作流程

② 定义步骤类型与上下文:按功能将节点分为 LLM 步骤(分析 / 生成文本)、数据步骤(检索外部信息)、操作步骤(执行外部动作)、用户输入步骤(人工干预),明确每个节点的上下文需求和预期结果。④ 构建节点和错误处理:节点以函数形式实现,针对 4 类错误(瞬态错误、LLM 可恢复错误、用户可修复错误、意外错误)设计专属处理策略(重试、循环返回、暂停、冒泡)。③循环机制:通过条件边实现 “LLM 决策→工具执行→反馈给 LLM” 的循环,直至完成任务(如算术运算:判断需调用加法工具→执行加法→返回结果)。

2025-11-10 11:57:29 459

原创 LangGraph基础教程(2)---LangGraph简单演示

生成包含工具调用的消息(如tool_calls: [{“name”: “add”, “args”: {“a”:3, “b”:4}, “id”: “call_1”}])。判断要不要调用工具 若需要调用工具, 则进入tool_node节点, 执行工具, messages追加 工具消息ToolMessage , 并更新状态。此时状态更新为 messages追加模型消息(除了用户消息, 系统消息 还有大模型第一次生成的工具调用消息), llm_calls=1。LangGraph版本1.0.2。

2025-11-07 19:42:11 353

原创 LangGraph基础教程(1)---LangGraph的简介

图结构: 图结构是最灵活的数据结构,元素(节点)之间可以是 “多对多” 的任意关联 ,甚至可以直接与自身关联(自环),节点之间的关系不受层级或顺序约束,可自由连接;根据边的 “方向性” 和 “约束条件”,图结构可分为多种类型: 有向图,无向图,简单图,多重图,完全图等,与 LangGraph 关联最紧密的是有向图和有向循环图。树形结构: 存在一个唯一的 “根节点”(首节点),其他节点有且仅有一个父节点,但可有多个子节点(最底层节点称为 “叶子节点”,无子节点)节点分属不同层级,体现 “上下级” 关系。

2025-11-07 15:29:14 868

原创 langchain基础教程(3)---langchain一些高级用法

内存存储 (Memory storage): LangGraph 将长期记忆作为 JSON 文档存储在存储 (store) 中。LangChain 的 create_agent 实际上是在 LangGraph 的运行时环境下运行的。活动的智能体发生变化,用户可以继续直接与新的智能体交互。你可以在工具 (tools) 和中间件 (middleware) 中访问运行时信息。当主智能体决定任务与子智能体的描述匹配时,它会调用 call_subagent1。如果子智能体不需要与用户对话,可以使用工具调用。

2025-11-06 14:46:13 339

原创 langchain基础教程(2)---langchain的核心组件

context_schema 用于定义 跨节点共享的运行时上下文结构,确保代理的不同节点(如模型调用节点、工具调用节点、中间件钩子等)能安全、一致地访问和修改全局共享信息(如用户会话 ID、权限标识、全局配置等)。智能体遵循 ReAct(“推理 + 行动”)模式,在简短的推理步骤与针对性的工具调用之间交替,并将结果观察反馈到后续决策中,直到能够提供最终。持久化代理的单线程执行状态(如对话历史、工具调用记录、中间结果等),以便在会话中断(如服务重启、网络中断)后,能恢复到之前的状态继续交互。

2025-11-05 18:57:15 1056

原创 langchain基础教程(1)--快速搭建一个简单的应用(基于BaseChatModel自定义chatModel)

参考: https://langchain-doc.cn/v1/python/langchain/quickstart.html。

2025-11-04 19:11:06 219

java与蓝牙模块实现通信.rar

java与蓝牙模块实现通信 下载的别人的,下次自己用的时候方便找 https://download.csdn.net/download/heqinghua217/10760762

2019-05-16

Python3.75免安装包

python安装后的解压包,用于无权限安装软件的电脑,python3.7.5 x64

2020-04-09

springboot入门(全局 异常拦截)

springboot入门 全局 异常拦截 学习代码

2019-03-01

aliyunIotDemo.rar

阿里云iot平台简单的设备端和服务端通讯

2019-05-15

IP摄像头_28.1.6_278_.apk

安卓版ip摄像头用于视频流测试(安卓市场可搜)

2021-09-03

java调用C++dll

公司的大神不知道从哪旮旯里找到了非通用的算法(C语言),常规算法都对不上,但数据要通讯,项目要做呀,我有点qt基础,也仅仅是有点。他的算法是C写的,将他的算法改写成java,我有困难,就将他的代码打成dll,放到java中调用好了。

2018-11-16

springCloud学习代码(真正用的时候方便找)

springCloud学习代码,下次用时候方便找 eureka 注册中心, eureka集群, 熔断器(Hystix),网关(Zuul)

2019-04-28

springboot学习源码

学习spring的源码与配置文件 配合 https://blog.csdn.net/xy323博客学习

2019-03-03

SpringBoot集成 mybatis +MP +thymleaf

SpringBoot集成 mybatis +MP +thymleaf 自己用的学习代码

2019-03-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除