自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

weixin_34452850的博客

道阻且长,行则将至

  • 博客(133)
  • 收藏
  • 关注

原创 多模态(1)—— OpenAI 多模态入门

本篇文章中,我们介绍了当下在大模型领域非常火爆的多模态功能,并以 OpenAI 的相关模型为例,具体讲解了如何实现文生图、图片理解和文本转语音等功能。

2025-03-17 16:03:37 670 1

原创 大模型微调实战(2):调用本地模型

在本篇文章中,我们继续以 `uer/gpt2-chinese-cluecorpussmall` 这个模型为例,演示了如何从 Hugging Face上将模型下载到本地,并且在本地进行调用。这才是目前大模型应用中更常用的开发范式,希望大家都能够了解。

2025-03-17 15:53:18 734 1

原创 DeepSeek + ReAct 实现 Agent

借助DeepSeek强大的推理能力,再结合ReAct框架的驱动,我们可以非常方便地实现一个初级的AI Agent

2025-03-07 15:15:41 1683 1

原创 大模型微调实战(1):Hugging Face 入门

本次的文章中,我们对 Hugging Face 这个重量级的开源社区进行了介绍,概览了它的 Models 和 Datasets 这两个核心模块,并且通过一个简单的 demo 演示了如果调用 Hugging Face 上的在线模型,加深大家对于 Hugging Face 的了解。

2025-03-07 15:04:58 790 1

原创 快速入门 Prompt Engineering 提示工程

本文中,我们首先介绍了 Prompt 提示词的相关概念,接着分享了一些如何写好 Prompt 的技巧,最后介绍了几种常见的 Prompt Engineering 技术手段,可以帮助大家快速入门提示工程。

2025-03-03 14:37:43 1015 1

原创 构建自己的 Word2Vec 模型

本篇文章我们首先讲解了 Word Embedding 的基础概念,之后介绍了 Word2Vec 模型的作用及模型架构,最后的重头戏是从零到一训练一个 Word2Vec 模型,并利用它进行简单的相似性搜索,可以看到效果还是不错的。

2025-02-28 16:41:07 946 1

原创 私有部署 ChatGLM3-6B

快手上手开源模型ChatGLM3-6B的私有部署

2025-02-15 10:42:58 187 1

原创 私有部署 ChatGLM3-6B

手把手指导开源模型ChatGLM3的私有部署

2025-02-15 10:28:43 159 1

原创 OpenAI API 详解

本文详细介绍了Open AI的API,并结合具体业务场景,介绍了其最佳实践

2025-02-12 18:26:55 918 1

原创 一篇文章讲透大模型核心概念

一篇文章讲透大模型(LLM)领域核心概念

2025-02-10 14:55:10 810 1

原创 大模型翻译能力评测

本文提供了一种客观有效的方法,可以全面评估大模型的翻译效果。

2024-11-29 20:10:21 2717 1

原创 使用 LangChain 实现简单的翻译功能

使用 LangChain 实现简单的翻译功能

2024-08-30 15:31:56 535 3

原创 为你的LLM应用增加记忆能力

本篇文章首先介绍了记忆系统对于 LLM 应用的重要性,接下来介绍了业界主流的记忆系统实现方案,之后我们利用 LangChain 框架为 LLM 应用添加上记忆功能,最后简单演示了下整体效果。

2024-08-30 14:54:58 1725 3

原创 使用智谱AI大模型翻译视频字幕

不久前,国内的头部大模型厂商智谱 AI ,刚刚推出了 `glm-4-0520` 模型,该模型被认为是当前平台最先进的模型,具备 128k 的上下文长度,并且相较于前一代模型,指令遵从能力大幅提升 18.6%。可以看出,智谱AI对于该模型寄予厚望。

2024-08-29 15:06:53 1598 1

原创 使用LLM实现自然语言的SQL查询代理

利用LLM的强大能力,将人类的自然语言翻译成标准SQL语句,一键获取查询结果。

2024-08-29 14:17:51 2290 6

原创 5. 缓存模块

对于缓存功能,相信大家都十分熟悉了。一旦我们发现系统的性能存在瓶颈需要优化时,可能第一时间想到的方式就是加缓存。缓存本质上是一种空间换时间的技术,它将计算结果保存在距离用户更近、或访问效率更高的存储介质中,进而降低请求处理耗时,提升系统性能。

2023-07-18 15:21:53 558 2

原创 4. 数据源模块

在日常开发中,我们经常会接触到池化技术,这是一种非常经典的设计思想。简单来说,池化技术指的是:将一些创建过程较为繁琐的重量级对象,统一维护在一个对象池中进行管理,每次使用对象时都从池中获取,使用完成后再归还给对象池进行回收。

2023-07-11 20:04:04 545 2

原创 3. 日志模块(下)

在日志模块的上篇中,我们详细拆解了 MyBatis 是如何整合第三方日志框架,实现了完善的日志功能的。那么在本节中,我们再来具体分析下:为了实现“将日志功能优雅地嵌入到核心流程中,实现无侵入式地日志打印”这一目标,MyBatis 内部做了怎样的设计。

2023-07-07 13:58:08 493 2

原创 2. 日志模块(上)

无论对于业务系统还是中间件来说,日志都是必不可少的基础功能。完善、清晰地日志可以帮助我们观测系统运行的状态,并且快速定位问题。现在让我们站在 MyBatis 框架开发者的角度,来分析一下日志功能的实现。

2023-07-05 19:57:04 540 2

原创 1. MyBatis 整体架构

作为正式内容的第一篇,本次不会介绍具体的技术,而是先从全局视角上对 MyBatis 做一个俯瞰,了解 MyBatis 项目工程的组织结构,以及内部的核心功能模块。

2023-07-01 08:51:38 1017 2

原创 0. 开篇词 —— 风物长宜放眼量

本专栏开篇于2023年年中,正值后疫情时代经济复苏不及预期、行业增速继续放缓、裁员失业率居高不下的宏观环境下,不确定性与焦虑感在整个社会中蔓延。但是我想说的是,越是在不确定的时代,越是要转而追求自身的确定性,摒弃对于时代红利 β 的依赖,专注于提升个人的 α。经济的兴衰、行业的变革背后都有其周期性的规律,拉长时间维度来看,我们当前所经历的一切也许并没有那么特殊。让我们一起把心态放平、视野放宽,在周期下行时持续蓄能,等待上行的机会再一飞冲天!最后附上我很喜欢的一句话共勉:风物长宜放眼量。

2023-07-01 08:43:57 465 2

原创 探寻容器的本质

云原生的基础就是容器化。可以说正是容器技术的快速发展,才推动了云原生的时代浪潮。

2022-09-09 17:31:27 696 1

原创 开篇——初识云原生

为了解决传统云计算领域的问题,容器化技术逐渐大放异彩,并推动云原生的快速发展。简单来说,云原生指的是在包括公有云、私有云、混合云等动态环境中构建和运行规模化应用的能力。这也是目前很多互联网大厂所采用的方式,即同时选择几家公有云,并且在企业内部也搭建私有云,将不同的业务部署在不同的云环境上,以达到冗余和容灾的目的。利用云原生的弹性调度能力,应用可以实现资源的动态扩缩容和环境的快速切换。基于云原生的容器化、弹性调度、服务治理等等技术手段,可以实现服务的大规模快速部署,解决了传统云计算的问题。

2022-09-05 09:34:24 435

原创 Web 应用防火墙

Web 应用防火墙(Web Application Firewall, WAF)通过对 HTTP(S) 请求进行检测,识别并阻断 SQL 注入、跨站脚本攻击、跨站请求伪造等攻击,保护 Web 服务安全稳定。

2022-06-15 17:56:35 1355

原创 Redisson 分布式锁执行流程

Redis分布式锁执行流程

2022-04-28 17:53:37 714

原创 熔断机制——断路器状态机

断路器状态流转过程:断路器初始状态为 CLOSED,此时服务可用正常调用;当调用失败的次数达到阈值时,熔断状态从 CLOSED 切换到 OPEN 状态。一般在实现时,如果调用成功一次,就会重置调用失败次数;当断路器处于 OPEN 状态时,我们会启动一个超时计时器,当计时器超时后,状态切换到 HALF_OPEN 半打开状态。你也可以通过设置一个定时器,定期地探测服务是否恢复;在断路器处于 HALF_OPEN 状态时,请求可以达到后端服务,如果累计一定的成功次数后,状态切换到 CLOSED;如果仍然出

2021-10-26 22:00:38 538

原创 垃圾收集器总结

垃圾收集器总结常用垃圾收集器对比垃圾收集器串行/并行/并发新生代/老年代算法目标适用场景Serial串行新生代复制低延迟优先单 CPU 环境下的 Client 模式Serial Old串行老年代标记-整理低延迟优先单 CPU 环境下的 Client 模式、CMS 的后备预案Parllel Scavenge并行新生代复制吞吐量优先在后台运算而不需要太多交互的业务Parallel Old并行老年代标记-整理吞吐量优先在后台

2021-07-21 10:24:15 194

原创 根据 DAU 估算 QPS 的一般思路

根据 DAU 估算流量和容量的一般思路以 DAU = 1000w 为例:PV按照日访问量为日活的10倍计算,PV = 1000w * 10 = 1亿均值QPS均值 QPS = 访问量/时长 = 1亿/(246060) = 1160峰值 QPS峰值 QPS 按照均值的10倍预估 = 11600。考虑到静态资源流量的放大效应,按照放大10倍计算,系统峰值 QPS = 116000容量考虑高可用、异地多活等策略,容量x2,QPS = 232000未来发展按照未来半年业务增长1.5倍计算,最

2021-07-20 10:59:22 4858 2

原创 JVM 内存划分

JVM 内存划分

2021-07-14 17:28:33 209

原创 Kafka和RocketMQ的消息复制实现对比

消息队列复制基本单位复制方式可用性一致性RocketMQ(原生)Broker同时支持同步双写和异步复制不支持主从自动切换,无法保证可用性可以保证消息一致性KafkaPartition异步复制基于Zookeeper实现主从自动切换,保证高可用可通过配置 ISR 保证一致性并不存在一种完美的消息复制策略,都是在高性能、高可用和一致性之间做出权衡。...

2020-11-17 11:05:11 463

原创 缓存读写模式

缓存读写模式一. Cache Aside (旁路缓存)读操作客户端优先读取 Cache,如果 Cache miss,则 读取 DB,并且将读取到的数据回落到 Cache 中。写操作由客户端先更新 DB ,然后直接将 key 从 Cache 中删除,由 DB 来驱动缓存数据的更新。特点这种模式的特点是,由客户端处理所有数据访问细节,同时利用 Lazy 计算的思想,更新 DB 后,直接删除 Cache 并通过 DB 更新,确保数据以 DB 结果为准,可以大幅降低 Cache 和 DB

2020-09-04 16:23:24 499

原创 系统常用指标经验值(持续更新)

系统常用指标经验值(持续更新)一. 数据库相关MySQL 单实例,读写 QPS 通常只有千级别(3000~6000),经过优化的查询语句,在性能较好的机器上,读 QPS可接近 1w。MySQL 执行一次普通的查询或者修改操作,平均耗时在 10~100ms 级别。慢查询:针对用户端的查询操作,slow_query 建议设置在 1s 以内。二. 缓存相关单机 Memcached 的读写 QPS 可以达到 10w~100w 级别,读写平均耗时在 1ms 以内。单机 Redis 的读写 QPS

2020-09-04 14:16:40 1674

原创 MySQL 主从架构原理

MySQL 主从架构原理一. 主从架构基本原理上图展示的是 MySQL 的主从切换流程。在 State-1 中,客户端的读写都直接访问节点 A,而节点 B 是 A 的备库,只是将 A 的更新都同步过来,到本地执行。这样可以保持节点 B 和 A 的数据是相同的。当需要切换的时候,就切成状态 2。这时候客户端读写访问的都是节点 B,而节点 A 是 B 的从库。在主从架构下,建议把从库设置为 Read-Only 模式,这样做有以下几个考虑:有时候一些运营类的查询语句会被放到备库上去查,设置为只读可以防

2020-08-30 11:33:51 2062

原创 MySQL的锁

MySQL的锁数据库锁设计的初衷是处理并发问题。作为多用户共享的资源,当出现并发访问的时候,数据库需要合理地控制资源的访问规则。而锁就是用来实现这些访问规则的重要数据结构。根据加锁的范围,MySQL 里面的锁大致可以分成全局锁、表级锁和行锁三类。一. 全局锁Flush tables with read lock (FTWRL)让整个库处于只读状态,所有更新操作都会被阻塞。**全局锁的典型使用场景是,做全库逻辑备份。**如果在做数据的时候不加锁,就可能出现备份的数据和原数据不一致的情况。

2020-08-16 17:56:17 295

原创 MySQL日志系统

MySQL 日志系统一. redo Logredo log 是 InnoDB 引擎特有的功能。当 MySQL 执行更新操作时,InnoDB 引擎就会先把记录写到 redo log 里面,并更新内存,这个时候更新就算完成了。同时,InnoDB 引擎会在适当的时候,将这个操作记录更新到磁盘里面,而这个更新往往是在系统比较空闲的时候做的。InnoDB 的 redo log 是固定大小的,比如可以配置为一组 4 个文件,每个文件的大小是 1GB,那么整个 redo log 就可以保存 4G 的数据。red

2020-08-12 22:11:34 225

原创 MySQL整体架构

MySQL整体架构一. Server层Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等)。所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。连接器:连接器负责跟客户端建立连接、获取权限、维持和管理连接。连接建立完成后,连接器会到权限表里面查出该客户端所拥有的权限。之后,这个连接里面所有的权限判断逻辑,都将依赖于此时读到的权限。这就意味着,一个用户成功建立连接后,即使你用管理员账

2020-08-12 15:21:03 250

原创 如何预估系统QPS

如何预估系统QPS场景举例:开屏广告,全天流量 = 12000CPM = 1200w PV根据8/2原则,80%的流量在20%的时间段内产生峰值QPS = (1200w * 0.8) / (24 * 60 * 60 * 0.2) = 760保险起见,预留20%的Buffer,因此可预估系统峰值QPS=920...

2020-06-30 09:53:03 1689 1

原创 互联网系统数据库设计军规

军规适用场景:并发量大、数据量大的互联网业务一、基础规范(1)必须使用InnoDB存储引擎解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高(2)必须使用UTF8字符集解读:万国码,无需转码,无乱码风险,节省空间(3)数据表、数据字段必须加入中文注释解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的(4)禁止使用存储过程、视图、触发器、E...

2020-04-03 11:53:56 316

原创 Git精华

Git精华一. Git工作区域划分二. 本地仓库初始化#创建本地工作目录mkdir git_learn#进行git初始化cd git_learngit init三. 常用操作查看本地仓库状态git status将本地修改同步到暂存区git add eshop.txt将暂存区内容提交到本地仓库git commit -m '开始开发电商系统'四...

2020-03-21 21:20:57 228

原创 MySQL字符集与排序规则小结

MySQL字符集与排序规则小结一. 字符集utf8mb4说明MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most bytes 4的意思,专门用来兼容四字节的unicode。好在utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。当然,为了节省空间,一般情况下使用utf8也就够了。utf8 VS utf8mb4utf8最大字...

2020-02-24 18:09:14 173

李白《静夜思》唐诗全文,音频格式

李白《静夜思》

2025-03-17

空空如也

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

TA关注的人

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