- 博客(49)
- 收藏
- 关注
原创 大模型学习·第40天:LangChain框架入门——从RAG原理到模型调用的统一接口
LangChain:LLM应用开发框架,把模型、提示词、记忆、检索等组件“链接”在一起RAG = 检索 + LLM提示:解决大模型知识滞后和幻觉问题,三步走:索引→检索→生成向量是文本的数学身份证:把语义转成数字序列,用余弦相似度做语义匹配三类模型API:LLMs(文本生成)、聊天模型(对话)、嵌入模型(文本向量化):提示词模板化,支持变量注入和链式调用。
2026-07-28 22:05:11
200
原创 Python学习笔记·第39天:提示词工程——更好提问的五大技巧与JSON数据格式
提示词工程(Prompt Engineering)是指不修改模型权重,通过优化输入的指令来引导大模型输出期望结果的方法。一句话:提示词工程就是“更好地向大模型提问的技巧”。大模型本身结构简单:用户输入 → 模型输出。用更详细、更清晰、有逻辑、有参考的提问,就能获得更好的回答。任何Prompt技巧都不如清晰表达你的需求——如果话说不明白,不可能让别人理解你的思想。提示词工程:不修改模型,通过优化提问获得更好输出五大技巧:详细描述、设定角色、分隔符、指定步骤、提供例子降低幻觉。
2026-07-27 21:17:44
223
原创 Python学习笔记·第38天:LLM应用——用Python调用云端与本地大模型
调用大模型 = 创建客户端 → 选模型 → 发消息 → 处理结果换服务商只需改base_url,代码其他部分不变API-KEY 用环境变量保护,不要写在代码里Ollama 可本地运行模型,改base_url为即可messages支持三种角色:system(设定规则)、user(提问)、assistant(回答)开启流式输出,历史消息填入messages实现上下文记忆。
2026-07-24 20:21:49
184
原创 Python学习笔记·第37天:Streamlit入门——用Python直接写网页
一个纯 Python 库,能把 Python 脚本直接变成网页应用。不需要学 HTML/CSS/JavaScript,写 Python 就能做出网页界面。和 FastAPI 的区别:FastAPI 构建 API 接口返回 JSON 数据,给前后端分离项目用;Streamlit 构建网页应用展示数据和交互界面,给数据分析师、算法工程师快速展示成果用。
2026-07-23 19:39:49
194
原创 Python学习笔记·第36天:SQL收尾——多表查询、JOIN与子查询全掌握
多表关系:一对多(外键)、多对多(中间表)、一对一(外键+UNIQUE)内连接,查交集外连接LEFT JOIN左表全查,RIGHT JOIN右表全查自连接:同一张表用别名连自己联合查询UNION去重合并,UNION ALL不去重子查询四类:标量(单个值)、列(多行)、行(多列)、表(多行多列)
2026-07-21 20:20:54
190
原创 Python学习笔记·第35天:SQL入门——DQL数据查询语言全掌握
DQL完整语法条件查询=、>、<、!,组合用AND/OR聚合函数,NULL不参与分组WHERE分组前过滤,HAVING分组后过滤排序ASC升序默认,DESC降序分页LIMIT 起始索引, 条数,起始索引 = (页码-1) × 每页条数。
2026-07-20 20:03:36
229
原创 Python学习笔记·第34天:FastAPI+ORM——增删改查完整操作
操作核心步骤关键代码查select()→execute()→ 取结果select(Book).where(条件)增创建对象 →add()→commit()改查询 → 重新赋值 →commit()删查询 →delete()→commit()查询类型关键代码条件查询模糊查询.where(Book.author.like("曹%"))组合条件.where((条件1) & (条件2))包含查询聚合查询分页查询。
2026-07-16 21:08:21
255
原创 Python学习笔记·第33天:FastAPI+SQLAlchemy ORM——用操作对象的方式操作数据库
一句话:ORM就是把数据库的表映射成Python的类,把表中的行映射成Python的对象。操作对象就等于操作数据库,不用写SQL语句。传统方式ORM方式手动拼SQL,容易写错用Python语法,自动校验基类create_time: Mapped[datetime] = mapped_column(DateTime, insert_default=func.now(), default=func.now(), comment="创建时间")
2026-07-15 20:35:27
561
原创 Python学习笔记·第32天:FastAPI进阶——响应类型、中间件与依赖注入
一句话:用Pydantic模型定义返回数据的结构,自动校验和过滤。既保证数据格式正确,又保护敏感信息不被泄露。id: inttitle: strreturn {"id": id, "title": f"这是第id本书", "content": "这是一本好书"}响应类型:默认JSON,也可返回HTML、文件、纯文本等。:用Pydantic定义返回数据格式,自动校验和过滤。异常处理HTTPException(status_code=404, detail="不存在")主动抛出错误。中间件。
2026-07-14 20:33:52
215
原创 Python学习笔记·第31天:FastAPI入门——路由、路径参数、查询参数与请求体
一句话:FastAPI是一个Python Web框架,能把你的Python函数变成网络接口,让别人通过浏览器或代码调用。特性作用大白话高性能天生支持异步速度快,不卡顿类型提示与验证自动校验参数类型传错类型直接报错,不用手动写校验可交互式文档自动生成API文档页面浏览器里直接看到所有接口,还能在线测试FastAPI是什么:高性能Python Web框架,能把Python函数变成网络接口。路由 = 网址 + 处理函数:用@app.get("/路径")装饰器声明。三种参数路径参数。
2026-07-13 20:25:10
233
原创 Python学习笔记·第30天:Git收尾——远程仓库、SSH免密与多人协作
远程三件套push(推上去)、pull(拉下来)、clone(复制过来)SSH免密:配置一次,以后不用输密码远程冲突:解决方式和本地分支冲突一样 → 手动改 →add→commit→pushGit学习完成:你已掌握日常开发 90% 会用到的 Git 命令。
2026-07-09 20:04:38
210
原创 Python学习笔记·第29天:Git进阶——分支操作与合并冲突
一句话:分支就是你的“平行宇宙”。在不影响主线的情况下,你可以在自己的分支上自由修改、开发新功能,改好了再合并回去。生活比喻:你在写一篇文章,突然想尝试另一种写作风格,但又不想把原稿改乱。于是你复制一份副本,在副本上改。改好了再决定要不要替换原稿。这个副本就是“分支”。分支 = 平行宇宙:在自己的分支上随便改,不影响主线核心命令git branch→ 查看分支git checkout -b 分支名→ 创建并切换分支(最常用)git merge 分支名→ 合并分支git branch -d 分支名。
2026-07-08 20:04:59
273
原创 Python学习笔记·第28天:Git入门——版本控制与基础操作
Git是分布式版本控制工具:每台电脑都有完整仓库,断网也能提交三步上篮add→commit→push时光倒流回到任意历史版本查日志git-log看提交历史,git reflog看所有操作记录忽略文件.gitignore排除不需要版本控制的文件。
2026-07-07 20:44:10
332
原创 从零到一:我的第一个Python完整项目——智能设备巡检管理系统
从第一行代码到项目跑通,最大的收获不是学会了某个技术点,而是从零设计一个完整系统的能力——怎么拆分模块、怎么命名、怎么迭代优化。一个命令行版的设备巡检管理系统,用于工厂或物业场景。私有属性 __purchase_price 传参时和名称改写机制冲突,学会了参数名和私有属性名要分开。InspectionRecord 的参数名从 result 改成 status,整个项目统一了命名。装饰器:操作日志系统,自动记录每次操作的时间和函数名。生成器:批量生成模拟设备数据,惰性加载节省内存。开发过程印象最深的坑。
2026-07-05 12:18:01
215
原创 Python学习笔记·第27天:Matplotlib高级——雷达图、三维图与图例样式详解
雷达图:用画,数据要首尾闭合。把弧度转角度。三维图:先导入Axes3D,用声明。plot()画曲线,画曲面。子图切分= 2行4列第1个。polar=True画极坐标图。图例样式loc定位,facecolor背景色,ncol分栏,控制符号和文字的顺序。
2026-07-03 20:40:02
444
原创 Python学习笔记·第26天:Matplotlib实战——折线图、散点图与饼状图详解
一句话:Matplotlib就是Python里的“画图工具”,能把枯燥的数据变成折线图、散点图、饼状图。比喻:Pandas是帮你在Excel里整理数据的,Matplotlib是帮你在Excel里插入图表的。折线图plt.plot():看趋势变化。'r-.v'可以一行指定颜色、线型、标记。散点图:看数据分布和强弱。s控制大小,c控制颜色,marker控制形状。饼状图plt.pie():看占比。labels标名字,autopct标百分比。标注最值:在图上加文字和箭头。子图:一张画布上画多个图,用。
2026-07-01 20:02:26
243
原创 Pandas学习笔记·精简速查版:用人话总结Series、DataFrame和数据处理核心操作
注:已经使用DeepSeek进行整理精简核心内容,些许不理解的配合个人笔记进行理解。:Pandas 就是 Python 里的 Excel,专门用来处理表格数据。越小越稳定,越大越像过山车。:看两组数据是同步变化还是反向变化。:把数据按行列重新排列,自动汇总。:专门统计频次的透视表。
2026-06-30 20:07:55
259
原创 Python学习笔记·第25天:Pandas高级技巧——用最通俗的话讲懂重采样、多索引和数据合并
知识点一句话什么时候用重采样把数据从细变粗想把每天的数据汇总成每周/每月多索引给数据加多层标签想按多个维度精确定位数据标准差看数据稳不稳定想比较两组数据的波动程度协方差看两组数据是不是同步想分析两只股票/两个指标的关系dt接口自动处理日期想把日期转成周几、第几季度str接口自动处理文字想提取、判断、替换字符串concat表格上下堆叠多张结构相同的表合并merge表格左右关联两张有关联的表按某列合并。
2026-06-30 20:01:23
312
原创 Python学习笔记·第24天:Pandas数据清洗——缺失值、重复值与透视表实战
异常值处理套路筛选 → loc定位 → 替换缺失值处理三方法:固定值填充、分组均值填充、整体均值填充。dropna()丢弃,fillna()填充。重复值处理查重复,删重复。数据差分diff()看变化量,逐行相减。透视表按行列聚合数据,支持求和、计数、平均。显示汇总。交叉表crosstab()统计频次和聚合,比透视表更简洁。注:已经使用DeepSeek进行整理精简核心内容,些许不理解的配合个人笔记进行理解。
2026-06-29 20:10:42
177
原创 Python学习笔记·第23天:Pandas进阶——数据统计、排序与分组聚合实战
大白话:就是Excel的“分类汇总”。把数据按某个类别分成几组(比如按员工姓名分组),然后对每组分别计算(求和、求平均、计数等)。三步理解分组:按谁分?by='姓名'取列:对哪列算?['交易额']聚合:怎么算?.sum().mean().count()统计查看三件套describe():一键看全部统计指标quantile():看数据的分布(四分位数):找最值在哪一行排序sort_values(by='列名'):按数据大小排:按行标签或列名排多列排序可以指定不同的升序降序分组聚合(工作核心)
2026-06-27 20:07:44
385
原创 Python学习笔记·第22天:Pandas实战——读取Excel、筛选数据与统计分析
读取Excel,常用参数usecols(选列)、skiprows(跳行)、index_col(索引列)。三种索引方式iloc:用数字位置(像Excel的A1、B2)loc:用标签名称(像Excel的列名)at:快速取单个值条件筛选套路df[df['列名'] > 值]df[(条件1) & (条件2)]df[df['列名'].isin([值1, 值2])]df[df['列名'].between(最小值, 最大值)]统计计算套路筛选 → 取列 → 计算,如df[条件]['列名'].sum()
2026-06-26 20:35:54
249
原创 Python学习笔记·第21天:跟董付国老师学Pandas——像操作Excel一样处理数据
Pandas三大数据结构Series:带标签的一维数组(像一列数据)时间序列:以日期时间为索引的SeriesDataFrame:带标签的二维表格(像Excel表格)Series核心操作支持NumPy的所有数学运算(逐元素运算)支持布尔索引条件筛选pipe()链式处理,apply()逐元素处理两个Series运算时,只计算共同索引对应的值时间序列生成连续日期时间resample()重新采样,按新时间间隔统计ohlc()像股票数据一样统计开高低收DataFrame创建。
2026-06-24 20:43:48
241
原创 Python学习笔记·NumPy篇:数组、矩阵与线性代数——零数学基础也能看懂的白话讲解
大白话:NumPy是Python的“科学计算器”。Python的列表只能一个一个处理数据,NumPy的数组可以一次性对所有数据做数学运算,而且速度飞快。天数核心内容一句话概括第1天(6.18)数组创建、运算、筛选、形状变换把列表变成能快速计算的数组,还能随便变形和筛选第2天(6.22)函数运算、布尔筛选、分段函数一次性对所有数据做数学运算,按条件分类处理第3天(6.23)矩阵运算、统计、线性代数用矩阵处理数字表格,计算统计指标,解方程最重要的心态你不需要推导公式。
2026-06-23 20:08:53
372
原创 Python学习笔记·第20天:NumPy线性代数——矩阵运算、特征值与方程组求解
矩阵 vs 数组:矩阵只能是二维且只能包含数字;数组可以多维,可以包含多种数据类型。核心统计操作axis=0纵向,axis=1横向mean()sum()max()argmax()必须掌握相关系数矩阵判断两个变量变化趋势是否一致。方差/协方差/标准差np.cov()协方差,np.std()标准差垂直堆叠数组线性代数核心。
2026-06-23 20:07:48
329
原创 AI Agent入门血泪史:从“AI真厉害”到“还我100块”,我踩的坑和学到的经验
Agent 没有“记忆”:你说的很多话、之前让它做的事情,超出上下文窗口就全忘了。一定要把重要信息写进文档里,让它每次都能读到。MCP 需要配合规则使用:别光装工具,要告诉它什么场景下该调用哪个工具,不然它会乱来。Skill 是灵魂:不同的开发任务需要不同的 Skill 指导,这决定了 Agent 是“能干活”还是“瞎捣乱”。开发文档是命根子:这是我体会最深的一点。尤其是数据源、接口逻辑这类关键需求,不给他规定好,不让他读到上文的进度,有时候他也会发神经乱写——比如你要实时数据,它偷偷给你读本地缓存。
2026-06-22 19:59:35
198
原创 Python学习笔记·第19天:NumPy进阶——布尔筛选、形状变换与分段函数
函数运算np.sin(x)对整个数组逐元素运算,无需写循环。形状变换三方法shape属性原地修改reshape()返回新数组(不改变元素总数)resize()可改变元素总数(多出填0)布尔运算核心x[x > 0.5]是NumPy中筛选数据最常用的方式组合条件用和,每个条件必须加括号np.all()全真才真,np.any()一真则真分段函数np.where()适合二分类适合多分类,未覆盖的条件自动归零。
2026-06-22 19:43:14
172
原创 Python学习笔记·第18天:进入数据分析大门——NumPy核心基础
数组创建np.array()是最核心的转换方式,掌握arangelinspacezeros/onesrandom等快捷生成函数。运算原则数组与常量:逐元素运算,注意“数组在前”和“常量在前”的结果差异数组与数组:等长直接算,不等长则广播(能广播则算,不能就报错)排序诀窍argsort()返回的是下标数组,不是排序后的值返回最大/最小值的下标sort()是原地排序,会改变原数组访问与修改修改数组有“返回新数组”和“原地修改”两种方式,注意区分花式索引(列表索引)可以同时取多个任意位置的元素。
2026-06-18 21:18:44
223
原创 Python学习笔记·第18天——Python 基础合集
变量是存储数据的“容器”,值可以随时修改。Python 无需声明类型,直接用赋值。age = 18name = "小明""""返回两数之和"""__name__:判断模块是被执行还是被导入__all__:控制from 模块 import *的导出内容。
2026-06-18 21:10:35
203
原创 Python学习笔记·第17天:让数据“落地生根”——文件操作与数据持久化
文件写入三步骤open()→write()→close()推荐使用with语句:自动管理文件关闭,防止资源泄漏中文编码:写入中文时指定三种读取方法read()(全部/指定字符)、readline()(一行)、(列表)二进制模式:处理图片/视频时加b,如rbwbpickle序列化:将Python对象存入文件,读取时恢复为对象CSV操作读取,写入,注意Windows加newline=""OS模块:调用系统命令、管理文件和目录、获取系统信息。
2026-06-17 20:21:57
208
原创 Python学习笔记·第16天:让程序不再崩溃——异常处理与模块化编程
异常就是程序运行过程中遇到的错误情况。比如:除数为0、文件不存在、内存不足等。Python通过异常类来描述和处理这些异常。处理过程抛出异常:发生异常时,生成一个异常对象,停止当前执行路径捕获异常:解释器寻找相应的代码来处理该异常# 最常见的异常:除数不能为0自定义异常通常继承Exception类,命名以Error为后缀,由raise语句主动抛出。# 自定义异常类class AgeError(Exception): # 继承Exception。
2026-06-16 21:29:18
187
原创 从0开始转入Ai应用层,从python学起第十四天
闭包 = 内层函数 + 外层变量的"快照"三个条件:嵌套函数 + 内层引用外层变量 + 外层返回内层函数核心价值:状态保留、数据封装、减少全局变量修改外层变量需用nonlocal声明返回内层函数时不要加括号(返回函数对象而非执行结果)装饰器 = 函数的函数接收函数作为参数,返回新函数@装饰器名是语法糖,等价于函数 = 装饰器(函数)不修改原函数代码,动态添加功能类装饰器用__init__接收函数,用__call__让实例可调用__call__中必须调用并返回结果。
2026-06-15 20:00:55
192
原创 从0开始转入Ai应用层,从python学起第十三天
迭代器是一种设计模式,能够顺序访问集合中的元素,无需暴露集合的内部结构。通俗理解:迭代器是一个"指哪打哪"的智能指针,你只需要告诉它"给我下一个元素",它就会按顺序返回。核心协议__iter__():返回迭代器对象本身__next__():返回下一个元素,没有更多元素时抛出异常迭代器实现了__iter__()和__next__()方法的对象用iter()将可迭代对象转为迭代器用next()逐个获取元素,取完抛出惰性计算,节省内存,自动记住遍历位置可迭代对象 vs 迭代器可迭代对象:有。
2026-06-12 20:56:35
244
原创 个人碎碎念
经过这十几天的学习,对Python的基础有了大概的了解,发现Python这门语言的基础相对C/C++的难度降低了不少,很多之前学习C++不太理解的地方,学了Python后,有些也会了,突然想来一句,读书百遍其意自现,确实是这样,而且今天也刷到了马列思想,我自身呢,没有上到过高中,直接进入的职校,职校并没有交过马列主义思想,今天刷到了完全就是很新奇的大门,然后在职校开始提升的学历,当时接触过C51单片机,就从那时让我对计算机语言产生了很大的兴趣,但是当时没有出来Ai这些软件,我就在网上找到了一家培训机构,然后
2026-06-11 20:33:37
26
原创 从0开始转入Ai应用层,从python学起第十二天
多继承子类可继承多个父类,继承顺序决定MRO优先级菱形问题用MRO解决,用mro()查看顺序super()按MRO顺序调用下一个类的方法优先用组合替代多继承方法重写子类覆盖父类同名方法,实现个性化逻辑重写__init__必须调用用super().方法名()复用父类逻辑私有属性与方法__属性名:私有属性,外部不可直接访问(名称改编)__方法名:私有方法,只能在类内部调用Python通过“约定”而非强制实现私有专有方法(魔术方法)__xxx__格式,Python自动触发。
2026-06-11 20:24:48
570
原创 从0开始转入Ai应用层,从python学起第十一天
继承是OOP三大核心特性之一(封装、继承、多态)。简单来说,继承允许你基于一个已有的“父类(基类)”创建新的“子类(派生类)”,子类会自动拥有父类的属性和方法,还能扩展或重写自己的特性。核心价值是代码复用和逻辑分层。# 定义父类(基类)class 父类名:def 父类方法(self):pass# 定义子类(派生类),继承父类class 子类名(父类名):def 子类方法(self):pass三大方法类型实例方法(self):操作实例属性,通过对象调用。
2026-06-10 19:25:26
341
原创 个人碎碎念
今天在招聘软件上找了找工作,看了看,现在又有点焦虑了,因为个人的文凭只有专科,Ai应用岗位有好多有学历限制啊,而且加上很多有要项目经验的,个人在想要不要转入到Ai训练师行业,但是不知道怎么入门,看好多都是说先入数据标准岗位,有没有哪位前辈能推荐一下万分感谢
2026-06-09 21:14:17
204
原创 从0开始转入Ai应用层,从python学起第十天
最简单定义class 类名 : pass完整示例(使用构造方法__init__# 构造方法,创建对象时自动执行self.name = name # 实例属性# 实例方法class User : # 构造方法,创建对象时自动执行 def __init__(self , name , age , sex) : self . name = name # 实例属性 self . age = ageself . sex = sex # 实例方法 def show(self) : print(f"我叫: {
2026-06-09 21:11:42
430
原创 从0开始转入Ai应用层,从python学起第九天
函数:组织好的、可重复使用的代码段,能提高代码复用率和可读性。用def关键字定义,通过函数名调用。深浅拷贝直接赋值:共享同一内存,改一个全变。浅拷贝:只复制外层,嵌套可变对象仍共享。深拷贝:完全独立,互不影响。选择原则:无嵌套用浅拷贝,有嵌套且需独立用深拷贝。函数核心:用def定义,通过函数名调用,return返回结果(无则返回None参数类型(重点)位置参数:必须按顺序传递。默认参数:有默认值,可省略,必须放在位置参数后面。关键字参数:通过参数名=值传参,顺序可任意。*args。
2026-06-08 19:54:05
290
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅