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

原创 淘系技术,实力为2019年双11而战!稳!

今年,双11走到了第11个年头,史无前例的,阿里经济体内有49支技术团队共同参与作战,也是第一次,双11的核心系统将100%跑在云上,这无疑让今年的双11技术作战充满了更大的挑战。正如2019年双11技术团长平畴(汤兴)说的“「善战者,无智名,无勇功」,这是我们技术人最高的境界”。我们一起捍卫了阿里技术人的荣耀,一个字 “稳”!年年双11,回回新玩法,“在吗,盖楼吗?”成为了好友聊天的日常,每天蹲...

2019-11-12 00:38:06 21852 7

原创 关于垂直领域大模型的探索和尝试

在过去一年多的实践工作中,我们团队围绕大模型在专业领域的应用做了一些尝试和探索。在此也把这两年的一些技术经验分享出来,希望跟大家一起交流和探讨。垂直领域大模型的特点垂直领域大模型是指以通用大模型作为base model,再喂以特定领域或行业的领域知识,经过训练和优化的大语言模型。与通用语言模型相比,垂直领域大模型更专注于某个特定领域的知识和技能,具备更高的领域专业性和实用性。但因为一些特殊性(比如...

2024-07-19 19:44:00 460

原创 当前端谈数据时,我们在谈些什么

作为前端,和业务上下游交流数据的时候,经常会出现页面 PV、UV、点击率、转化率等中英混杂不知所云的名词。特别是在存量竞争的当下,数据更是频频出现在高层的目标和规划中。那么,当我们,一个前端同学,谈起数据时,我们在谈些什么呢?追本溯源我们先抛开 spm 这些埋点名词,从一个行外人的角度来审视用户的交互过程。▐为什么要看数据让我们先从一个页面开始。前端永远是从一个页面开始。这个页面可能是一个内容...

2024-07-17 19:05:16 685

原创 淘宝页面首帧优化的经验和心得

最近做了一些移动端页面的首帧优化的工作,有很多心得和感受,其中有很多共性的东西,总结成一篇文章希望可以帮助到更多业务,也希望引起读者一起讨论。为何要做首帧优化作为程序匠人,一直在努力追求做一款好的产品,打磨各个细节,做好用户体验,而首帧是用户接触到产品的第一个页面,是体验的重中之重。也正因是产品的第一个页面,转化率接近100%,从ROI的角度来说,做好首帧优化也是一个很划算的deal。做好首帧优化...

2024-07-15 18:04:10 844

转载 淘宝互动游戏之我养的鸡要旅行

游戏的开发区别于传统前端,本文记录了作者慢慢摸索该互动游戏项目过程中遇到的问题和解决的思路。背景近期PD找到我,说我们的特价版小鸡送好礼要进行大改版,要让小鸡在地图上自由的走动起来,期间会遇到各种随机事件、玩法,从而提高趣味性和业务指标。交互图如下:作为一个半吊子游戏开发选手首先想到的就是:小鸡如何行走,是否需要前、后、左、右、左上、左下、右上、右下八个动画;遇到建筑物、河流如何处理;交互稿子上有...

2024-07-12 18:13:32 45

原创 ODPS开发大全:进阶篇

本文旨在收集整理ODPS开发中入门及进阶级知识,尽可能涵盖大多数ODPS开发问题,成为一本mini百科全书,后续也会持续更新。希望通过笔者的梳理和理解,帮助刚接触ODPS开发的同学快速上手。本系列分为两部分:入门篇和进阶篇。ODPS开发大全:入门篇常用参数设置常用的调整无外乎调整map、join、reduce的个数,map、join、reduce的内存大小。以ODPS的参数设置为例,参数可能因版本...

2024-07-10 17:47:14 714

原创 ODPS开发大全:入门篇

本文旨在收集整理ODPS开发中入门及进阶级知识,尽可能涵盖大多ODPS开发问题,成为一本mini百科全书,后续也会持续更新。希望通过笔者的梳理和理解,帮助刚接触ODPS开发的同学快速上手。本文为该系列第一篇:入门篇。笔者不才,有任何错误纰漏,欢迎大家指正。基础功能介绍▐功能分类一般来说,数据开发包括了以下几个类型:▐MaxCompute功能在此,我们重点介绍一下其中MaxCompute模块...

2024-07-08 18:03:41 599

原创 带你了解“Java新特性——模块化”

Java平台从Java 8向Java 9及更高版本的进化,其中引入了一个重要的新特性——模块系统(Project Jigsaw)。模块系统的目的是解决大型应用的依赖管理问题,提升性能,简化JRE,增强兼容性和安全性,并提高开发效率。通过模块化,Java能够更好地支持微服务架构,提供更细粒度的封装和控制,以及更清晰的依赖关系。文章详细介绍了模块系统的概念,如MODULE DESCRIPTOR、主要参...

2024-07-05 18:57:35 843

原创 架构之道:人人都是架构师

每个业务系统的开发者都应该具备一定的架构师素养,架构师的重要职责不仅仅是做决策,更重要的是提升团队的整体能力。一个好的架构师应该聚焦于业务和系统,定义问题和结果,设计系统、模块和代码,同时也需要解决跨域问题,确定团队间的边界,制定规范,统一语言,并创建一个让每个人都能成长为架构师的环境,以促进团队的敏捷性。本文旨在探讨如何培养架构思维,并阐述了架构师的职责、能力模型、方法论,以及如何成为架构师。前...

2024-07-03 18:02:18 1135

转载 VLMs多模态大模型当下进展与思考

自从ChatGPT问世以来,人工智能领域经历了一场令人眼花缭乱的变革,特别是在视觉-语言模型(Vision-Language Models, VLMs)的研究和应用上更是如此。VLMs通过结合视觉感知能力和自然语言理解能力,已经在诸如图像描述、视觉问答以及图像和视频的自动标注等多个方面展示出其惊人的潜力和应用价值。随着技术的不断进步,VLMs在处理复杂视觉和语言任务时的性能得到了显著提升,同时也为...

2024-07-01 18:02:19 108

原创 MapStruct-JavaBean映射工具使用指南

在软件开发中,对象之间的转换是一项常见的任务,尤其是在处理数据模型间的映射时。传统的做法,如使用JavaBeanUtils,可能会导致性能下降,而手动编写转换代码则效率低下且易出错。为了解决这些问题,MapStruct应运而生。MapStruct是一个强大的代码生成器,遵循约定优于配置的原则,使得对象间的映射变得简单、高效且类型安全。它在编译时生成映射代码,确保了高性能,并通过自动化减少开发工作,...

2024-06-26 17:41:04 710

转载 我理解的技术PM

作为技术同学,不仅要写好自己的代码,做好功能交付,往往还需要担任复杂项目的技术PM,推动整个项目的交付。其实人人都是技术PM,不管有没有这个title,实际上都在做这个工作,只不过是职责边界和复杂度不一样。有些同学缺少项目管理经验,不知道怎么才能做好技术PM,可能在项目过程中感觉混乱,大家做的很累,最后又延期交付,结果过程都不好,最后也搞不清楚哪里没做好。本文结合自身的一些经验,分享一下心得。职责...

2024-06-24 17:52:46 137

原创 FlinkSQL开发经验分享

最近做了几个实时数据开发需求,也不可避免地在使用Flink的过程中遇到了一些问题,比如数据倾斜导致的反压、interval join、开窗导致的水位线失效等问题,通过思考并解决这些问题,加深了我对Flink原理与机制的理解,因此将这些开发经验分享出来,希望可以帮助到有需要的同学。下文会介绍3个case案例,每个case都会划分为背景、原因分析和解决方法三部分来进行介绍。Case1:数据倾斜数据倾...

2024-06-21 17:55:28 2141

原创 阿里拍卖资产推荐算法 召回进展年中总结

阿里拍卖是阿里巴巴旗下拍卖平台,覆盖房产、机动车、土地、债权等类目。召回策略作为推荐场景的第一环,决定了整个推荐系统的上限,目前包含了包括向量召回、I2I、LBS2I、C2I等多路召回。召回的核心目标是尽可能的返回用户所有可能会感兴趣的商品,给到后续粗排、精排、重排环节,最终曝光给用户。与淘宝APP的普通商品不同,大资产商品有其独有的特点。唯一性:每件商品都是唯一的、单库存的,世界上没有两套一模一...

2024-06-19 17:39:31 682

原创 奇怪的缓存一致性问题

天猫国际用户Push中心承接了国际用户触达相关的需求,比如短信、端内消息投放等等,并存在较高的并发场景。该系统此前发现了一个查询投放计划plan为null的异常情况,在初期排查时有些丈二和尚摸不着头脑,后面突然灵光乍现——原来是缓存一致性问题!本文记录一下该问题的排查过程和解决方案,同时带读者朋友们一起回顾下相关的八股文~相关八股文▐缓存穿透、缓存击穿、缓存雪崩缓存穿透、缓存击穿和缓存雪崩都是...

2024-06-17 17:45:37 1174

转载 淘宝短视频流工程重构(下):实践篇

随着视频流业务的发展,业务的复杂性越来越高,视频流老工程在架构设计、代码质量、工程能力等方面的问题也逐渐凸显。在这样的背景下我们开启了一次对老工程的大型重构。本次重构是一次对大型业务工程进行架构再设计和重构的探索,本文是对这次探索的一次梳理与总结。限于篇幅,文章总共分为理论篇和实践篇两个部分。淘宝短视频流工程重构(上):理论篇‍‍思维导图如下所示:本文是实践篇,讲述如何从 0 到 1 对一个大型的...

2024-06-14 17:06:25 157

转载 淘宝短视频流工程重构(上):理论篇

随着视频流业务的发展,业务的复杂性越来越高,视频流老工程在架构设计、代码质量、工程能力等方面的问题也逐渐凸显。在这样的背景下我们开启了一次对老工程的大型重构。本次重构是一次对大型业务工程进行架构再设计和重构的探索,本文是对这次探索的一次梳理与总结。限于篇幅,文章总共分为理论篇和实践篇两个部分。思维导图如下所示:本文是理论篇,主要讲述持续重构的重要性、如何设计好架构以及如何写出好代码,为实践篇做一个...

2024-06-12 16:48:04 169

原创 手猫助手Agent技术探索总结

随着LLM的发展,ChatGPT能力不断增强,AI不断有新的概念提出,一种衍生类型的应用AI Agent也借着这股春风开启了一波话题热度,各种初创公司,包括Open AI内部也都在密切关注着AI Agent领域的变化。阿里集团内的AI团队也有很多基于Agent的尝试,Xlangchain和阿里LangEngine有很多Agent的例子,手猫端在过去一年中始关注AI技术动向,不断在手猫端上做面向用户...

2024-06-07 18:04:06 1212

原创 AIGC生图的自动化质量评估

AIGC生图需要进行质量评估以确保满足一定标准。这一评估过程非常重要,因其关系到内容的专业性、商业价值以及顾客的满意度。然而,传统的手动评估方式既耗时又耗力,且容易受到主观偏差的影响,导致评估成本高昂而效果不佳。目前对基模型的优化效果的全面评测,包含了十多个维度,全部标注需要2~4个人日。如果涉及模型整体效果的迭代,则需要更多的人力投入。鉴于此,自动化的质量评估方法成为一种迫切需求。通过采用算法和...

2024-06-05 17:30:50 1189

原创 用AIGC技术打造多样的室内装修风格

随着人工智能不断进步的创造能力,AI生成内容(AIGC)技术已经成为设计行业的一大助力。本文将详细介绍相关的技术原理和细节以及它们在室内装修设计中的应用案例,为读者揭示如何利用AIGC技术打造多样且个性化的室内装修风格。AIGC技术的背景对于室内装修领域,AIGC技术开启了个性化和智能化设计的新篇章。过去,室内装修和设计往往受限于设计师的个人经验和客户的想象力,完成一套合格的室内装修方案往往需要数...

2024-06-03 17:31:41 767

原创 JIT真的比解释执行快么——关于JS引擎的一些热门话题

在编程语言的世界中,如何高效地执行代码一直是一个热门话题。随着脚本语言的普及和性能需求的提升,解释执行和即时编译(JIT)成为了两种常见的代码执行方式。本文探讨了这两种技术,通过详细的实例和深入的分析,为我们揭示了它们的工作原理、性能差异以及各自的优缺点。希望这篇文章能够帮助你更好地理解编程语言执行的技术世界,激发你对高效代码执行的深入思考,并在实践中应用这些宝贵的知识。什么是JIT和解释执行要解...

2024-05-31 16:30:29 917

原创 面向Java程序员的Go工程开发入门流程

对于一个像我这样没有go背景的java程序员来说,使用go开发一个可用的程序的速度是肉眼可见的缓慢。其难点不在于go语言本身,而是搭建整个工程链路的过程,即所谓的“配环境”。本文主要讲述如何配出一个适合go开发的环境,以免有同事陷入困境时对我使出“您配吗”之类的大招。假如拿到一台新电脑安装brew:/bin/bash-c"$(curl-fsSL https://raw.githubusercont...

2024-05-29 16:50:16 1105

原创 通过Transformers用不同的采样方法生成文本

近年来,随着以OpenAI的ChatGPT和Meta的LLaMA为代表的基于数百万网页数据训练的大型Transformer语言模型的兴起,开放域语言生成领域吸引了越来越多的关注。开放域中的条件语言生成效果令人印象深刻,典型的例子有:GPT2在独角兽话题上的精彩续写和XLNet等。促成这些进展的除了transformer架构的改进和大规模无监督训练数据外,更好的采样策略也发挥了不可或缺的作用。本文简...

2024-05-27 17:02:15 1116

转载 个人项目中技术落地的基础入门

本文是技术人面试系列个人项目篇,作者总结了一些自己的实战项目经验,本文为该系列第六篇——第一篇:《JVM的基础入门》 第二篇:《Netty的基础入门》第三篇:《LeetCode的基础入门》第四篇:《Java的基础入门》第五篇:《实战算法的基础入门》一站到底采用SpringBoot构建项目,主要通过分布式缓存、队列、限流保证系统高可用,Netty、缓存、反向代理保证高并发。双人对战答题、公司对战抢答...

2024-05-24 18:04:27 221

原创 serverless在点淘的质量保障实践

SERVERLESS能够将应用分为研发域和运维域,使两者独立迭代,降低运维成本,提升研发效率。点淘作为试点项目,经历了包括功能回归、压力测试和监控验证在内的质量保障流程,并在实践中遇到了各种问题,如依赖梳理、性能验证和监控建设等。文章还提到了SERVERLESS带来的部署效率提升,例如应用部署时长显著下降,并展望了未来通过基座插件化和分层自动化来进一步优化测试成本和功能保障。最后,文中列举了SER...

2024-05-22 17:01:25 1041

转载 一个淘宝服务端工程师的年度总结

我们新推出大淘宝技术年度特刊《学如逆水行舟,不进则退——工程师2023年度成长总结专题》,专题收录10余篇工程师2023真诚心路历程与经验思考,覆盖终端、服务端、技术质量等技术领域,这是他们的心得体会,欢迎同行的你一起沟通交流。本文为该系列第二篇——第一篇:《聊聊我做测试开发的十年心路历程》服务端开发工程师天未2023年在大淘宝技术账号上发表了6篇文章,聊过技术干货,也聊过业务沉淀,还聊过个人思考...

2024-05-20 18:40:38 185

转载 生成式AI原理技术详解(二)——高级神经网络

本文主要介绍了生成式AI的相关技术,特别是卷积神经网络(CNN)在图像识别领域的应用。本文为该系列第二篇,第一篇:生成式AI原理技术详解(一)——神经网络与深度学习引言如果看明白了上一篇文章对神经网络和深度学习的介绍,再来逐步深入了解AI相关的概念和原理应该就相对容易了。希望上一篇文章能给大家一点印象:AI并没有想象中复杂。AI能处理海量信息,但是它并没有人类难以理解、异常复杂的机制。因为只有机制...

2024-05-17 17:40:14 218

转载 实战算法的基础入门

关于实战算法都需要了解哪些?一文带你详细了解,欢迎收藏!▐URL黑名单(布隆过滤器)100亿黑名单URL,每个64B,问这个黑名单要怎么存?判断一个URL是否在黑名单中散列表:如果把黑名单看成一个集合,将其存在hashmap中,貌似太大了,需要640G,明显不科学。布隆过滤器:它实际上是一个很长的二进制矢量和一系列随机映射函数。它可以用来判断一个元素是否在一个集合中。它的优势是只需要占用很小的...

2024-05-13 16:20:21 152

原创 面向电商家居行业3D室内场景合成中的空间感知

本文主要介绍了3D场景合成技术在电商领域,尤其是家居家装行业的应用。它解释了如何使用3D场景合成创建逼真的室内设计,让消费者能够交互式地查看和体验产品,提高购物的趣味性和效率。文章提到了两种主要的3D室内场景生成算法:传统方法和深度学习方法,并着重介绍了如何通过空间感知和物理约束、功能约束以及美学认知来优化家具布局。此外,文章还讨论了在3D场景中处理碰撞检测、漂浮问题、通行区域和家具访问空间的重要...

2024-05-10 16:30:23 630

转载 Java的基础入门

关于Java都需要了解哪些?一文带你详细了解,欢迎收藏!Java基础▐面向对象三大特性特性:封装、继承、多态;封装:对抽象的事物抽象化成一个对象,并对其对象的属性私有化,同时提供一些能被外界访问属性的方法;继承:子类扩展新的数据域或功能,并复用父类的属性与功能,单继承,多实现;多态:通过继承(多个⼦类对同⼀⽅法的重写)、也可以通过接⼝(实现接⼝并覆盖接⼝);Java与C++区别不同点:c++支...

2024-05-08 16:20:38 144

原创 如何优雅地编写缓存代码

在日常的编码实践中,经常会用到缓存来解决高并发问题,缓存可以说是解决流量洪峰的不二利器。虽然集团中间件团队已经构建了缓存的基础设施,已经帮助我们解决了绝大部分问题,但是在实际的编码使用过程中,应用端调用缓存API时还是存在下述几类问题:使用缓存的逻辑非常通用,基本都是先查缓存,有直接返回,没有查DB,再放入缓存中。这段通用逻辑散落在系统的各个地方,违反了高内聚低耦合的原则。缓存代码和业务逻辑代码深...

2024-04-29 16:21:02 6414 1

原创 diffusers SD推理加速方案的调研实践总结

近期,在我们的内容技术灵媒智算平台(MVAP)上部署的服务数量提升迅猛,部分业务场景对SD系列模型的推理速度有着一定的要求。因此,我们对当前较为流行的SD加速方式进行了调研与测试,并以AI试衣业务场景为例,尝试了多种加速方案。下面是对调研结果与实际落地效果的一些总结与分享。加速方案介绍目前主流的加速思路包含算子优化、模型编译、模型缓存、模型蒸馏等,下面将简要介绍一下几种测试中用到的有一定代表性的开...

2024-04-26 16:20:36 1003

转载 LeetCode的基础入门

关于LeetCode都需要了解哪些?一文带你详细了解,欢迎收藏!Python语法reduce(function, iterable[, initializer]) reduce(lambda x,y:x * y,ns) # 数组之乘积 (ns[0] * ns[1]) * ns[2] reduce(lambda x,y:x + y,ns) # 数组之和# 记忆化搜索@functo...

2024-04-24 16:20:20 162

原创 生成式AI原理技术详解(一)——神经网络与深度学习

本文主要介绍了生成式AI的最新发展,提到了GPT-5和AI软件工程师在行业中的影响,指出AI技术进步对国家竞争和个人职业发展的潜在影响。未来已来最近有两则新闻:sam altman自曝GPT-5细节,公开宣称GPT-5提升将非常大,任何小看它的公司都会被碾压。并发推暗示OpenAI今年的产品会改变人类历史。关于首个AI软件工程师的新闻,里面AI软件工程师表现已经相当出众,具备了整体规划、DevOp...

2024-04-22 16:20:59 1262

原创 AI生图美学在淘宝的实践应用

本文介绍了如何制定和应用美学标准来评估和改善人工智能生成的图像质量,特别是在电商领域的应用,主要分为制定美学标准、训练美学模型、应用美学模型、升级淘宝风格模型四个步骤。美学的定义与分析图像质量标准:现代设计框架下,定义的图像质量标准基本是统一的。侧重技能和技法的定义,也由此延伸出对图、画、照片、影像的质量评判,再此基础上对成图手段的特性会有所要求和侧重。图像内容标准:意识形态下的表达好坏要求是广泛...

2024-04-19 16:20:49 1550 1

原创 基于LLM大模型Agent的适用范围和困境

本文提到大模型通常的工作方式,即通过提示词进行问答,并指出了两个主要问题:历史对话信息的管理和令牌数量的限制。文章讨论了知识库问答和个人助手两个应用场景,并分析了各自面临的困境,如知识库无法有效处理多模态信息和大型文档,个人助手则受限于工具参数的复杂性和令牌长度。文章还提到了微调(FINE-TUNING)作为改善模型性能的方法,以及在不同领域的应用潜力。最后,分享了对微调成为标准操作流程的预期,以...

2024-04-17 16:20:56 577

原创 一文讲明白什么是市场调研

本文主要介绍市场调研的主要步骤和工具方法,并简单介绍了淘宝在电商领域中市场调研的实践。什么是调研▐定义广义的含义,调研既是指市场调查,通过收集、分析和解释相关数据来达到了解企业现状、了解市场趋势、挖掘用户需求、确定产品研发方向等目的。市场调查的最终目的是制定一系列商业决策。▐常见研究目标了解目标市场:市场调研帮助企业更好地了解目标市场的规模、结构、增长趋势和关键参与者。这有助于企业确定在哪...

2024-04-15 16:20:41 9322

原创 高速服务框架HSF的基本原理

SOA解决方案——HSF(High-speedServiceFramework)是阿里系主要采用的服务框架,其目的是作为桥梁联通不同的业务系统,解耦系统之间的实现依赖。HSF简介▐背景单体应用的主要问题是不同的业务相互纠缠在一起,面对快速发展的业务,这种开发模型和架构不利于业务发展。为了解决这个问题,需要对应用进行拆分。将不同的业务分拆到多个应用中,让不同的应用分别承担不同的功能。在单体应...

2024-04-12 16:20:53 872

原创 Agent调研--19类Agent框架对比

代理(Agent)指能自主感知环境并采取行动实现目标的智能体,即AI作为一个人或一个组织的代表,进行某种特定行为和交易,降低一个人或组织的工作复杂程度,减少工作量和沟通成本。背景目前,我们在探索Agent的应用方向,借此机会调研学习了一下现在主流的Agent框架,这篇文章也是我们调研过程的记录。▐网络热门Agents截止至今日,开源的Agent应用可以说是百花齐放,文章也是挑选了热度和讨论度较...

2024-04-10 16:20:43 2792 1

转载 Netty的基础入门

关于Netty都需要了解哪些基础?一文带你详细了解,欢迎收藏!核心组件▐整体结构Core 核心层 Core 核心层是 Netty 最精华的内容,它提供了底层网络通信的通用抽象和实现,包括事件模型、通用API、支持零拷贝的 ByteBuf 等。Protocol Support 协议支持层 协议支持层基本上覆盖了主流协议的编解码实现,如 HTTP、Protobuf、WebSocket、二进制等主流...

2024-04-08 18:01:40 155

空空如也

空空如也

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

TA关注的人

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