自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我相信......

爱就一个字

  • 博客(759)
  • 资源 (3)
  • 收藏
  • 关注

原创 重温《Effective Java》

如果忘掉其他的数据结构, 只留下一种,或许会是哈希表;如果忘掉其他的安全技术,只留下一种,或许会是访问控制;如果扔掉手中其他的Java 手册,只留下一本,对于期望写出高效而优雅代码的工程师而言,那或许就是《Effective Java》。“大道易得,小术难求”, 如果一本书中道与术兼备,很可能会成为经典之作,而《Effective Java》一书则可能是经典中的经典。作者Joshua Bloch是...

2024-04-14 20:24:26 565

原创 提示工程中的10个设计模式

我们可以将提示词定义为向大型语言模型(Large Language Model,LLM)提供的一个查询或一组指令,这些指令随后使模型能够维持一定程度的自定义或增强,以改进其功能并影响其输出。我们可以通过提供细节、规则和指导来引出更有针对性的输出,从而使提示词更加具体。提示词越具体,输出就越精确,关于提示工程的更多信息可以参考《解读提示工程(Prompt Engineering)》以及《Agent ...

2024-04-06 20:24:37 623

原创 《基础设施即代码(IaC)》译者序

随着信息技术的飞速发展,我们对基础设施的理解也在不断深化。传统的基础设施往往被看作是硬件和软件的堆砌,而现在,基础设施的概念已经发生了巨大的变化。在当今这个信息化、数字化的时代,基础设施已经成为了企业和组织运行的核心。在云计算、大数据、人工智能等技术的推动下,基础设施不再是单纯的硬件和软件,而是一种基础架构,一种设计思想。在软件工程领域,DevOps是“左移”运动的重要体现。DevOps是一种创新...

2024-03-31 20:24:57 659

原创 大模型应用的10种架构模式

在塑造新领域的过程中,我们往往依赖于一些经过实践验证的策略、方法和模式。这种观念对于软件工程领域的专业人士来说,已经司空见惯,设计模式已成为程序员们的重要技能。然而,当我们转向大模型应用和人工智能领域,情况可能会有所不同。面对新兴技术,例如生成式AI,我们尚缺乏成熟的设计模式来支撑这些解决方案。作为一位老码农,我在这里整理总结了一些针对大模型应用的设计方法和架构模式,试图应对和解决大模型应用实现中...

2024-03-24 20:24:20 728

原创 浏览器架构的温故知新

【引子】前端可能是一个日新月异的领域,我们很难了解其中的方方面面。但是,前端系统一般都以浏览器作为运行环境, 对浏览器的进一步理解有助于我们更好地开发前端应用。这也是本文的由来之一,也作为对runtime的一次实例分析。浏览器架构经历了从单进程浏览器到多进程浏览器的转变。在强调稳定性、平滑性和安全性的同时,进程开始分解为渲染、 GPU、网络和插件等,提高了架构的整洁性。回顾浏览器的架构,需要进一步...

2024-03-17 20:25:02 958 1

原创 双手沾泥,大模型应用并不神秘

【引子】感谢图灵出版社英子老师赠书——《大模型应用开发极简入门》,读过之后,正好和自己的大模型系列文章相互印证,于是将读后感汇成此文。如今,大模型应用已经渗透到各个领域,从自然语言处理到计算机视觉,再到推荐系统。这些复杂而强大的模型,如 GPT-3.5/4、文心一言和 Claude3,成为科技领域的瑰宝,引领着人工智能的浪潮。然而,对于许多初学者来说,这些大模型应用似乎充满神秘色彩,仿佛只有少数...

2024-03-10 20:24:12 983

原创 《精益DevOps》译者序

计算机网络的发展导致了IT领域中的两个重要发展——虚拟化和分布式计算,云服务是虚拟化的一个直接体现,而微服务架构则是分布式计算的一个重要应用领域。不论是虚拟化还是分布式计算,都对软件工程中的研发效能提出了新的问题和挑战,于是DevOps 应运而生。然而。大道易得,小术难求。 我们很容易理解DevOps为IT服务交付带来的诸多益处,但对如何让DevOps 真正融入我们的软件工程中往往...

2024-03-03 20:24:50 959

原创 在大模型RAG系统中应用知识图谱

【引子】 关于大模型及其应用方面的文章层出不穷,聚焦于自己面对的问题,有针对性的阅读会有很多的启发,本文源自Whyhow.ai 上的一些文字和示例。对于在大模型应用过程中如何使用知识图谱比较有参考价值,特汇总分享给大家。在基于大模型的RAG应用中,可能会出现不同类型的问题,通过知识图谱的辅助可以在不同阶段增强RAG的效果,并具体说明在每个阶段如何改进答案和查询。知识图谱更类似于结构化数据存储,而不...

2024-02-25 20:24:30 1989

原创 面向知识图谱的大模型应用

【引子】春节期间,读了论文《An LLM Compiler for Parallel Function Calling》(https://arxiv.org/abs/2312.04511), 颇受启发,或许可以通过LLM Compiler 实现已有知识图谱系统的大模型赋能, 实现面向知识图谱的大模型应用。知识图谱的应用由来已久,如果企业已经投资了知识图谱系统,而且效果还不错,需要用LLM重新实现一...

2024-02-17 20:25:01 404

原创 大模型系列——解读RAG

RAG 是2023年最流行的基于 LLM 的应用系统架构。有许多产品几乎完全建立在 RAG 之上,覆盖了结合网络搜索引擎和 LLM 的问答服务,到成千上万个数据聊天的应用程序。很多人将RAG和Agent 作为大模型应用的两种主流架构,但什么是RAG呢?RAG又涉及了哪些具体的技术呢?1. 什么是RAGRAG即检索增强生成,为 LLM 提供了从某些数据源检索到的信息,并基于此修正生成的答案。RAG ...

2024-02-04 20:24:13 1234

原创 让知识图谱成为大模型的伴侣

大型语言模型(LLM)能够在短时间内生成非常流畅和连贯的文本,为人工智能的对话、创造性写作和其他广泛的应用开辟了新的可能性,然而,LLM也有着一些关键的局限性。它们的知识仅限于从训练数据中识别出的模式,这意味着缺乏对世界的真正理解。同时,推理能力也是有限的,不能进行逻辑推理或从多种数据源来融合事实。面对更复杂、更开放的问题时,回答开始变得荒谬或矛盾,美其名曰“幻觉”。为了弥补这些差距,检索增强生成...

2024-01-28 20:24:12 956

原创 API协议设计的10种技术

在这个数字时代,我们的日常生活中充斥着各种应用程序和系统之间的交互。无论是社交媒体、在线购物还是智能家居设备,它们都需要通过API(应用程序接口)来实现数据的传输和通信。然而,这些看似简单的操作背后隐藏着复杂的协议。API协议包含了一组规则和标准,用于定义不同系统之间如何进行通信和共享数据。它们充当了不同应用程序之间的桥梁,使它们能够相互理解和交流。API协议的设计和实现需要考虑到安全性、可靠性和...

2024-01-21 20:24:40 1020

原创 老码农眼中的数字孪生

数字孪生,自2016年起连续4年被Gartner列为十大战略科技发展趋势之一。数字孪生技术作为解决数字模型与物理实体交互难题,践行数字化转型理念与目标的关键使能技术,在支撑产品研制业务全流程、助力科研生产和管理的融合创新方面将发挥重要作用。那么什么是数字孪生呢?与物联网又有什么关系呢?与企业的数字化转型又有什么关系呢?1. 什么是数字孪生数字孪生的雏形 “镜像空间模型” 最早由美国密歇根大学Mic...

2024-01-14 20:24:32 954

原创 程序员关于学习的10件事

【引子】新年伊始,每个人都会定一点儿自己的学习目标或者学习计划。石头兄弟推荐给我一篇文章,其中阐述了一些对学习本身的认知,而且是站在程序员的视角上,https://cacm.acm.org/magazines/2024/1/278891-10-things-software-developers-should-learn-about-learning/fulltext,读后颇有感触,遂编译成文,分...

2024-01-07 20:24:23 6244 3

原创 梦里河山:自在正定,跨年寄语

‍‍雏鹰高飞,我们也渐渐失去了新年第一天去香炉峰顶祈福的动力。向往着梦里河山,于是启动了这次的跨年之旅。雾途放假的第一天,早早起床,7点钟开车驱往赵子龙的故乡——正定。万万没有想到,出了五环,晨雾越来越浓,能见度渐渐小于10米了。安全第一,我们驶入了固安服务区。停下车,居然看不到卫生间和加油站。求助于打扫卫生的大爷,才辨别了方向,寻到了永和豆浆,驻足休息。一个小时之后,窗外浓雾稍淡,出门寻找加油站...

2024-01-01 20:39:30 944

原创 2023年,不缀的脚步

匆匆,时光从指尖溜走,匆匆,时光染白了发梢,匆匆,时光在倾听着我们匆匆的脚步。2023年,平凡而又非常不同以往,一个50多岁的IT人再一次换了工作,对那些贩卖焦虑的人来说往往被称为特例,或者被当成幸存者偏差,浮躁和无奈会蒙蔽人们的视听,让人们看不到他们不能轻易得到的东西。事实上可能并不复杂,可以扪心自问,我们真的喜欢技术么?能够从工作中获得乐趣么?工作乐趣工作的乐趣大体有三个。第一个是赚钱养家,赡...

2023-12-28 09:10:12 870

原创 机器学习模型性能的10个指标

尽管大模型非常强大, 但是解决实践的问题也可以不全部依赖于大模型。一个不太确切的类比,解释现实中的物理现象,未必要用到量子力学。有些相对简单的问题,或许一个统计分布就足够了。对机器学习而言, 也不用言必深度学习与神经网络,关键在于明确问题的边界。那么在使用ML解决相对简单问题的时候,如何评估一个机器学习模型的性能呢?这里给出了10个相对常用的评价指标,希望对产研同学有所帮助。1. 准确率准确率是机...

2023-12-24 20:23:25 767

原创 解读LoRA

大模型调优(finetuning)不仅仅是参数的优化,同样会受到非功能性约束的挑战,例如:计算效率约束:训练过程应该快速而廉价。内存计算高效:不应该需要大量的GPU来微调LLM。易于部署:不应该为每个要解决的任务部署LLM的多个副本。在一定程度上,LoRA(Low-Rank Adaptation)可以较好地面对这些挑战。使用LoRA,可以降低微调专用LLM的门槛,同时实现与端到端微调相当的性能,能...

2023-12-17 20:23:54 145

原创 《一书读懂物联网》前言

我们对知识的认知是有规律可循的,大都是从问题开始,对问题的界定、归纳等都是为解决知识增长或进化而服务的,正如波普尔知识进化图(见图 i-1)所示的那样。科学始于问题,发现问题是科学知识增长的起点,任何新的科学知识的产生都来源于问题。一个问题(P1)的技术解决方案(TS)往往不止一个,而是有很多个,各种技术解决方案形成一个集合,在对其进行严格的实际检验、明确场景、排除错误(EE)后,才能筛选出较好的...

2023-12-13 20:23:11 308

原创 《一书读懂物联网》作者序

“光阴荏苒,日月如梭”,这句话在物联网时代尤为贴切。随着信息技术的快速发展,物联网已成为当今世界上最热门的话题之一,将无数种设备、传感器、网络和应用程序联系在一起,形成一个庞大的网络,给我们的生活带来了前所未有的便利。虽然物联网已经进入了我们的日常生活,但对于大多数人来说,物联网可能仍然是一个相对陌生的概念,因为它牵扯的技术和概念比较庞杂。物联网作为一个超系统,它是什么、它如何运作、它的应用范围有...

2023-12-12 09:33:38 101

原创 全栈必备之SQL简明手册

【引子】曾经的少年问我SQL是什么,我一时似乎有千言万语,但又不知从哪说起。作为一名码农工匠,基础的东西也可能需要温故知新,系统梳理,常用常新。从编程语言的视角来看,SQL是一种强大而灵活的语言,具有嵌套特性,允许用户以高效且简洁的方式与数据库进行交互。通过SQL,用户可以轻松地对数据库中的数据进行CRUD等操作,从而满足各种数据处理需求。1. SQL 的基本原理作为一种高级的非过程化编程语言,S...

2023-12-10 20:24:00 85

原创 大模型应用设计的10个思考

技术不是万能的,但没有技术却可能是万万不能的,对于大模型可能也是如此。基于大模型的应用设计需要聚焦于所解决的问题,在自然语言处理领域,大模型本身在一定程度上只是将各种NLP任务统一成了sequence 到 sequence 的模型。利用大模型, 我们是在解决具体的生产和生活中的问题,产品和技术上的设计仍然不可或缺。那么,如果大模型正在重新构建软件工程的未来,我们是否应该遵循一些基本原则呢?1. 模...

2023-12-03 20:23:33 138

原创 解读向量数据库

不论是RAG,还是Agent,几乎每个LLM 驱动的应用程序都可能会用到向量数据库。那么,向量数据库是什么?与传统数据库有何不同?又如何选择向量数据库呢? 本文是老码农关于向量数据库的学习笔记。1. 什么是向量数据库?首先,我们需要理解什么是向量?向量是基于不同特征或属性来描述对象的数据表示。每个向量代表一个单独的数据点,例如一个词或一张图片,由描述其许多特性的值的集合组成。这些变量有时被称为“...

2023-11-26 20:23:16 5014 3

原创 大模型应用框架之Semantic Kernel

随着大模型应用开发的兴起,各种应用开发框架也蓬勃兴起。对应于大模型的应用方向RAG和Agent, 微软分别推出了Semantic Kernel 和 Autogen 两个框架。本文是Semantic Kernel 的一些学习笔记,或许,Semantic Kernel 的成功应用应该算是微软的office copliot 全家桶了。什么是Semantic Kernel?Semantic Kernel是...

2023-11-19 20:23:39 368

原创 从隐私悖论到隐私工程

【引子】隐私和安全是计算机领域永恒的主题之一。大模型本身是一种先进的生产力,它在很大程度上能够推进技术的进步和应用范围的拓展。然而,与此同时,大模型的应用也可能带来隐私和安全的挑战。例如,联邦学习与大模型的结合目前还面临着许多挑战,包括安全威胁及防御、隐私威胁与增强、效率问题以及处理非独立同分布(Non-IID)数据等问题。这些问题可能会对用户的隐私造成潜在的威胁。重要的一点是如何利用大模型来“对...

2023-11-12 20:23:22 159

原创 大模型应用于数字人

大模型会改变整个软件行业, 其中具有代表性的产品之一是数字人, 那么,什么是数字人呢?数字人涉及了哪些关键技术呢?大模型对数字人的发展带来哪些影响呢?1. 什么数字人?数字人目前还缺乏一个相对统一的定义, 有人把人类的数字孪生体定义为数字人,有人把虚拟世界中具有人类行为的实体定义为数字人,有人将3D人体模型称为数字人,例如,韩国学界对数字人的定义是:用数字化技术,打造具有逼真人类长相、语言、动作姿...

2023-11-05 20:23:33 239

原创 Agent 应用于提示工程

如果Agent模仿了人类在现实世界中的操作方式,那么,能否应用于提示工程即Prompt Engingeering 呢?从LLM到Prompt Engineering大型语言模型(LLM)是一种基于Transformer的模型,已经在一个巨大的语料库或文本数据集上进行了训练,包括了互联网上的大多数网页。在训练期间,需要花费大量的时间(和/或图形处理器)、能量和水(用于冷却) ,梯度下降法被用来优化模...

2023-10-29 20:23:05 451

原创 《语音优先》智能语音技术驱动的交互界面设计与语音机器人设计(译者序)...

“言为心声,语为心境”,语言与对话是我们沟通与协作的重要方式。而智能语音技术是一种基于人工智能和自然语言处理技术的语音交互技术。它可以通过语音识别技术将用户的语音指令转换为文本,然后通过自然语言处理技术对文本进行分析和理解,最终生成相应的响应或执行相应的操作。虽然智能语音技术由来已久,但直到亚马逊Echo智能音箱的诞生才再一次引发了业界对智能语音技术的广泛关注,因为这样的智能音箱带给了人们一种叫作...

2023-10-22 20:23:09 744

原创 《语音优先》智能语音技术驱动的交互界面设计与语音机器人设计(译者序)...

“言为心声,语为心境”,语言与对话是我们沟通与协作的重要方式。而智能语音技术是一种基于人工智能和自然语言处理技术的语音交互技术。它可以通过语音识别技术将用户的语音指令转换为文本,然后通过自然语言处理技术对文本进行分析和理解,最终生成相应的响应或执行相应的操作。虽然智能语音技术由来已久,但直到亚马逊Echo智能音箱的诞生才再一次引发了业界对智能语音技术的广泛关注,因为这样的智能音箱带给了人们一种叫作...

2023-10-22 20:23:09 115

原创 《语音优先》智能语音技术驱动的交互界面设计与语音机器人设计(译者序)...

“言为心声,语为心境”,语言与对话是我们沟通与协作的重要方式。而智能语音技术是一种基于人工智能和自然语言处理技术的语音交互技术。它可以通过语音识别技术将用户的语音指令转换为文本,然后通过自然语言处理技术对文本进行分析和理解,最终生成相应的响应或执行相应的操作。虽然智能语音技术由来已久,但直到亚马逊Echo智能音箱的诞生才再一次引发了业界对智能语音技术的广泛关注,因为这样的智能音箱带给了人们一种叫作...

2023-10-22 20:23:09 84

原创 《语音优先》智能语音技术驱动的交互界面设计与语音机器人设计(译者序)...

“言为心声,语为心境”,语言与对话是我们沟通与协作的重要方式。而智能语音技术是一种基于人工智能和自然语言处理技术的语音交互技术。它可以通过语音识别技术将用户的语音指令转换为文本,然后通过自然语言处理技术对文本进行分析和理解,最终生成相应的响应或执行相应的操作。虽然智能语音技术由来已久,但直到亚马逊Echo智能音箱的诞生才再一次引发了业界对智能语音技术的广泛关注,因为这样的智能音箱带给了人们一种叫作...

2023-10-22 20:23:09 94

原创 基于大模型(LLM)的Agent 应用开发

目前,业界一般认为基于大模型的应用集中在两个方向上:RAG 和 Agent,无论哪一种应用,设计、实现和优化能够充分利用大模型(LLM)潜力的应用都需要大量的努力和专业知识。随着开发人员开始创建日益复杂的LLM应用程序,开发流程不可避免地变得更加复杂。这种流程的潜在设计空间可能是巨大而复杂的,《如何构建基于大模型的App》一文给出了一种探索中的大模型应用开发基础框架,基本可以适用于RAG 和Age...

2023-10-15 20:24:01 2415 1

原创 解读提示工程(Prompt Engineering)

提示工程(Prompt Engineering),也称为上下文提示,是一种通过不更新模型的权重/参数来引导LLM行为朝着特定结果的方法。这是与AI有效交流所需结果的过程。提示工程可以用于各种任务,从回答问题到算术推理乃至各种应用领域,理解提示工程,能够帮助我们了解LLM的限制和能力。为了理解提示工程,先要澄清什么是Prompt。1.什么是PromptPrompt提示是什么呢?Prompt提示是模型...

2023-10-11 22:22:35 2341

原创 解读大模型(LLM)的token

当人们谈论大型语言模型的大小时,参数会让我们了解神经网络的结构有多复杂,而token的大小会让我们知道有多少数据用于训练参数。正像陆奇博士所说的那样,大型语言模型为从文本生成到问题回答的各种任务提供了令人印象深刻的能力,不仅彻底改变了自然语言处理(NLP)领域,而且作为基础模型会改变整个软件生态。这些模型的一个经常被忽视的关键点是“token”的作用,即模型处理的各个信息单元。大型语言模型(LLM...

2023-10-06 20:23:53 4604 1

原创 解读LangChain

随着OpenAI在2020年发布了开创性的GPT-3,我们见证了LLM的普及度稳步攀升,如今还在逐渐升温发酵。这些强大的人工智能模型为自然语言处理应用带来了新的可能性,使开发人员能够创建更为复杂、类似于人类交互的聊天机器人、问答系统、摘要工具等产品。LangChain作为一个多功能框架应运而生,旨在帮助开发人员充分发挥LLMs在各种应用中的潜力。基于“链式”不同组件的核心概念,LangChain简...

2023-09-28 08:36:29 350

原创 如何构建基于大模型的App

ChatGPT 的出现让大模型再一次成为业界的关注热点,然而,并不是每个组织都要去训练及生成大模型的,而且各个组织的技术积累和计算资源也不太允许这样去做。更多的时候, 我们还是基于大模型开发业务应用。所谓智能原生(AI Native),往往是指那些没有大模型就无法成立的应用,那是一些新的业务机会和挑战。很多时候, 我们还只是Applied AI, 即通过AI 尤其是大模型为应用赋能。不论是AI 原...

2023-09-24 20:23:06 290

原创 可信而可靠,关于Rust 的学习

最早接触到Rust是在几年前的一次技术大会上, 黄东旭说TiKV 是用Rust 语言编写的, 引起了我的一些兴趣,但只是保持关注而已。我一直认为每一种编程语言都有着各自的典型应用领域, 也有着各自的编程范式,没有最好的编程语言(参见《PHP是最好的编程语言吗?》), 但存在最适合当前的问题领域的编程语言。个人认为,所谓全栈工程师,至少要掌握4种编程语言——C/C++,Java, JavaScrip...

2023-09-17 20:23:39 123

原创 支持事务的分布式NoSQL——FoundationDB

【引子】周末阅读时光,一篇好的论文(https://cacm.acm.org/magazines/2023/6/273229-foundationdb-a-distributed-key-value-store/fulltext),开阔了眼界,支持事务语义的NoSQL应该放到软件系统架构备选方案之中。FoundationDB是一个开源的事务性键值存储系统,是最早将NoSQL架构的灵活性和可扩展性与...

2023-09-10 20:23:09 399

原创 Qcon2023: 大模型时代的技术人成长(简)

我目前致力于操作系统相关的研发,公司的目标是打造物联网时代的智能原生操作系统。如何实现操作系统的AI Native 呢?带着这样的疑问我参加了Qcon2023 北京站的大会。与Qcon 2022 北京站不同的是,身份变了,上次是分享者,这次是出品人,出品的专题是——大模型时代的技术人成长。在大模型时代,技术人如何成长呢?划分为3个话题:大模型时代的特点是什么?对个人提出了哪些新的要求...

2023-09-04 21:36:23 238

原创 一文读懂互联网的架构本质

【引子】谈到互联网,很多人脑海中会出现各种各样的术语和服务,但是互联网是如何设计并构建的呢?作为一个网络,互联网的架构本质是什么?石头兄弟和我曾经一起译过一本《计算机网络问题与解决方案》的巨著,但真正仔细阅读并从中有所收获的朋友并不多。最近,石头兄弟推荐了另一篇文章https://cacm.acm.org/magazines/2023/2/268956-extracting-the-essent...

2023-08-27 20:23:43 246

萃智(TRIZ)文摘

来自中国萃智网,对TRIZ的基本介绍,扫盲没有问题

2009-09-10

计算机世界1000期特稿——信息革命的流金岁月

历史也是一种解释。 时间可能是宇宙中惟一一个义无反顾的前行者,它只有一个向前的方向,因此,时间也就成了这个宇宙中最冷酷的标尺。人是最复杂的动物,有着最丰富的情感,有时坚强,有时懦弱,有时勇往直前,有时瞻前顾后。所以,人就成了时间最驯服的奴隶。时间的冷酷加上人类的情感决定了人总会追溯过去,而且会用无数的“假设”和“如果”去玩味过去的记忆。媒体是天生的“记录者”,因此就更乐于帮助人们唤起对往事的回忆,而且还会有意识地把对过去的理解延伸到对未来的判断,虽然这些判断在未来大多会沦为笑谈。

2008-11-24

Internet Email协议开发指南

POP3,IMAP4,STMP等等协议的程序开发实现

2008-10-29

空空如也

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

TA关注的人

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