自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 资源 (4)
  • 收藏
  • 关注

原创 问答系统设计:核心架构解析

前面介绍了构建问答(QA)系统的三种核心方法。重要的是,没有一个方法可以称之为绝对的最佳选择:每种方法都有其独特的优点和局限性。因此,在选择合适的QA系统架构之前,首先需要对问题进行深入分析,以确保所选架构能够提供更优的性能。值得一提的是,开放式生成问答(Open Generative QA)架构目前在机器学习领域内备受关注,尤其是随着最近出现的创新性检索增强生成(RAG)技术。如果你是一名自然语言处理(NLP)工程师,那么你绝对应该密切关注RAG系统,因为它们目前正以极快的速度发展。

2024-03-08 23:30:42 1028

原创 OpenAI Sora:距离黑客帝国仅一步之遥

在2024年2月15日,OpenAI 介绍了其今年最为突破性的人工智能创新——Sora。Sora 不仅是一款前沿的文本到视频转换模型,更是在技术发展史上的一座里程碑。它拥有生成多种宽高比和分辨率下、长达一分钟的高质量视频的独特能力,将现有技术水平提升到了新的高度。与市面上其他同类产品相比,Sora的先进性不容小觑,功能之全面、扩展性之强大,使其获得了“世界模拟器”的美誉。本文目的是向那些对Sora尚未有深入了解的读者提供一个清晰、易懂的介绍。

2024-02-23 07:55:09 940

原创 再谈Redis三种集群模式:主从模式、哨兵模式和Cluster模式

redis主从:可实现高并发(读),典型部署方案:一主二从redis哨兵:可实现高可用,典型部署方案:一主二从三哨兵redis集群:可同时支持高可用(读与写)、高并发,典型部署方案:三主三从

2024-01-30 17:37:25 1714

原创 让你的 Python 代码更快的 9 个技巧

在最近参加的一些技术会议上,我常常听到参会员在会中讨论技术选型时提到“Python太慢了”。然而,这种观点往往没有考虑到Python的众多优点。实际上,如果能够遵循Pythonic的编程风格,Python的运行速度可以非常快。这其中的关键在于掌握一些技术细节上的巧妙技巧。那些经验丰富的Python开发者通常掌握着许多既微妙又强大的方法来提升代码性能。这些技巧虽然看似简单,但实际上能够显著提高编程效率。接下来,我们将深入讨论九种可以改变你编写和优化Python代码方式的方法。

2023-12-31 20:35:58 927

原创 架构设计的技术陷阱:如何避免8个致命的错误

在绝大多数架构项目中,往往会出现一系列常见的失误,然而,透彻认识并理解这些失误,我们或许能够有效地降低它们再次发生的风险。本文专注于探讨技术架构设计领域中常见的失误,而不深入考虑项目交付、人员因素和商业模式等方面。

2023-10-02 10:12:37 216

原创 REST API设计原则:构建可扩展、易维护的 API

在当前的研发环境中中,具象状态传输(REST)已然成为构建 Web 服务和API的首选架构风格。其流行程度源于其卓越的简单性、可扩展性以及用户友好的特点。RESTful API使开发人员能够利用标准的HTTP方法和URL模式与服务器进行交互,从而让API易于理解,并能够跨越各种平台和编程语言得以应用。REST 设计原则为创建高效且可扩展的API提供了关键指导。恪守这些原则,您能够构建易于维护、易于集成和升级的API,从而为开发人员和最终用户提供了无缝的体验。

2023-09-21 10:05:59 147

原创 一文读懂SSL、TLS和mTLS的通信安全协议

今天让我们深入探讨一下SSL、TLS和mTLS等一系列重要的通信安全协议。尽管从整体系统设计的角度来看,这个主题可能并不是至关重要,但仍然值得我们深入了解。

2023-09-19 22:37:50 847

原创 缓存技术:加速应用,提高用户体验

本文总结前期某个系统中使用到的缓存使用经验—仅此而已,效果还不错。缓存技术在系统架构设计中扮演着至关重要的角色,它不仅可以显著提高系统的性能,还可以改善用户体验。在本文章中,我们将探讨不同类型的缓存、缓存失效以及缓存淘汰等关键概念,帮助在后期的架构设计中更好地理解如何利用缓存来优化你的系统。

2023-09-10 14:56:46 772

原创 网络延迟简介:为什么它重要,如何测量

延迟其实就是我们在网页浏览或者使用应用时,从我们点击请求到服务器返回结果给我们之间的时间差。就像你在跟朋友打电话,你说完话后,朋友听到并回应你所说话的时间差一样。我们的最终目标是创建一个系统,让这个时间差变得尽可能短,也就是实现零延迟。但现实世界中,有各种各样的问题会导致系统出现延迟。如果系统的延迟很低,那么我们请求得到响应的时间就会很短。每次你在浏览器中输入网址或者点击一个链接,浏览器都会向服务器发出一个请求信号,然后服务器需要处理这个请求,获取需要的信息,最后把这些信息返回给你的浏览器。

2023-09-09 23:31:11 269

原创 Pastebin设计之旅:从零设计网络文本存储系统

Pastebin及类似服务让用户能够在网络(通常指的是互联网)上存储纯文本或图像,并生成唯一的URL来访问上传的数据。这样的服务也被用来快速地在网络上共享数据,用户只需传递URL,其他用户就可以查看其内容。如果你以前没有使用过pastebin.com,建议尝试在那里创建一个新的“Paste”,并花些时间浏览他们服务提供的不同选项。这将在理解本章时有很大帮助。对于类似于Pastebin这样的代码或文本分享平台,中国并未有一款特别知名或广泛使用的网站。

2023-06-29 15:21:20 916

原创 引领系统设计:深度探索的分步手册

需要明确系统所需的API。这将明确系统预期的具体协议,并确保我们对需求的理解没有出错。在项目初期确定数据模型能够明确数据如何在各个系统组件之间流动。随后,它将成为数据分区和管理的指导。参与者需要确定各种系统实体,它们如何相互交互,以及数据管理的各个方面,例如存储、传输、加密等。对于微博系统的设计,以下是一些实体:用户:UserID, Name, Email, DoB, CreationDate, LastLogin等。

2023-06-29 15:14:04 122

原创 URL缩短服务:复杂问题的简洁解决方案

一旦我们确定了需求,接下来需要定义系统API。需要明确说明系统的预期功能。我们可以使用SOAP或REST API来公开我们服务的功能。参数(字符串):已注册账户的API开发者密钥。此密钥将用于,包括但不限于,根据用户分配的配额限制用户。(字符串):要缩短的原始URL。(字符串):URL的可选自定义键。user_name(字符串):可选的用于编码的用户名。(字符串):缩短URL的可选过期日期。返回:(字符串)成功插入返回缩短后的URL;否则,返回一个错误码。其中url_key。

2023-06-28 22:41:17 969

原创 决定AI大模型胜负的关键:解读数据在未来竞争中的角色

随着AI发展,高质量的数据已经成为AI大模型竞争的关键要素。无论是精度提升、训练时长缩减还是模型泛化能力提高,都离不开高质量、大规模、多样性的数据。但是,优质数据集的缺乏已经成为限制AI进步的瓶颈,尤其在中国,由于资金投入不足、数据开源意识缺乏以及市场影响力低等问题,优质数据集稀缺。尽管如此,中国政府对AI和数据治理的高度重视以及日渐增长的互联网用户群体,使得中国在数据集采集、清洗、标注等方面具有巨大的潜力和发展空间。

2023-06-26 17:46:58 418

原创 系统架构的精髓:18个必懂的设计概念一览

本文主要介绍了一些关于分布式系统的关键概念。包括内容分发网络(CDN),其通过地理位置近的服务器缓存和传递内容来提高性能。正向代理和反向代理分别作为客户端与互联网,或网页服务器与互联网之间的中介。数据库的缓存层可以提高数据访问速度,数据库的水平和垂直分区可以提高查询性能,而数据库复制(主从复制)可以提高数据的可用性和冗余性。在分布式系统中,消息传递系统用于在应用之间交换消息,微服务架构将一个应用分解为一组可以独立开发和部署的服务,NoSQL数据库用于处理非结构化数据,数据库索引可以提高查询速度。

2023-06-26 17:43:09 280

原创 NLP的核心:十大最流行的NLP技术深度解析。

本文讨论了各种自然语言处理(NLP)技术的实际应用和实现方式,其中包括情感分析、命名实体识别(NER)、文本分类、机器翻译、文本摘要生成、信息提取、文本生成、语音识别以及文本到语音(TTS)等。这些技术广泛应用于电子商务、社交媒体、客户服务、国际商务、政府、金融、医疗和内容创作等行业。本文通过详细示例,介绍了如何使用Python的各种库,包括nltk、spacy、scikit-learn、OpenNMT、Hugging Face的transformers、Speech Recognition和gTTS等,来

2023-06-25 11:37:28 2226

原创 每天学一点知识有用吗

在探索如何学习的路上,我注意到了基于微习惯的学习方式,比如每天在用十分钟的时间练习下普通话,或者每天写500字的总结。微习惯的方式虽然有些毛病,但我得说,密集式的项目也同样有烦人的问题!这种大动干戈的项目安排起来就头大,执行更是困难重重,再者可能因为缺乏足够的间歇时间,久而久之记住的东西也不多。最佳的做法并不是死抱着某一种方式不放,而是明白每种方法都有其长处和短处。所以,今天我想聊聊,微习惯这种学习方式到底对哪些学习更有用。

2023-06-23 13:58:35 215

原创 深入解析大型语言模型:从训练到部署大模型

随着数据科学领域的深入发展,大型语言模型—这种能够处理和生成复杂自然语言的精密人工智能系统—逐渐引发了更大的关注。LLMs是自然语言处理(NLP)中最令人瞩目的突破之一。这些模型有潜力彻底改变从客服到科学研究等各种行业,但是人们对其能力和局限性的理解尚未全面。LLMs依赖海量的文本数据进行训练,从而能够生成极其准确的预测和回应。像GPT-3和T5这样的LLMs在诸如语言翻译、问答、以及摘要等多个NLP任务中已经取得了令人期待的成果。

2023-06-23 13:57:38 2555

原创 分片和一致性哈希

在设计大规模分布式系统时,你可能会遇到两个概念——分片(sharding)和一致性哈希(consistent hashing)。虽然我在网上找到了很多关于这些术语的解释,但它们让我感到有些困惑。我觉得分片和一致性哈希本质上是在讨论同一件事——将数据分布在一组服务器上。我想—这两个概念是不是相同的,还是有所不同?如果你也有类似的困惑,让我们简要地来解释一下。

2023-06-23 13:55:13 496

原创 开源大语言模型完整列表

Large Language Model (LLM) 即大规模语言模型,是一种基于深度学习的自然语言处理模型,它能够学习到自然语言的语法和语义,从而可以生成人类可读的文本。所谓"语言模型",就是只用来处理语言文字(或者符号体系)的 AI 模型,发现其中的规律,可以根据提示 (prompt),自动生成符合这些规律的内容。LLM 通常基于神经网络模型,使用大规模的语料库进行训练,比如使用互联网上的海量文本数据。

2023-06-23 13:50:15 8502 1

原创 【软件架构模式】—微内核架构

内核模式也被称为插件架构模式。将附加应用程序功能作为插件添加到核心应用程序,以提供可扩展性以及功能分离和隔离。这种模式由两种类型的架构组件组成:一个核心系统和插件模块。应用程序逻辑分布在独立的插件模块和基础核心系统之间,提供应用程序特性和定制处理逻辑的可扩展性、灵活性和隔离性。从业务应用的角度看,核心系统通常被定义为没有特殊情况、特殊规则或复杂条件处理的定制代码的通用业务逻辑。

2023-06-23 13:49:01 2361

原创 【软件架构】流水线设计模式

让我们来看一个带有流水线的简单应用程序,它只会在控制台中显示 3 个步骤。流水线类还实现了 IOperation 接口,因此它们可以。在完成数据处理后,每个操作现在都必须调用流水线中的下一个操作。可以访问用户余额的线程。流水线的最基本实现是一个简单的操作序列。中运行,当时间到时,它将调用下一个。使用流水线设计模式的主要原因通常是。第一个插件将在流水线的第二个插槽中。另一个有用的功能是能够在与单个项目。有很多非常不同的实现方式,从简单的。流水线包装流水线并调用每个项目的。这一次,我们将使用带有断路器的。

2023-06-23 13:47:37 1583

原创 软件架构模式—分层架构

这是软件架构模式博客系列第 2 章,我们将讨论分层架构模式。分层架构模式是一种n层模式,其中组件按照水平层次进行组织。这是设计大多数软件的传统方法,旨在实现自我独立。这意味着所有组件之间相互连接,但彼此之间不相互依赖。该体系结构中有四层,其中每一层都在模块化和组件之间建立联系。从上到下,它们是:这种架构模式有四个层,每个层中的模块性和组件之间都有连接。:包含与展示相关的所有类别。:它包含业务逻辑。:用于处理对象关系映射等功能:存储所有数据。

2023-06-23 13:42:54 938

原创 实现微服务中的数据一致性:成功的策略

微服务架构已经彻底改变了我们构建和扩展应用程序的方式,提供了诸多优势,如提高了灵活性、可扩展性和故障隔离性。然而,由于微服务的分散性,跨服务维护数据一致性可能面临重大挑战。在本文中,我们将探讨不同的方法来解决微服务中的数据一致性问题,为您提供宝贵的见解,帮助您成功应对这个复杂的领域。

2023-06-23 13:38:36 819

原创 10 种分布式系统必备模式

在当今的技术领域中,分布式系统已成为许多大型应用程序和平台的核心。构建高性能、可伸缩和可靠的分布式系统是一个复杂的挑战,需要合理的架构设计和模式选择。本文将介绍10个必备的分布式系统模式,帮助您更好地理解和应用这些模式以提升系统的性能和稳定性。

2023-06-23 13:34:04 238

原创 单体 V/s 分布式架构

这是软件架构模式博客系列第 2 章,我们将讨论单体 V/s 分布式架构。在软件领域,存在多种架构风格可供选择,我们需要关注不同架构风格带来的风险。选择符合业务需求的架构风格是一个长期迭代的过程。架构风格可以分为两大主要类型:单体架构(将所有代码部署在一个单元中)和分布式架构(通过远程访问协议连接多个部署单元)。它们又可以进一步细分为以下多个子架构风格,如下所示。

2023-06-15 14:50:18 405

原创 10个ai算法常用库java版

今年ChatGPT 火了半年多,热度丝毫没有降下来。深度学习和 NLP 也重新回到了大家的视线中。有一些小伙伴问我,作为一名 Java 开发人员,如何入门人工智能,是时候拿出压箱底的私藏的学习AI的 Java 库来介绍给大家。这些库和框架为机器学习、深度学习、自然语言处理等提供了广泛的工具和算法。根据 AI 项目的具体需求,可以选择最合适的库或框架,并开始尝试使用不同的算法来构建AI解决方案。

2023-06-12 22:59:36 2001

原创 人人都懂ChatGPT序列第一章:ChatGPT 与自然语言处理

NLP 领域的发展逐渐由人为编写规则、逻辑控制计算机程序,到完全交由网络模型去适应语言环境。ChatGPT 是目前最接近通过图灵测试的 NLP 模型,未来GPT4、GPT5将会更加接近。ChatGPT 的工作流程是一个生成式的对话系统。ChatGPT 的训练过程包括语言模型的预训练,RLHF 带人工反馈的强化学习。ChatGPT 的模型结构采用以自注意力机制为核心的 Transformer。

2023-05-24 15:45:38 902

原创 ChatGPT 和对话式 AI 的未来:2023 年的进展和应用

目前,ChatGPT拥有超过5700万月度用户,并且这个数字还在不断增长,展示了它非常有前景的未来。而现在,Open AI的GPT项目通过一个经过高度训练的深度学习模型,在对话式人工智能领域取得了巨大的进步。GPT 是“生成式预训练转换器”(Generative Pre-trained Transformer)的缩写,是一种创新技术,其中语言模型经过大规模数据集、无数互联网文章、书籍和其他资源的训练。多年来,GPT经过训练,能够阅读和理解数百万人类对话,从而更加贴近真实的对话式人工智能体验。

2023-05-18 13:48:07 608

原创 轻松客观认识大模型系列:一

这篇文章旨在为没有计算机科学背景的读者提供一些关于ChatGPT及其类似的人工智能系统(如GPT-3、GPT-4、Bing Chat、Bard等)如何工作的原理。ChatGPT是一种聊天机器人,建立在一个大型语言模型之上,用于对话交互。这些术语可能比较晦涩难懂,我将对其进行解释。同时,我们将讨论它们背后的核心概念,而且本文并不需要读者具备任何技术或数学方面的背景知识。我们将大量使用比喻来解释相关概念,以便更好地理解它们。

2023-05-08 20:28:24 484

原创 为了了解国外AI最新动态,分享我经常逛的6 个 YouTube AI频道

AI 正在迅速发展,每周都会有一篇关于该领域新发展的新论文,一种可以提高您工作效率的 AI 工具,或者一个改变一切的公告。这就是为什么在本文中,我想与您分享最好的 YouTube 频道,以便及时了解 AI 的最新动态。这些 YouTube 用户精心挑选了最好的 AI 新闻,并创建了有关如何充分利用 ChatGPT 等 AI 工具的详细教程。以下是我经常观看的 6 个 YouTube 频道,以了解 AI 的最新动态。

2023-04-27 10:03:48 1244 1

原创 ChatGPT在智能客服产品落地探讨

这类产品往往可以通过业务流程抽象来实现,例如IVR语音交互、外呼任务和工单流转等。

2023-04-26 10:53:23 3307 1

原创 NLP 与 Python:构建知识图谱实战案例

目前,大多数公司都在建立数据湖,这是一个中央数据库,它可以收集来自不同来源的各种类型的原始数据(包括结构化和非结构化数据)。例如,知识图谱可以替代您需要查阅的所有文件,以查找特定的信息。目前,最常用于此类任务的库是SpaCy,它是一种开源软件,用于高级自然语言处理,利用Cython(C+Python)进行加速。命名实体是“真实世界中的对象”(例如人、国家、产品、日期),模型可以在文档中识别各种类型的命名实体。简单来说,它是一种特殊类型的网络图,用于展示现实世界实体、事实、概念和事件之间的关系。

2023-04-25 11:56:05 5235

原创 实施推荐系统过程中遇到的坑

比如首页推荐,内容包括帖子、视频,排序的时候怎么排,很难用统一的模型,因为帖子、视频分属于不同的业务线,很多特征在这条业务线上有,其他业务线上没有。举例:三个用户在测试集中的商品个数分别是10,12,8,模型得到的top-10推荐列表中,分别有6个,5个,4个在测试集中,那么此时HR的值是 (6+5+4)/(10+12+8) = 0.5。现在用的多的是pid,比例微分积分。② 通过ml的方法,因为冷启动行为少,先利用之前的数据,训练好一个模型,直接赋给冷启动的用户,这样用少量数据,模型也可以快速收敛。

2023-04-23 10:15:45 911

原创 prompt的演变

随着功能的增加,提示工程的复杂性将不可避免地增加。在这里,我解释了如何将复杂性引入到提示工程的过程中。

2023-04-22 00:25:54 378

原创 推荐系统:协同过滤

上一篇文章我们介绍了,可以根据产品元数据计算的,提供制定推荐的选择,推荐与用户过往购买过的产品相关性最相似的产品,今天我们来聊聊如何通过利用用户和产品之间的相似性提供建议的方法。协同过滤是一种利用用户和产品之间的相似性提供建议的方法。协同过滤分析相似的用户或相似评级的产品,并根据此分析推荐用户。

2023-04-21 10:49:58 488

原创 推荐系统:基于内容的过滤

上一篇文章我们介绍了,可以通过关联规则挖掘算法Apriori来实现关联规则推荐系统,今天我们来聊聊如何通过基于内容的过滤来实现推荐系统。基于内容的过滤是用作推荐系统的另一种常用方法之一。内容的相似性是根据产品元数据计算的,它提供了制定推荐的选择,推荐与用户过往购买过的产品相关性最相似的产品。元数据代表产品/服务的特性。例如,一部电影的导演、演员、编剧;作者、封底文章、书籍的译者或产品的类别信息。此图像包含用户喜欢的电影的描述。

2023-04-20 14:18:49 1025

原创 推荐系统:ARL(关联规则学习)

上一篇文章我们介绍了,今天我们来聊聊如何实现一个简单的推荐系统—关联规则学习。一家公司的产品内容一般都是非常丰富的,但用户的兴趣往往会针对整个内容集进行筛选,挑选出用户感兴趣的产品,筛选的规则因人而异。为了让用户不迷失在丰富的产品集群中,并根据兴趣领域达到所需的个性化服务,一般都会制作各种过滤器。这些过滤器和算法显示就是我们的“推荐系统”。本文是推荐系统实现的第一部分,重点将放在简单推荐系统和关联规则学习上。敬请关注基于内容的过滤和协同过滤方法。

2023-04-20 14:17:27 355

原创 推荐算法如何影响我们每天的生活

推荐引擎是根据用户过去的行为和偏好向用户提供个性化推荐的一系列算法。这些引擎通常被在线购物、音乐流媒体平台、在线约会、新闻媒体、视频游戏平台、旅游预订网站、社交媒体平台和其他行业使用。他们使用有关用户及其与产品或内容的交互的数据来建议用户可能感兴趣的项目。推荐引擎用于通过提供个性化的推荐来改善用户体验。

2023-04-20 14:16:19 1108

原创 【推荐系统】什么是好的推荐系统?个性化和非个性化推荐

推荐系统是。

2022-10-31 23:53:37 1317

原创 为什么要学习GoF设计模式?

在面向对象设计中,模式是常见问题的一种典型解决方案。当一个解决方案在各种项目中一次又一次地出现时,最终会有人为其命名并详细描述它。这就是发现模式的方式。模式就像预制的蓝图,我们可以对其进行自定义以解决代码中反复出现的问题。模式不是一段特定的代码,而是解决特定问题的一般思路或者概念。我们可以遵循模式详细信息,并实施适合程序的解决方案。

2022-09-18 23:42:28 186

word2vec数学原理---非常详细解析word2Vec原理

word2vec数学原理---非常详细解析word2Vec原理 (一)目录和前言 (二)预备知识 (三)背景知识 (四)基于 Hierarchical Softmax 的模型 (五)基于 Negative Sampling 的模型 (六)若干源码细节

2017-09-16

gao_zhi_liang_C_

这是我老师给我的资料!!是我老师多年篇积累的经念!!特别是对程序的质量方面!!我想对大家会很有用!!

2009-10-23

空空如也

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

TA关注的人

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