
有道技术干货
文章平均质量分 93
有道AI情报局
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
有道QAnything背后的故事---关于RAG的一点经验分享
近日,我们开源了有道自研的RAG(Retrieval Augmented Generation) 引擎QAnything。该引擎允许用户上传PDF、图片、Word、Excel、PowerPoint等多种格式的文档,并实现类似于ChatGPT的互动问答功能,其中每个答案都能精确追溯到相应的文档段落来源。QAnything 支持纯本地部署,上传文档数量无上限,问答准确率高。QAnything自开源以来,迅速吸引了开发者社区的广泛关注,并很快登上了GitHub trending榜单。原创 2024-03-01 11:21:58 · 3113 阅读 · 2 评论 -
杰夫 · 迪恩:《深度学习的黄金十年:计算系统与应用》
我们用有道神经网络翻译引擎(YNMT)将全文做了翻译,以飨读者。原创 2022-09-14 15:09:29 · 496 阅读 · 0 评论 -
网易有道 | REDIS 云原生实战
本次以Redis为范例,阐述了有道基础架构团队在基础设施容器化道路上的实践。原创 2021-12-27 10:46:19 · 805 阅读 · 0 评论 -
Flutter在线编程实践总结
1.Flutter架构Flutter的架构主要分成三层:Framework,Engine,Embedder。1.Framework使用dart实现,包括Material Design风格的Widget,Cupertino(针对iOS)风格的Widgets,文本/图片/按钮等基础Widgets,渲染,动画,手势等。 此部分的核心代码是:flutter仓库下的flutter package,以及sky_engine仓库下的io,async,ui(dart:ui库提供了Flutter框架和引擎之间的接口)等p原创 2021-11-17 11:03:46 · 653 阅读 · 0 评论 -
递推算法与递推套路(手撕算法篇)
联系我们:有道技术团队助手:ydtech01 / 邮箱:[ydtech@rd.netease.com]相信了解算法同学经常会说动态规划太难了,看到题目完全不知从何下手,或者是说“一看题解就会,一看题目就废”这样的一个状态。本质上是由于学习动态规划的时候,学习方法不对,最终导致南辕北辙,没有掌握其中精髓。而动态规划与递推算法又有着暧昧不清的关系,我们选择先从递推算法入手,一步一步揭开动态规划的神秘面纱。一、递推公式每一个递推算法,都有一个递推公式,通过递推公式我们可以更加明确的了解递推算法。1.1 .原创 2021-10-28 16:26:58 · 601 阅读 · 0 评论 -
玩转TypeScript工具类型(下)
加粗样式联系我们:有道技术团队助手:ydtech01 / 邮箱:ydtech@rd.netease.com本文是《玩转TypeScript工具类型》系列的最后一篇,包含了如下几部分内容:ThisParameterTypeOmitThisParameterThisType快捷跳转[玩转TypeScript工具类型(上)][玩转TypeScript工具类型(中)]一. ThisParameterType提取一个函数类型显式定义的 this 参数,如果没有显式定义的 this 参数,则原创 2021-09-22 18:04:42 · 455 阅读 · 0 评论 -
玩转TypeScript工具类型(中)
联系我们:有道技术团队助手:ydtech01 / 邮箱:ydtech@rd.netease.com本文是《玩转TypeScript工具类型》系列的第二篇,包含了如下几部分内容:必读:extends条件运算符Exclude<Type, ExcludeUnion>Extract<Type, Union>NonNullable必读:tuple type元组类型ParametersConstructorParametersReturnTypeInstanceType.原创 2021-09-15 17:30:04 · 668 阅读 · 0 评论 -
玩转TypeScript工具类型(上)
随着前端项目的规模不断变大,多人协同开发已经成为了前端开发的标配,随之而来的就是 TypeScript 被越来越多的项目所使用,这种变化并不是对技术的盲目追求,而是业务驱动下的技术进步,TypeScript 通过对原生 JavaScript 提供强类型加持,在很大程度上提升了代码质量,大大降低了多人协同场景下不同模块接口相互调用可能出现的隐性 bug。本系列分享来源于我日常开发中对 TypeScript 工具类型的一些学习和使用体会,本系列文章分为上中下三篇,通过本系列分享,希望可以达到如下几个目的:从原创 2021-09-08 18:30:44 · 455 阅读 · 0 评论 -
有道词典Flutter架构与应用
联系我们:有道技术团队助手:ydtech01 / 邮箱:ydtech@rd.netease.com在 18 年 Flutter 发布正式版 1.0 版本以来,有道 Luna 团队保持持续的关注,在不少业务上进行大量的尝试,Flutter 本身统一 Skia 引擎带来的跨平台特性和一致的体验,AOT 下高性能,JIT 下热重载带来提高开发效率等特性,都让人们保持极大的热情和持续的投入,其生态社区也在快速增长。从实际表现上来看,整个技术栈设计很好。上层 Flutter Framework 引入 .原创 2021-09-01 18:11:32 · 1498 阅读 · 0 评论 -
你真的了解二叉树吗?(手撕算法篇)
前言本文属于系列文章《你真的了解二叉树吗》的第二部分——手撕算法篇。如果你还没有看过第一部分《你真的了解二叉树吗(树形结构基础篇)》的话,强烈建议先看一下第一部分的内容,这样你在解题时会更加如虎添翼。很多第一篇里面已经讲过的内容,在这里将不再赘述。一、二叉树基础刷题部分1.1 LeetCode 144 二叉树的前序遍历解题思路如果你有看过我上一篇文章《你真的了解二叉树吗(树形结构基础篇)》的话,应该已经知道了,我们树的遍历天生就适合使用递归实现,此外,还讲了如何设计和实现一个递归函数,如果对着两原创 2021-08-25 18:19:52 · 255 阅读 · 0 评论 -
你真的了解二叉树吗?(树形结构基础篇)
联系我们:有道技术团队助手:ydtech01 / 邮箱:ydtech@rd.netease.com前言树形结构,尤其是二叉树,在我们平时开发过程中使用频率也算是挺高的,但之前对于树形结构没有一个比较系统全面的了解和认知,所以利用清明的时间补补课,梳理一下。本文属于《你真的了解二叉树吗》系列文章之一,主要介绍的是树形结构的基础,在看完这篇文章之后,如果想要更加熟练掌握二叉树的话,可以看另一篇《你真的了解二叉树吗(手撕算法篇)》。一、树形结构基础相较于链表每个节点只能唯一指向下一个节点(此处说原创 2021-08-19 09:37:36 · 512 阅读 · 0 评论 -
大厂offer?拿来吧你!网易有道笔试编程题特辑
联系我们:有道技术团队助手:ydtech01 / 邮箱:ydtech@rd.netease.com欢迎应届生同学们来到2022年校招运动会现在迎面向你们走来的是网易有道代表队!(传送门:http://hr.youdao.com/ )他们食堂好吃他们从不内卷今天,他们还带来了10道笔试编程题据说全做对的同学都顺利地拿到了 offer!同学们,请开始你们的 bug啊不表演吧!一、热身运动1.1 找到重复数字给定一个包含 n+1 个整数的数组 nums ,其数字都在 1 到..原创 2021-08-13 10:01:45 · 576 阅读 · 0 评论 -
中国大学 MOOC Android 性能优化:冷启动优化总结
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w5qovJbB-1627628080321)(/img/bVcTNAX)]联系我们:有道技术团队助手:ydtech01 / 邮箱:ydtech@rd.netease.com本文的重点在于如何定量的排查冷启动过程中的耗时操作,并提供对应的优化思路和实践方法总结。同时文本涉及到的冷启动优化主要涵盖两个方面:Application 的性能优化和 Launcher Activity 的性能优化。一、背景随着 app 整体迭代.原创 2021-08-05 10:06:21 · 417 阅读 · 0 评论 -
JAVA语言异步非阻塞设计模式(应用篇)
1.概述本系列文章共2篇。在上一篇《原理篇》中,我们看到了异步非阻塞模型,它能够有效降低线程IO状态的耗时,提升资源利用率和系统吞吐量。异步API可以表现为listener或Promise形式;其中Promise API提供了更强的灵活性,支持同步返回和异步回调,也允许注册任意数目的回调。在本文《应用篇》中,我们将进一步探索异步模式和Promise的应用:第2章:Promise 与线程池。 在异步执行耗时请求时,ExecutorService+Future是一个备选方案;但是相比于Future,P..原创 2021-07-22 10:04:35 · 389 阅读 · 0 评论 -
JAVA语言异步非阻塞设计模式(原理篇)
本系列文章共2篇,对 Java 语言的异步非阻塞模式进行科普。《原理篇》讲解异步非阻塞模型的原理,以及核心设计模式“Promise”的基本特性。《应用篇》会展示更加丰富的应用场景,介绍 Promise 的变体,如异常处理、调度策略等,并将 Promise 和现有工具进行对比。限于个人水平和篇幅,本系列以科普为主,内容更偏重于原理、API 设计、应用实践,但是不会深入讲解并发优化的具体细节。1.概述异步非阻塞[A]是一种高性能的线程模型,在 IO 密集型系统中得到广泛应用。在该模型下,系统发起耗时请求.原创 2021-07-14 16:24:23 · 311 阅读 · 0 评论 -
有道互动内容引擎 Ceramics 的业务实践
前言 Ceramics是一款HTML5互动题目引擎,主要为有道互动教学场景提供web互动题目开发解决方案,帮助开发者快速生产高质量的题目内容。本文将从业务场景出发,介绍Ceramics的技术实现,并讲述其如何高效地为高质量的互动内容生产赋能,希望能给对web互动技术感兴趣的前端开发人员提供一些参考。 一、背景 1、互动题目互动题目是有道在线教学中的重要组成部分,应用场景广泛,例如:在直播课堂中,通过教师端控制向学生端推送互动题目,学生在观看直播或课后回放时,均可收到互动题目,作答后可提交答案.原创 2021-07-07 18:33:53 · 488 阅读 · 0 评论 -
中国大学MOCC Android 客户端开发提效之页面信息
本文主要描述了怎么样提高一个客户端开发排查和定位的效率;并且动手写了一个小工具的实践和思考;以及团队中其他合作者能够提高了定位问题效率,验证功能是否准确的效率。原创 2021-06-30 18:05:42 · 253 阅读 · 2 评论 -
分布式事务框架seata落地实践
本文将以有道精品课项目组的物流后台服务为例,介绍 seata 框架落地的过程,遇到的问题以及解决方案。原创 2021-06-21 18:36:09 · 438 阅读 · 0 评论 -
网易有道开源EMLL:高性能端侧机器学习计算库,大幅提高计算性能
网易有道开源EMLL:高性能端侧机器学习计算库,大幅提高计算性能简介一、端侧AI端侧AI具有以下优势:端侧AI挑战:二、ARM第三方BLAS库EigenOpenBLASARM Compute Library三、EMLL特点高性能易用性扩展性四、EMLL性能优化方法分块重排汇编优化五、EMLL功能支持的计算函数支持的架构支持的端侧操作系统六、应用案例简介在人工智能技术不断深入发展的今天,我们对于计算的性能要求越来越高。传统的计算处理多数是基于云侧的,把所有图像、音频等数据通过网络传输到云中心进行处理后将结原创 2021-06-16 16:45:24 · 4469 阅读 · 0 评论 -
有道精品课全链路测试的改进和思考
导读这篇文章主要给大家分享精品课测试团队为保证大促稳定性,在最近一年半时间的所做的一些尝试和探索。比如,如何准确预估开闸瞬间的用户流量,如何更好地进行性能优化后的验证和回测,如何解决夜深人静压测的尴尬等等。值得欣慰的是,经过持续测试和优化,精品课的所有服务,在几十亿规模的交易流量下,都表现出了很好的稳定性和可靠性。作者/ 有道精品课测开小组编辑/ Ein背景类似于电商平台的618,双11大促,在线教育平台也存在两个重要的时间节点:04月春续暑秋,10月秋续寒春,产研侧需要针对销售策略与售.原创 2021-06-04 15:00:22 · 607 阅读 · 0 评论 -
从源码中来,到业务中去,React性能优化终极指南
前言:我们从React源码入手,结合有道精品课大前端的具体业务,运用三大原则对系统进行外科手术式的优化。同时介绍React Profiler这款工具如何帮我们定位性能瓶颈前言:我们从React源码入手,结合有道精品课大前端的具体业务,运用三大原则对系统进行外科手术式的优化。同时介绍React Profiler这款工具如何帮我们定位性能瓶颈作者/ 安增平编辑/ EinReact性能优化是在业务迭代过程中不得不考虑的问题,大部分情况是由于项目启动之初,没有充分考虑到项目的复杂度,定位该产品的用.原创 2021-05-27 10:41:38 · 2332 阅读 · 1 评论 -
网易云课堂个性化推荐实践与思考
作者/ 韩虹莹 编辑/ Ein从人和信息的博弈谈推荐系统缘起首先谈谈我理解的推荐系统。如果说推荐系统的定义是什么,每本书每篇文章说的都不太一样,协同过滤1992年就已经有了,三十年里无数大佬分析了个性化推荐的缘起和意义,世界已经不需要多一个人的见解。但是,当所有人都说一件事情是正确的时候,我们也要想清楚它为什么是正确的。如果你问我推荐系统是什么,我会告诉你,是信息到人的精准分发。那么为什么在这个时代推荐系统才应运而生?古人不会需要信息精准分发,车马信息都很慢,古人学富五车不过现在一个书包的信..原创 2021-04-28 15:00:30 · 833 阅读 · 0 评论 -
有道写作浏览器扩展实践
有道写作浏览器扩展作为一款为网页增加英文语法批改的辅助工具,允许用户在任意网页上绝大部分的富文本编辑器、多行文本输入框中编辑英文文本,可实时得到批改结果反馈,并自行接受建议自动修改,实现完美写作。来源/ 有道技术团队公众号作者/ 李靖雯编辑/ 刘振宇一、背景介绍有道写作服务是有道出品的写作智能批改产品,为用户提供优质的作文拼写、语法、样式方面的批改服务。有道写作不仅仅支持浏览器扩展形式,还支持在其他平台使用:例如有道词典 APP-作文批改、Web 在线端、Word 插件、PC 词典内。欢迎各..原创 2021-04-15 15:00:03 · 1671 阅读 · 0 评论 -
团队协作中,如何写出让同事赞不绝口的代码
团队中的每个人都会用不同的视角来’审视‘你的”作品“,那么我们如何拿出一份像艺术品一样的项目代码,然后赢得得同事们的赞许呢?作者/ 琼虎(安增平)编辑/ hjy00 前言在加入了拥有较高技术底蕴的有道精品课团队后,发现自己在前面的职业生涯中养成的一些‘作坊’习惯必须得到纠正。在日常工作中,研发同学只在coding阶段中不需要别人关心自己的代码,其他需要将自己的产出展示给别人的场景变得十分常见。简单举几个例子:① feature准入后,同产品业务线的同事需要trans-review② me.原创 2021-04-08 10:20:20 · 574 阅读 · 0 评论 -
有道云笔记新版编辑器架构设计(下)
上期文章,我们从整体上介绍了富文本编辑器的背景,并分享了有道云笔记新版编辑器技术选型中的模型和渲染部分。本期文章,我们将继续分享技术选型中的编辑和指令部分内容,并详细解读有道云笔记编辑器的分层架构设计。作者/ 金鑫编辑/ 刘振宇二、云笔记新版编辑器技术选型2.3 编辑由于 contentEditable 会产生不受控事件,导致很多 bug,例如,一开始数据是 abc,对应渲染出的视图是一个 span,内容是 abc。由于需要提供可编辑,span abc 是一个 contentEdi..原创 2021-04-01 10:42:48 · 879 阅读 · 0 评论 -
有道云笔记新版编辑器架构设计(上)
在开发有道云笔记的新版编辑器的过程中,我们遇到很多实际问题,愈发感觉到这是一个非常有深度的前端技术领域,所以我们将新版编辑器的技术选型、架构和部分实现细节拿出来分享给大家,希望对大家开发富文本编辑器、做复杂系统的架构设计有一定参考意义。作者/ 金鑫编辑/ Ryan来源/ 有道技术团队(ID: youdaotech)1. 富文本编辑器背景1.1 什么是编辑器编辑器在前端开发领域是指可以提供给用户编辑纯文本、富文本、代码、多媒体内容等的功能模块,例如以云笔记为例,编辑器指下图中绿色的区域。..原创 2021-03-31 17:40:52 · 1306 阅读 · 1 评论 -
硬件测试的思考和改进:有道词典笔的高效测试探索
作者/ 刘哲; 编辑/ Ryan ; 来源/ 有道技术团队(ID: youdaotech)引言当我们提到智能硬件的高效测试时,通常会考虑使用自动化测试的方案,提升产品的测试效率和质量。由于智能硬件的使用过程中,包括了大量和用户的行为交互,这就导致在测试方案上,传统的软件自动化测试很难完全模拟用户的完整使用行为。因此,我们除了要考虑借鉴和使用软件测试的思路之外,还要考虑如何实现硬件测试自动化。一、背景有道词典笔 2.0 是网易有道自研的学习型智能硬件。有道词典笔搭载了有道自研的 OCR、NM.原创 2021-03-30 16:43:16 · 2591 阅读 · 2 评论 -
技术杂谈 | Flutter 的性能分析、工程架构与细节处理
出品 | 有道智云编辑 | Ryan来源 | 有道技术团队(ID:youdaotech)一、为何 Flutter跨端技术众多,为何选择 Flutter?它能带来哪些优势,有哪些缺点?先看看具体的工程效果:https://v.qq.com/txp/iframe/player.html?vid=z316221rmveweb 端效果体验:https://test-pupilmath.youdao.com/pupil-flutter-test/web/#/1.1 Flutter VS 原生无论.原创 2021-03-24 10:46:18 · 869 阅读 · 1 评论 -
有道 Kubernetes 容器API监控系统设计和实践
有道 Kubernetes 容器API监控系统设计和实践1.背景2.技术选型方案分析3.整体设计思路4.具体实践操作4.1 添加service 级别API监控告警4.2 自动生成pod API监控5.难点和重点问题解决5.1 误报消减5.2策略优化5.3易用性5.4业务适配6.上线效果7.总结与展望7.1总结7.2展望8.结语本期文章,我们将给大家分享有道容器服务API监控方案,这个方案同时具有轻量级和灵活性的特点,很好地体现了k8s集群化管理的优势,解决了静态配置的监控不满足容器服务监控的需求。并做了原创 2021-03-11 11:07:33 · 677 阅读 · 1 评论 -
有道精品课实时数据中台建设实践
撰文/ 李荣谦编辑/ Ryan来源:有道技术团队(ID: youdaotech)0 序言本期文章中,有道精品课技术团队将和大家分享有道精品课数据中台的架构演进过程以及 Doris 作为一个 MPP 分析型数据库是如何为不断增长的业务体量提供有效支撑并进行数据赋能的。本文以我们在实时数仓选型的经验为切入点,进一步着重分享使用 Doris 过程中遇到的问题,以及我们针对这些问题所做出的调整和优化。1 背景概述1.1 业务场景根据业务需求,目前有道精品课的数据层架构上可分为离线和实时两部分。离线原创 2021-03-18 10:53:38 · 928 阅读 · 0 评论 -
网易 Duilib:功能全面的开源桌面 UI 开发框架
01 网易 Duilib 框架概述Duilib 是 Windows 系统下的开源的 DirectUI 界面库(遵循 BSD 协议),完全免费,可用于商业软件开发。Duilib 可以简单方便地实现大多数界面需求,包括换肤、换色、透明等功能,支持多种图片格式,使用 XML 可以方便地定制窗口,能较好地做到 UI 和逻辑相分离,尽量减少在代码里创建 UI 控件。目前,Duilib 已经在国内有较为广泛的使用。网易在研发网易易信 PC 版时引入 Duilib,经过多年开发和改进,由网易云信在2019年4月开.原创 2021-03-16 11:28:04 · 7031 阅读 · 12 评论