前端monorepo大仓共享复杂业务组件最佳实践
武汉源创会回归,4月20聊聊大模型” 一、背景 在 Monorepo 大仓模式中,我们把组件放在共享目录下,就能通过源码引入的方式实现组件共享。越来越多的应用愿意走进大仓,正是为了享受这种组件复用模式带来的开发便利。这种方式可以满足大部分代码复用的诉求,但对于复杂业务组件而言,无论是功能的完整性,还是质量的稳定性都有着更高的要求。源码引入的组件提供方一旦发生变更,其所有使用方都需要重新拉取 master 代码,然后构建发布才能使用新功能,这一特性对物料组件、工具组件以及那些对新功能敏感度较低的
大模型在产品原型生成中的应用实践
武汉源创会回归,4月20聊聊大模型” 一、背景 在 B 端研发过程中,产品原型在产品需求文档中起着重要的作用。然而,在实际的开发过程中,我们发现了一些问题。首先,在需求评审阶段,有些产品需求文档可能缺少原型或者原型与研发团队的规范不一致,这需要研发同学与产品同学沟通补充原型图或者按照研发团队的规范进行绘制,这增加了产品同学和研发团队之间的沟通成本以及增加了产品同学的学习成本。其次,在业务验收阶段,开发的页面或效果可能不符合业务侧的期望,这又需要产品和研发团队反复沟通,导致业务侧对效果的感知链路
商家可视化埋点探索和实践
武汉源创会回归,4月20聊聊大模型” 一、项目背景 在数字产品的数据分析实践中,手动代码埋点方式因其精确性和定制化的优势长期被许多组织采用,但随着业务快速发展和迭代需求的增加,传统手动埋点方法的时间消耗、一定的技术门槛和较高的维护成本成为研发角色的负担。另外,全埋点的埋点方式提供了全面数据捕捉的解决方案,但其带来的海量数据处理难题和潜在的隐私风险也不容忽视。 原有商家后台通过手动埋点方式实现业务埋点的收集。 埋点流程从明确需求到上线&验证共计上图 5 个步骤,手动代码埋点经历 v1.0 到 v
如何扩展大模型的上下文长度
武汉源创会回归,4月20聊聊大模型” 一、背景 大模型的上下文长度是指我们在使用大模型的时候,给大模型的输入加上输出的字符(Token)总数,这个数字会被限制,如果超过这个长度的字符会被大模型丢弃。目前开源的大模型上下文长度一般不长,比如 Llama 2 只有 4K,Code-Llama 系列因为需要输入代码,扩展到了 16K。闭源系列模型的提供了更长的上下文长度,比如 OpenAI 在其最新模型 GPT-4 Turbo 中提供了 128K 的上下文长度,Anthropic 的 Claude
得物App灰度&全量发布效率提升实践
武汉源创会回归,4月20聊聊大模型” 一、背景 得物的发布采用固定的双周迭代,在此基础上如有紧急的需求可以申请中间插入单周迭代版本,在以往的迭代发布过程中从开始准备灰度发布事宜到主要应用市场上架时间跨度较长,站在业务的角度像AB、埋点、新特性反馈的时间太长。 最近我们针对发布流程做了整个链路的优化,通过调整发布节奏、提升双端发布系统自动化能力等措施,帮助业务触达用户效率(每版本提前1天),下文将详细讲述此过程。 二、量化数据 发布过程中涉及的不同职能的业务域较多,信息不透明、无法从全局视角了解
得物千人规模敏捷迭代实践分享
武汉源创会回归,4月20聊聊大模型” PMO 是干什么的?不就是个拉会的嘛? 这种根深蒂固的误解,就像,你说你是学计算机的,别人以为你是修电脑的。如果你是这么想的,那这篇文章应该会重新认识项目管理,以及PMO这个角色。 我们之所以写这篇文章,一是觉得国外传到中国来的PMO守则、指导方针等,存在水土不服的问题,我们现在遇到的问题甚至可能都比国外还要复杂。二是,我们在得物飞速发展的过程中结合理论与实战积累了一些经验,希望可以跟相关从业者探讨和交流。 文章从得物技术团队的发展不同阶段遇到的挑战出发,
Java内存模型(JMM)是基于多线程的吗
武汉源创会回归,4月20聊聊大模型” Java内存模型(JMM)是基于多线程的吗 这个问题按我的思路转换了下,其实就是在问:为什么需要Java内存模型 总结起来可以由几个角度来看待「可见性」、「有序性」和「原子性」 面试官:今天想跟你聊聊Java内存模型,这块你了解过吗? 候选者:嗯,我简单说下我的理解吧。那我就从为什么要有Java内存模型开始讲起吧 面试官:开始你的表演吧。 候选者:那我先说下背景吧 候选者:1. 现有计算机往往是多核的,每个核心下会有高速缓存。高速缓存的诞生是由于「CPU与
简历真的就只看学历吗?学历不好的简历如何自救
武汉源创会回归,4月20聊聊大模型” 前段时间写了一个帖子:《为什么你的简历被HR挂掉?》 然后有一个很犀利的评论是**“**都是废话,一切的简历挂都是学历不够 ” 说实话,作为一个十年左右的面试官,只能说以上的评论不无道理,确实你的学历会伴随你终身,始终影响着你的求职。对于拥有清华北大学历的人来说,同等情况下,显然会有更高的录取几率。 但我想大部分的应聘者已经很难改变自己的学历了,作为本科生或专科生,你当然还有机会通过考研或专升本等方式去提升自己的学历,拿到一个更好的学校背景确实能帮助你再未
elasticsearch 教程(一)程序建立索引
武汉源创会回归,4月20聊聊大模型” elasticsearch 教程(一)程序建立索引 从elasticsearch 8.x开始,除了通过kibana建立索引之外,还可以在Java程序定义索引。待程序运行时,会先检测是否建立索引,如果已建立索引,即使程序中定义的索引结构发生变化,也不会删除索引然后再重建索引;如果没有建立索引,则会按照程序中定义的索引结构新建索引。 下面首先来讲一下es 8.x中的两个注解@Setting和@Mapping,@Setting这个注解根据名称可以得知是定义索引相
为什么互联网大厂的工资那么高?
武汉源创会回归,4月20聊聊大模型” 周末,我去政务大厅办事。工作人员不紧不慢,熟练地办理着业务,每个步骤就像流水线一样,简单可复制。到了下班的点就不放号了,基本不加班。工资虽然不高,也能达到当地中等偏上水平。只要不犯错误,能干到安稳退休,拿着比年轻人工资还高的养老金。算算性价比,保障充足,幸福感满满。看看互联网大厂的工作,高薪意味着什么:老板安排工作,只说大方向。比如说,做出一个让用户快速入睡的小程序。嗯,你没听错,就这么一句话。你就要发挥想象力,揣摩老板的意思,这个小程序给谁使用?设计什么
Java为什么要分为service层,dao层,controller层?
武汉源创会回归,4月20聊聊大模型” java为什么要分为service层,dao层,controller层? 一个项目中不一定都能用得上全部的分层规约,但十分有必要了解每一种的用法,便于去阅读其他人的代码。同样的,虽然遵守规约写代码可能会略微拉低你写代码的速度(PS:多写一些实体类),但越是规范化,模板化的东西,后期的维护成本和学习成本会越低。 《阿里巴巴Java开发规范》关于领域模型的部分介绍如下 分层领域模型规约: DO(Data Object):此对象与数据库表结构一一对应,通过 DA
后端怎样防止重复提交订单?
武汉源创会回归,4月20聊聊大模型” 后端怎样防止重复提交订单? 前言 接口幂等性问题,对于开发人员来说,是一个跟语言无关的公共问题。本文分享了一些解决这类问题非常实用的办法,绝大部分内容我在项目中实践过的,给有需要的小伙伴一个参考。 不知道你有没有遇到过这些场景: 有时我们在填写某些form表单时,保存按钮不小心快速点了两次,表中竟然产生了两条重复的数据,只是id不一样。 我们在项目中为了解决接口超时问题,通常会引入了重试机制。第一次请求接口超时了,请求方没能及时获取返回结果(此时有可能已经
有奖问答 —— 如何高效处理电子表格办公文档
武汉源创会回归,4月20聊聊大模型” 【高手问答第 313 期 —— 如何高效处理电子表格办公文档】 问答地址: https://www.oschina.net/question/4700705_2331750 OSCHINA 本期高手问答(3 月 6 日 - 3 月 12 日)我们请来了嘉宾续日和大家一起聊聊 高效处理电子表格办公文档 那些事。 可讨论的问题包括但不限于: ● 带有高阶复杂功能工作表的自动化处理方法 ● 遇到包含大规模数据工作簿时如何优化读写性能 ● Excelize 适合的
揭秘百度数仓融合计算引擎
武汉源创会回归,4月20聊聊大模型” 作者 | Spark源码践行者 导读 本文介绍了百度数仓融合计算引擎的整体设计原理、优化及实践,阐述了在互联网产品快速迭代的趋势下,基于一层数仓宽表模型的数仓模型如何做到数十秒级查询的技术方案,并从互联网业务变化特性、传统计算引擎存在的问题、融合计算引擎的原理及优缺点、引擎应用场景和效果等角度进行了较为全面的分析,最终通过引擎设计和优化实现了提升查询性能的同时节约数仓存储的目标,降低了用户的数据使用成本。 01 业务背景 1.1 数据现状和数据分析引擎的演
分布式数据库 GaiaDB-X 金融应用实践
武汉源创会回归,4月20聊聊大模型” 1 银行新一代核心系统建设背景及架构 在银行的 IT 建设历程中,尤其是中大行,大多都基于大型机和小型机来构建核心系统。随着银行业务的快速发展,这样的系统对业务的支持越来越举步维艰,主要体现在以下四个方面: 首先是难以支持银行快速发展的业务。随着国内电商、互联网支付、手机支付的迅猛发展,银行的交易量出现指数级的增长。比如我们的某银行客户,当前每秒的交易量峰值在一万多左右,预计在未来几年会逐渐增长到每秒 6 万笔交易,而且后续还会继续增长。在这种情况下,基于
专为大模型训练优化,百度集合通信库 BCCL 万卡集群快速定位故障
武汉源创会回归,4月20聊聊大模型” 1 集合通信对分布式训练至关重要 在分布式训练中,每一块 GPU 只负责处理部分模型或者数据。集群中不同 GPU 之间通过集合通信的方式,完成梯度同步和参数更新等操作,使得所有 GPU 能够作为一个整体加速模型训练。 如果有一块 GPU 在集合通信中出了状况,将会导致其他 GPU 处于等待状态,直到这块 GPU 完成数据同步,集群中所有 GPU 才会开始后续工作。 所以,集合通信性能直接影响了分布式任务的速度,决定了集群中所有 GPU 能否形成合力加速模型
百度 Comate 提升编码效率,释放 10 倍软件生产力
武汉源创会回归,4月20聊聊大模型” 各位线上的开发者朋友们,今天我的分享主要分为四个方面。 首先是 AIGC 发展和 Comate 落地的大背景; 第二是百度 Comate 以及它使用的相关技术; 第三是 Comate 在百度内部的落地情况和使用效果; 最后,展示一个实际的 case 让大家去感受下百度 Comate 在实际工作中是如何帮助大家进行开发和协同的。 软件研发领域的变革实际上一直都在进行。人们始终都在以「高效、智能和持续演进」的理念来指导软件的发展。 随着技术的不断提升,软件开发
RAG一文读懂!概念、场景、优势、对比微调与项目代码示例
武汉源创会回归,4月20聊聊大模型” 本文结合“基于 ERNIE SDK+LangChain 搭建个人知识库”的代码示例,为您讲解 RAG 的相关概念。 01 概念 在2020年 Facebook AI Research(FAIR)团队发表一篇名为《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》的论文。这篇论文首次提出了 RAG 概念(目前大语言模型领域的一个重要概念),并对该概念进行详细介绍和解释。 此图是
今日推荐
周排行