- 博客(58)
- 收藏
- 关注

原创 PyTorch 笔记
PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由C++实现,应用于人工智能领域,如计算机视觉和自然语言处理。PyTorch 最初由 Meta Platforms 的人工智能研究团队开发,现在属 于Linux 基金会的一部分。PyTorch 特性:动态计算图: PyTorch 的计算图是动态的,在执行时构建计算图,这意味着在每次计算时,图都会根据输入数据的形状自动变化。这为实验和调试提供了极大的灵活性,因为开发者可以逐行执行代码,查看中间结果。张量计算。
2025-04-07 18:00:31
1255
3

原创 MQ 笔记
在消息队列(MQ,Message Queue)系统中,消息积压是指消息生产者发送消息的速度超过了消息消费者处理消息的速度,导致消息在队列中堆积,无法及时被消费和处理。死信队列(Dead Letter Queue,DLQ)是消息队列(MQ)系统中的一种特殊队列,用于存储无法被正常消费或处理的消息。当消息在队列中因某些原因无法被成功消费时,系统会将这些消息转移到死信队列中,以便后续进行特殊处理或分析。死信队列的作用防止消息丢失将无法处理的消息保存到死信队列中,避免消息丢失,便于后续排查和处理。隔离异常消息。
2025-02-27 10:40:18
551

原创 MongoDB 笔记
{ name: “Alice”, age: 25 } 表示一个文档insertOne()索引数据通过 B 树来存储,所有节点都有 Data 域,只要找到指定索引就可以进行访问,为多个字段创建复合索引,可以指定每个字段的排序方式。单次查询从结构上来看要快于MySql(B+ 树)。JavaScript代码(JavaScript)支持自动删除过期的文档,可以创建 TTL 索引。确保字段的值唯一,可以创建唯一索引。为单个字段创建索引,可以是升序(支持全文搜索,可以创建文本索引。方法删除指定的索引。
2025-02-25 20:06:59
965

原创 Python 笔记
Python 常见面试题线程:操作系统能够进行运算调度的最小单位。 它包含在进程之中,是进程的实际运作单位。 一条线程指的是进程中一个单一顺序的控制流, 一个进程中可以并发多个线程,每一条线程并行执行不同的任务。进程:对一堆资源的整合。 比如说QQ就是一个进程。目的:最大限度的利用CPU,节省时间。从操作系统角度来讲,进程是资源分配单元,线程是执行单元,多个线程可以共享所在进程的资源。协程:从程序运行角度出发,是由用户(程序)控制和调度的一个过程。多线程并不会充
2021-07-01 15:43:30
2817
1

原创 MySQL 笔记
MySQL第一层是服务器层,主要提供连接处理、授权认证、安全等功能。第二层实现了 MySQL 核心服务功能,包括查询解析、分析、优化、缓存以及日期和时间等内置函数。第三层是存储引擎层,负责数据的存储和提取。服务器通过 API 与存储引擎通信,这些接口屏蔽了不同存储引擎的差异。除了会解析外键定义的 InnoDB 外,存储引擎不会解析 SQL,不同存储引擎之间也不会相互通信,只是简单响应服务器请求。1.2 mysql中的引擎InnoDB、MyISAM 、BDB(BerkeleyDB
2021-07-01 15:37:36
1635
1

原创 goGin框架教程
1.gin框架入门1.1 介绍Gin 是一个用 Golang编写的 高性能的web 框架, 由于http路由的优化,速度提高了近 40 倍。 Gin的特点就是封装优雅、API友好。Gin的一些特性:快速基于 Radix 树的路由,小内存占用。没有反射。可预测的 API 性能。支持中间件传入的 HTTP 请求可以由一系列中间件和最终操作来处理。 例如:Logger,Authorization,GZIP,最终操作 DB。Crash 处理Gin 可以 catch 一个发生在 HTTP 请求中的
2021-06-04 17:01:24
5675
1

原创 常见排序算法
一.冒泡排序基本思路:对无序表进行多趟比较交换。每趟包括多次两两相邻比较,并将逆序的数据项互换位置,最终将本趟的最大项就位。经过n-1趟比较排序,实现整表排序。实现过程:第1趟比较交换,共有n-1对相邻数据进行比较。(一旦经过最大项,则最大项会一路交换到达最后一项)。第2趟比较交换,共有n-2对相邻数据进行比较。第二大的项会一路交换到倒数第二项。…直到第n-1趟完成后,最小项一定在列表首位,就不需要处理了。def bubbleSort(alsit):
2020-07-30 22:16:10
163

原创 Django 笔记
1. 什么是 uWSGI(web服务器), WSGI(通信协议), uwsgi(线路协议) ?uWSGI: 是一个Web服务器,它实现了WSGI协议、uwsgi、http等协议。WSGI: 全称 Web Server Gateway Interface,是为 Python 语言定义的 Web 服务器和 Web 应用程序或框架之间的一种通信协议。uwsgi: 是一个uWSGI服务器自有的线路协...
2019-08-12 12:21:47
447
1

原创 python总结(全面讲解)
从编码开始:ASCII(American Standard Code for Information Interchange:美国信息交换标准代码)ASCII表中每一个字符都需要8个bit来存储字符编码支持中文的第一张表叫做 GB2312ASCII编码的发展:ASCII 只能存储英文和拉丁字符,一个字符占一个字节1980年 GB2312 有 6700+ 字符1995年 GB...
2019-07-01 18:09:24
5905
10
原创 内存泄露排查 笔记
避免不必要的全局状态使用上下文管理器管理资源对缓存实现大小限制注意循环引用,必要时使用弱引用确保第三方库正确释放资源定期检查长期运行服务的内存使用情况在测试阶段进行内存泄漏检测通过了解这些常见的内存泄漏场景和解决方案,可以显著减少 Python 应用中的内存问题。
2025-04-17 16:40:33
578
原创 AI Agent 开发与传统后端开发区别?
AI Agent 开发与传统后端开发在目标、技术栈、设计模式和协作流程上存在显著差异。:Function Calling、API 编排(如AutoGPT):在现有系统中嵌入Agent能力(如用LLM增强客服系统)。:LLM(GPT-4/Claude)、强化学习(RLHF):向量数据库(Redis/Pinecone)、上下文管理。:Python(主导)、Rust(高性能Agent)• LangChain(Agent流程编排)• AutoGen(多Agent协作):多模态输入(文本/图像/语音)
2025-03-28 12:45:40
996
原创 MySQL、MariaDB 和 TDSQL 的区别
类型:关系型数据库管理系统(RDBMS)。开发者:最初由 MySQL AB 开发,后被 Sun Microsystems 收购,最终被 Oracle Corporation 收购。开源:MySQL 是一个开源项目,提供了社区版和商业版。使用场景:广泛用于 Web 应用、内容管理系统(如 WordPress)、电子商务平台等。类型:分布式关系型数据库管理系统。开发者:由腾讯云开发,主要用于云计算环境。使用场景:适用于需要高可用性、高并发和大规模数据处理的应用场景,如金融、电商、社交网络等。
2025-02-13 10:08:37
1110
原创 数据包的发送流程
一个数据包,从聊天框里发出,消息会从聊天软件所在的用户空间拷贝到内核空间的发送缓冲区(send buffer),数据包就这样顺着传输层、网络层,进入到数据链路层,在这里数据包会经过流控(qdisc),再通过RingBuffer发到物理层的网卡。数据就这样顺着网卡发到了纷繁复杂的网络世界里。这里头数据会经过 n 多个路由器和交换机之间的跳转,最后到达目的机器的网卡处。但为了简化模型,我们把中间的服务器给省略掉,假设这是个端到端的通信。首先,我们两个手机的绿皮聊天软件客户端,要通信,中间会通过它们家服务器。
2025-01-24 15:27:47
370
原创 为什么大部分人的 IP 地址都是以 192.168 开头?
由于 IPv4 地址有限(2^32 约等于 42 亿),为了有效利用这些有限的地址,将网络分为局域网和广域网,将 IP 分为私有 IP 和 公有 IP。一个局域网中的 N 台机器可以共用一个广域网 IP ,从而可以达到乘法效果,极大增加可用 IP 数量。大部分人的 IP 地址以 192.168 开头,主要是因为 192.168.0.0/16 是一个被保留的私有 IP 地址范围。私有 IP 地址是指在局域网(LAN)中使用的地址,这些地址不会在互联网上路由。
2025-01-24 11:28:13
468
原创 Vue开发
这个错误提示表明在使用 npm 安装依赖时遇到了证书过期的问题。这可能是由于 npm 使用的证书过期导致的。是一种新的语法糖,用于简化组件的编写。它使得组件的逻辑更加清晰,并且减少了样板代码。是否使用 history 模式的路由,按需选 Y 或者 n。选择安装 Router、Vuex 插件。按照自己的需求模块进行安装。是否记住上面的选择项:否。选择 Vue3 版本。后面的选项都默认即可。在 Vue 3 中,
2024-10-25 16:03:01
585
原创 Mac 创建 Python 虚拟环境
创建和管理虚拟环境了。记得在使用虚拟环境时,始终激活虚拟环境,以便使用其中的包和配置。您可以使用 Homebrew 或者直接从 Python 官方网站下载安装。在虚拟环境中运行的 Python 解释器将使用虚拟环境的包和配置。激活后,您将在终端提示符前看到虚拟环境的名称(例如。在 macOS 上,您可以使用以下步骤使用。在激活的虚拟环境中安装和使用包。这将恢复到系统的默认 Python 解释器。这样,您就可以在 macOS 上使用。然后,使用以下命令安装。替换为您喜欢的任何名称。首先,确保您已经安装了。
2024-09-13 10:32:37
933
原创 构建本地大语言模型知识库问答系统
Ollama 是一个基于 Go 语言开发的简单易用的本地大语言模型运行框架。官方提供了类似 GitHub,DockerHub 一般的,可类比理解为 ModelHub,用于存放大语言模型的仓库(有 llama 2,mistral,qwen 等模型,同时你也可以自定义模型上传到仓库里来给别人使用)。除了基于 OpenAI、百度千帆大模型等在线大模型快速搭建知识库问答系统外,MaxKB 还支持与以 Ollama 为代表的本地私有大模型相结合,快速部署本地的知识库问答系统。,快速安装 MaxKB 应用。
2024-04-28 16:39:40
2640
原创 常见排序算法(Python)
参数 key 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。优点: 效率低,每个数据项在找到最终的位置之前,必须要经过多次的比较和交换,其中大部分的操作是无效的。第二趟,将第3个数据项和前两个数据项比较,并移动比自身大的数据项,空出位置来,以便加入到子列表中。插入排序的比对次数在最好的情况下是O(n),实际上,列表越接近有序,插入排序的比对次数就越少。第一趟,子列表仅包含第1个数据项,将第2个数据项作为新项插入到子列表的合适的位置中。
2021-07-01 16:00:25
365
原创 网络安全分类
网络安全等级保护2.0安全分类:网络安全:防火墙 / 网闸入侵检测、防御VPN网关 / 身份认证 / 流量审计Web安全前端安全XSS后端安全文件上传、解析 / WebShell数据安全SQL注入同行安全HTTP / HTTPS移动安全IOS安全安卓安全小程序安全云计算安全平台安全容器安全虚拟机安全云主机安全云网络安全桌面(系统、主机、终端)安全Windows安全Linux安全MacOS安全其他安全领域
2021-06-04 17:06:28
1102
1
原创 go模板引擎
Go语言内置了 text/template 和 html/template 两个模板库,专门用于处理网页html模板。html/template 是在 text/template 模板库的基础上增加了对html输出的安全处理,主要目的是为了防止被攻击。下面通过一个例子介绍template的用法。模版引擎使用流程:编写模版代码导入包加载模版代码根据模版参数渲染模版1. 快速入门1.1 编写模版代码将下面模版代码保存至 views/demo.tpl 文件中, 文件后缀名随意。{{d
2021-06-04 17:03:53
2001
原创 go学习笔记
1. 变量声明单个变量func main() { // 1. 指定变量类型,若不赋值,则默认值。(int => 0) var a int a = 10 fmt.Println("a =",a) // var a int = 10 声明变量并初始化 // 2. 类型推导,系统自动推导变量类型 var b = 10 fmt.Println("b =",b) // 3. 省略var, 用 : 替代 c := 10
2021-04-25 14:21:56
851
原创 Nginx
Nginx优点:跨平台,配置简单非阻塞,高并发连接(最高5W)内存消耗小开源稳定性高基本命令:启动 nginx.exe停止 nginx -s stop 或者 nginx -s quit重载配置 nginx -s reload查看版本 nginx -V当访问192.168.0.1时出现“welcome to openresty”。如果想显示为“hello word”,则需要修改配置文件nginx.conf:location / { # root html; # index
2020-11-08 21:48:24
256
1
原创 博物馆大盗问题 Python
博物馆大盗问题问题:大盗潜入博物馆,面前有5件宝物,分别有重量w和价值v,大盗的背包仅能负重20 kg,请问如何选择宝物,总价值最高?ItemWeightValue1232343484585910思路:把 m(i, w) 记为:前 i 个宝物中,组合不超过 w 重量,得到的最大价值。本题中,从m(1, 1)计算至m(5, 20)动态规划代码:tr = [ None, {'w': 2, 'v': 3},
2020-08-04 20:03:53
1039
1
原创 散列
基本概念:散列表(hash table, 又称哈希表)是一种数据集,其中数据项的存储方式尤其有利于将来快速的查找定位。散列表中的每一个存储位置,称为槽(slot),可以用来保存数据项,每个槽有一个唯一的名称。(用key标识槽,槽中放数据value)例如:一个包含11个槽的散列表,槽的名称分别是0~10,在插入数据项之前,每个槽的值都是None,表示空槽。实现从数据项到存储槽名称转换的,称为散列函数(hash function)给定一组数据项,如果一个散列函数能够把每个数据项映射到不同的槽中,那么这
2020-07-30 22:14:28
236
原创 Elasticsearch_dsl基本用法
1.连接esfrom elasticsearch import Elasticsearchfrom elasticsearch_dsl import Search,Q# 连接eses = Elasticsearch(hosts="127.0.0.1:9200")# 创建实例s = Search(using=es)2.创建索引数据index_body = { "price" : 30000, "color" : "green", "make" : "ford", "sold" : "201
2020-06-01 11:51:52
2511
原创 关于正则表达式的简单记忆
一.限定符字符描述*匹配前面的子表达式零次或多次。* 等价于{0,}。+匹配前面的子表达式一次或多次。+ 等价于 {1,}。?匹配前面的子表达式零次或一次。? 等价于 {0,1}。 例如,do(es)? 可以匹配 do 、 does 中的 does 、
2020-05-24 17:08:08
417
1
原创 ElasticSearch学习笔记
一.ES核心概念elasticsearch 是面向文档的,一切都是 JsonES关系型数据库的对比记忆:ElasticSearch关系型数据库索引(indices)数据库(database)类型(types)表(tables)文档(documents)行(rows)字段(fields)列(columns)elasticsearch(集群)中可以包含多个索引(数据库),每个索引中包含多个类型(表),每个类型中包含多个文档(行),每个文档中包含多个字
2020-05-22 22:59:21
1783
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人