首页 文章 精选 留言 我的

精选列表

搜索[AI驱动],共10000篇文章
优秀的个人博客,低调大师

多智能体与大语言模型驱动的多语言语音钓鱼检测研究

语音钓鱼攻击依托语音媒介开展心理操纵,在实时通话场景中诱导受害者泄露隐私信息或者执行资金转移操作,已经成为网络安全领域不可忽视的现实威胁。现有语音钓鱼检测技术普遍存在单语言适配、单模态分析、检测过程可解释性不足等现实短板,面对攻击者持续迭代的多语言自适应攻击手段,识别效果会出现明显衰减。本文以 VISH GUARD 多智能体检测框架为核心研究对象,该框架融合多模态分析手段与大语言模型推理能力,实现面向多语言场景下具备可解释性的语音钓鱼威胁识别。系统内部设置分工明确的智能体单元,分别承担声学特征解析、语义意图识别、情绪感知检测以及通话行为画像四类任务,各智能体输出结果完成融合之后输出综合风险判定,大语言模型推理层同步生成结构化检测解释文本,辅助安全分析师开展研判工作。为完成框架的系统性评估,研究构建包含英语、法语、阿拉伯语三类语言的标注语音钓鱼数据集,数据集样本具备真实背景噪声、情绪变化特征以及多样化诈骗说服策略。实测结果表明 VISH GUARD 框架 F1 分数达到 0.96,性能优于单智能体方案、传统多模态深度学习基线模型以及端到端多模态 Transformer 基线模型,在攻击者运用情绪操纵、异常行为诱导的攻击场景中,框架有效降低漏判现象。研究证实多智能体协同架构叠加大模型推理机制,能够为现代语音钓鱼防御提供兼顾有效性与透明性的实现路径。 关键词:语音钓鱼;多智能体;大语言模型;多模态检测;网络空间安全

优秀的个人博客,低调大师

耳机没声音了,按这 4 步从插孔查到驱动,多数情况不用重装

这段时间陆续有几位同事和朋友来问同一个问题:耳机插上没声音。系统右下角的小喇叭图标看着正常,播放器的进度条也在走,但耳机里就是没有任何声音。反复插拔、重启电脑、怀疑耳机线损坏,折腾一圈后打开声音设置,发现输出设备选的是显示器,耳机插在机箱后面根本没被识别——这种情况并不少见。

优秀的个人博客,低调大师

储能大电芯柔性产线:从刚性制造到数据驱动架构的演进

2026年,储能电芯正式迈入500Ah+时代,314Ah与587Ah甚至更大容量电芯并行生产成为行业新常态。这种双电芯规格并行的局面,对底层制造装备提出了严苛的兼容性要求。传统的方壳模组PACK产线多采用刚性架构设计,针对单一型号进行大规模生产。然而,在当前多品种、变批量的市场需求下,刚性产线换型停产时间长、模具成本高昂,导致设备综合效率(OEE)难以维持。与此同时,电池包结构正从传统的CTM向CTP(Cell to Pack)演进,钢带捆扎取代厚重端板成为方壳电池模组固定的主流方案。这一工艺变革要求产线不仅要具备高节拍,还需在钢带张力控制、绝缘处理等环节实现高精度闭环。此外,CCS(Cell Connection System,电芯连接系统)作为模组内部电气连接的核心,其母排焊接的虚焊问题一直占据整体不良率的40%至50%。如何在保证高节拍(12-15 PPM)的前提下,实现全规格兼容与极致的良率控制,成为2026年方壳模组线架构设计必须解决的核心技术问题。在当前的方壳模组线实际运行中,架构层面的技术挑战主要集中在以下三个维度:第一,柔性换型与机械精度的矛盾。传统产线在切换电芯规格时,需要更换大量机械夹具并重新进行物理标定,换型时间往往长达4小时以上。而在大电芯时代,频繁的SKU切换使得这种刚性换型成为产能瓶颈。同时,长模组(如2米以上)在堆叠和焊接过程中,极易产生累积公差,导致中间段偏焊,传统单点视觉定位无法消除长尺寸带来的形变误差。第二,焊接工艺的动态补偿缺失。CCS母排激光焊接对来料一致性要求极高。当电芯壳体厚度波动或表面存在油污、氧化层时,固定配方的激光功率极易导致熔深不一致或虚焊。行业数据显示,定位偏差和虚焊是CCS产线的头号杀手,传统开环控制系统无法在毫秒级内对熔池状态进行反馈与纠偏。第三,数据追溯的颗粒度与实时性断层。在数字化管控方面,传统架构往往将设计、制造、运维数据割裂在不同系统中,存在严重的语义不一致与时序对齐问题。在焊接等关键工位,若缺乏边缘计算节点的实时高频数据采集,仅靠事后抽检无法实现单电芯级别的全生命周期质量追溯,导致不良品流出率居高不下。针对上述痛点,2026年新款方壳模组线的架构设计正全面转向“软件定义硬件”的柔性智造模式,核心在于构建具备“感知-判断-修正”能力的闭环控制架构。在物流与换型架构上,引入磁悬浮多动子输送系统与模块化积木式设计。通过软件定义工艺路径替代传统的硬限位机械结构,产线可根据不同电芯规格自动调取工艺配方。这种架构将换型时间从数小时压缩至15分钟以内,且实现了模具费用的“归零”。针对长模组的累积公差,采用分段式拼接视觉引导技术,在产线设置多个视觉节点,通过分段抓取、分段拍照与算法补偿,消除长尺寸结构件的形变误差。在核心焊接工艺上,建立视觉与能量的双闭环控制系统。视觉闭环通过3D+2D复合视觉系统,实时捕捉极柱与母排的三维位置偏差,将定位精度锁定在±0.02mm以内。能量闭环则要求激光焊接系统具备毫秒级的功率反馈功能,通过同轴视觉实时监测熔池的反射率与温度,一旦发现能量偏差,系统在0.2秒内自动调整激光功率与光斑宽度,确保在材料表面状态波动时熔深依然保持一致。在数据与检测架构上,推行基于边缘计算的毫秒级工艺参数追溯。在关键工位部署边缘计算节点,将焊接电流、电压、保护气流量、压力位移曲线等数据以高频打包上传至MES系统。结合光谱分析与图像比对技术,将焊后在线检测的漏检率压降至0.3%以下,实现每一颗电芯、每一道焊缝的“身份证”级追溯。在华南某头部储能企业的GWh级产线改造项目中,通过导入上述柔性化CCS与PACK产线解决方案,取得了显著的工程验证效果。在良率与品质方面,通过引入分段式视觉引导与激光能量闭环,彻底解决了2米长模组的偏焊与虚焊问题。整线直通率(FPY)从行业平均的86%稳定提升至98.5%以上,虚焊率控制在3%以下,焊接拉力测试合格率提升至99.8%。在效率与柔性方面,采用磁悬浮多动子技术与模块化焊接单元,整线生产节拍达到12-15 PPM,相比传统刚性产线效率提升40%。产线成功实现了50Ah至314Ah甚至更大规格电芯的混线生产,换型时间从原来的4小时缩短至15分钟。按年换型50次计算,单条产线每年直接节约模具及调试成本超80万元,设备综合效率(OEE)实测达到88%以上。在钢带成型工艺上,采用闭环力位控制系统,将钢带焊接压痕深度极差控制在0.015mm以内,模组入壳良品率稳定在97%以上,有效保障了电芯膨胀力的均匀分布,延长了储能系统在极端温差环境下的循环寿命。从单机设备比拼迈向整线多维协同,储能制造升级并非止步于硬件堆砌,而是需要底层软件架构的重构。为推动超大储能电芯技术的快速落地,我们在技术选型与标准化落地方面,沉淀了一套可复用的开源技术实践:统一数据模型与协议转换。定义产线的“设备孪生层”标准,即所有设备(无论是焊接机还是贴装机)均需抽象为属性、服

优秀的个人博客,低调大师

失窃账号驱动下校园 Duo 多因素钓鱼攻击机理与全域闭环防御研究

高校统一身份认证体系普遍部署 Duo 多因素认证(MFA)以抵御账号窃取风险,但攻击者逐步演化出失窃校内账号批量分发钓鱼邮件、仿冒 IT 官方话术诱导提交 BlazerID 密码、索要 Duo 动态验证码、滥用 Google 表单构建虚假核验页面的新型复合钓鱼攻击模式。以美国阿拉巴马大学伯明翰分校(UAB)2026 年 7 月发布的校园钓鱼安全预警事件为实证样本,本文系统拆解此类攻击完整传播链路、社会工程诱导逻辑与 MFA 绕过技术路径,剖析传统邮件网关、静态黑名单、单一用户安全教育的防御短板;依托反网络钓鱼技术专家芦笛提出的 “预防 - 检测 - 阻断 - 响应 - 复盘” 五层闭环防御理论,构建适配高校场景的技术防护、流程处置、认知培育一体化防御架构;给出可落地的 Python 邮件风险打分脚本、Google 表单恶意页面检测代码、账号异常行为监测逻辑三类工程化代码示例;结合 UAB 官方处置规范设计标准化可疑邮件上报、受损账号隔离、全域安全演练运营机制。研究证实,单纯依赖 Duo 多因素认证无法抵御中间人代理、推送疲劳胁迫类钓鱼攻击,只有实现邮件协议加固、智能语义检测、MFA 策略优化、常态化安全演练、快速应急响应全环节协同,才能形成可迭代的校园反钓鱼闭环体系。本文研究成果可为国内、海外综合类高校统一身份安全运营提供可复制的实践方案。

优秀的个人博客,低调大师

全链路可观测驱动的AIOps智能告警降噪与根因分析技术实践

云原生微服务架构下,业务系统链路错综复杂,服务器、容器、中间件、业务日志等运维数据呈爆发式增长。传统运维依赖固定阈值告警、人工排查根因,极易出现告警泛滥、误报漏报、故障根因定位困难等问题。AIOps依托人工智能与大数据技术,基于全链路可观测数据,实现告警智能降噪、异常精准判别、故障根因智能分析,解决传统运维痛点。本文聚焦轻量化AIOps落地方案,讲解核心技术原理并提供可直接运行的实战代码。

优秀的个人博客,低调大师

腾讯元宝再更新:DeepSeek R1+腾讯混元 T1「双核」驱动

继上周接入「满血版」DeepSeek-R1后,腾讯元宝宣布又上线腾讯混元最新「深度思考模型」Thinker(T1),目前已开启小范围灰测,用户可以自行选用。 根据介绍,无论是使用混元T1,还是使用DeepSeek,均支持联网搜索,覆盖公众号等腾讯生态内容及互联网权威信源。 用户在元宝里提问时,可以选择从微信里上传文件;也可以通过元宝小程序在微信里上传文件,元宝一键解析,无需多余步骤,大幅减少操作成本。

优秀的个人博客,低调大师

虚拟机时代的终结与云原生未来:Rainbond驱动企业IT基础设施升级

前言 企业的数字化转型已经成为全球范围内各行业共同面临的挑战。无论是制造、金融、零售,还是医疗、政府等领域,IT基础设施都在扮演着至关重要的角色。传统的IT基础设施主要依赖于虚拟机管理,如通过VMware或OpenStack创建虚拟机并分配给应用系统。然而,随着云计算的兴起,企业的信息化需求正在快速变化,尤其在云原生技术大规模普及的背景下,企业的IT基础设施管理方式正发生着根本性转变。 本文将深入探讨虚拟机时代的局限性,以及为什么云原生技术成为未来企业IT管理的必然选择。同时,以Rainbond为例,展示其作为一个应用管理平台,如何帮助企业顺利实现从虚拟机管理到云原生管理的过渡。 传统IT基础设施:以虚拟机为核心的管理模式 虚拟机时代的管理困境 传统的企业IT基础设施通过虚拟化技术(如VMware、OpenStack)创建和管理虚拟机。IT人员的主要任务是根据业务需求分配计算资源,并手动配置每台虚拟机上的环境,确保各个应用系统能够稳定运行。具体来看,这种模式的核心在于"虚拟机",其管理过程包括虚拟机的创建、资源分配、操作系统配置、安全补丁管理等。由于虚拟机本质上模拟了物理服务器的全部功能,管理工作也更加复杂。 传统IT架构的典型流程: 物理服务器:企业首先购置并配置数据中心的物理硬件资源。 虚拟化层:通过VMware或OpenStack创建多个虚拟机,分配内存、CPU等资源。 虚拟机管理:每台虚拟机上都安装操作系统、数据库、运行库等,确保应用系统的运行环境。 应用系统部署:在虚拟机内手动部署应用程序,并定期进行维护、升级等工作。 虽然虚拟机架构极大地提高了物理资源的利用效率,但随着业务复杂性的提升,这种模式逐渐暴露出一些不可忽视的问题: 资源浪费:虚拟机虽然提高了资源利用率,但依然存在一定程度的资源浪费问题,因为每台虚拟机都会消耗额外的操作系统资源。 管理复杂:IT人员需要处理与虚拟机相关的许多细节问题,包括配置、监控和资源调度等,大大增加了运维成本。 应用部署效率低:传统虚拟机架构下,应用的部署和升级通常是手动操作,导致应用上线周期较长,影响企业的敏捷性。 供应商依赖:很多企业依赖第三方供应商提供的应用支持,尤其在系统升级和问题修复方面,企业的自主性大大降低。 在传统架构中,物理服务器通过虚拟化层生成多个虚拟机,虚拟机则作为核心的管理对象,应用系统运行在虚拟机之上。IT人员的管理重心集中在虚拟机的资源调配和维护上,而每次应用系统的部署、更新都需要针对虚拟机进行一系列的手动操作。 Rainbond云原生架构:以应用为核心的现代管理模式 云原生技术的兴起 云原生技术,包括容器、微服务、Kubernetes等,已经成为现代应用开发和运维的标准。这些技术通过对传统单体应用进行拆解,将应用解耦成多个独立的模块(微服务),使得企业能够快速迭代、扩展和部署应用。 然而,云原生技术的复杂性也给企业带来了新的挑战,尤其是对于没有成熟技术团队的传统企业来说,学习和掌握云原生技术需要投入大量的时间和资源。因此,如何降低云原生技术的门槛,简化应用管理过程,成为企业顺利过渡到云原生的关键。 Rainbond正是为了解决这一问题而生。作为一个一站式的应用管理平台,Rainbond不仅能够部署和管理云原生应用,还可以通过简单的图形界面实现自动化运维,显著降低了云原生技术的使用门槛。 Rainbond的架构优势 Rainbond的核心在于应用管理,而非底层的虚拟机。它可以运行在任何物理服务器、虚拟机或云平台之上,通过一个统一的管理界面实现所有应用的生命周期管理。Rainbond的几个关键优势包括: 软件资产化管理 Rainbond提供了一个应用市场,企业可以将已安装的应用以模版的形式存储,未来无需再依赖供应商,即可自行安装和升级应用。这大大增强了企业的自主性,减少了对外部支持的依赖。 技术门槛低 传统云原生技术(如Kubernetes)虽然强大,但对IT人员的技术要求很高。而Rainbond通过高度自动化的运维流程,让企业无需具备深厚的云原生知识即可上手使用。即便是技术能力有限的企业,也能够顺利进行应用迁移和运维。 自动化运维 Rainbond通过应用管理平台,将应用的部署、监控、扩展、故障恢复等流程高度自动化。IT人员无需手动进行复杂的配置,一个人就可以轻松管理数百个应用系统。 多租户和权限细化管理 在企业内部,常常需要将IT资源按照部门或项目进行隔离管理。Rainbond支持多租户架构,不同部门可以独立管理自己的资源,并实现细化的权限控制,从而提高了管理的灵活性和安全性。 应用的快速迭代和业务不中断升级 在传统架构中,应用系统的升级通常需要停机进行,而Rainbond支持零停机升级,应用可以在不中断业务的情况下完成迭代更新。这对于企业来说,既能保持业务的连续性,又能快速响应市场需求。 全面的应用监控 Rainbond不仅能对底层基础设施进行监控,还能实现应用级别的监控。通过收集和分析应用的运行数据,IT管理人员可以实时了解应用的健康状态、资源利用率,并在问题出现前做出相应调整,提升应用的稳定性。 在Rainbond架构中,底层依然是物理服务器或虚拟机,但Rainbond平台取代了传统的虚拟化管理层,成为应用管理的核心。应用系统以模版化的形式存储和管理,管理重心转移到应用的全生命周期管理,虚拟机仅作为底层运行环境被抽象化处理,极大地简化了IT运维的复杂性。 云原生技术的未来:趋势与挑战 为什么云原生技术是未来的必然趋势? 灵活性和敏捷性 云原生技术允许企业根据业务需求对应用进行灵活扩展和快速迭代。传统的虚拟机架构因为环境复杂,无法快速适应变化。而通过容器技术,云原生架构可以实现按需扩展,应用系统可以在不同的环境之间自由迁移,灵活性大大增强。 资源利用率提升 云原生技术通过容器化和微服务,将应用拆分成多个独立模块,每个模块仅消耗其运行所需的最低资源。这种方式相较于虚拟机架构极大地提升了资源利用率,避免了资源浪费,降低了企业的IT运营成本。 高可用性和自动化运维 云原生技术天然具备高可用性,容器平台(如Kubernetes)能够根据负载情况自动扩展或缩减容器数量,并在出现故障时自动进行恢复,确保应用的连续运行。这对于希望提升服务质量和稳定性的企业至关重要。 应用快速迭代 传统的虚拟机架构下,应用的部署和更新往往需要停机,并且周期较长。而云原生技术通过微服务架构,使得每个应用模块都可以独立开发、部署和更新,大大加快了迭代速度。企业可以频繁发布新功能,提升市场响应速度。 云原生技术的挑战:复杂性和学习曲线 尽管云原生技术带来了众多优势,但其复杂性也给企业带来了一些挑战。容器编排、服务网格、微服务治理等技术都需要具备相当的技术深度。很多企业在部署云原生技术时遇到了技术壁垒,尤其是缺乏经验的IT团队往往难以完全掌握。 Rainbond通过简化云原生应用的部署和管理,帮助企业降低了这一门槛。Rainbond集成了Kubernetes等云原生技术,但隐藏了其复杂性,提供了可视化的管理界面和自动化的操作流程,使企业能够轻松部署和管理云原生应用。 Rainbond:云原生时代的解决方案 Rainbond作为应用管理平台,不仅解决了企业在过渡到云原生架构时遇到的技术门槛问题,还通过高度自动化的运维和管理能力,帮助企业提升了IT管理的效率。通过Rainbond,企业可以无缝实现从传统虚拟机管理模式到现代化云原生架构的过渡,获得更高的灵活性和自主性。 Rainbond如何帮助企业实现IT基础设施升级? 无缝过渡到云原生架构 企业无需对现有的IT基础设施进行彻底的改变,Rainbond可以部署在现有的物理服务器或虚拟机上,逐步引导企业进入云原生架构。通过这种方式,企业可以以最低的风险实现基础设施的升级。 降低技术门槛 Rainbond通过简化的操作界面和自动化的运维流程,使得IT管理人员无需掌握复杂的云原生技术,即可实现应用的部署、监控和运维,极大地降低了企业迁移云原生架构的技术门槛。 增强自主性和敏捷性 通过Rainbond,企业可以自主掌控应用的全生命周期管理,无需依赖外部供应商支持。应用系统的升级、维护可以在不中断业务的情况下快速完成,增强了企业的业务敏捷性。 结论 云原生技术正在迅速成为企业IT基础设施的主流选择,Rainbond通过简化这一技术的应用,帮助企业顺利完成数字化转型。从虚拟机时代的资源管理到云原生架构的应用管理,Rainbond不仅是技术变革的推动者,更是企业应对未来挑战的有力工具。 随着企业业务需求的快速变化,IT基础设施的灵活性和敏捷性将变得至关重要。Rainbond凭借其高效、低门槛的解决方案,帮助企业在云原生时代保持竞争力,成为数字化时代的先锋。

优秀的个人博客,低调大师

图技术在 LLM 下的应用:知识图谱驱动的大语言模型 Llama Index

LLM 如火如荼地发展了大半年,各类大模型和相关框架也逐步成型,可被大家应用到业务实际中。在这个过程中,我们可能会遇到一类问题是:现有的哪些数据,如何更好地与 LLM 对接上。像是大家都在用的知识图谱,现在的图谱该如何借助大模型,发挥更大的价值呢? 在本文,我便会和大家分享下如何利用知识图谱构建更好的 In-context Learning 大语言模型应用。 此文最初以英文撰写的,而后我麻烦 ChatGPT 帮我翻译成了英文。下面是翻译的 prompt: “In this thread, you are a Chinese Tech blogger to help translate my blog in markdown from English into Chinese, the blog style is clear, fun yet professional. I will paste chapters in markdown to you and you will send back the translated and polished version.” LLM 应用的范式 作为认知智能的一大突破,LLM 已经改变了许多行业,以一种我们没有预料到的方式进行自动化、加速和启用。我们每天都会看到新的 LLN 应用被创建出来,我们仍然在探索如何利用这种魔力的新方法和用例。 将 LLM 引入流程的最典型模式之一,是要求 LLM 根据专有的/特定领域的知识理解事物。目前,我们可以向 LLM 添加两种范式以获取这些知识:微调——fine-tune 和 上下文学习—— in-context learning。 微调是指对 LLM 模型进行附加训练,以增加额外的知识;而上下文学习是在查询提示中添加一些额外的知识。 据观察,目前由于上下文学习比微调更简单,所以上下文学习比微调更受欢迎,在这篇论文中讲述了这一现象:https://arxiv.org/abs/2305.16938。 下面,我来分享 NebulaGraph 在上下文学习方法方面所做的工作。 Llama Index:数据与 LLM 之间的接口 上下文学习 上下文学习的基本思想是使用现有的 LLM(未更新)来处理特定知识数据集的特殊任务。 例如,要构建一个可以回答关于某个人的任何问题,甚至扮演一个人的数字化化身的应用程序,我们可以将上下文学习应用于一本自传书籍和 LLM。在实践中,应用程序将使用用户的问题和从书中"搜索"到的一些信息构建提示,然后查询 LLM 来获取答案。 ┌───────┐ ┌─────────────────┐ ┌─────────┐ │ │ │ Docs/Knowledge │ │ │ │ │ └─────────────────┘ │ │ │ User │─────────────────────────────────────▶ LLM │ │ │ │ │ │ │ │ │ └───────┘ └─────────┘ 在这种搜索方法中,实现从文档/知识(上述示例中的那本书)中获取与特定任务相关信息的最有效方式之一是利用嵌入(Embedding)。 嵌入(Embedding) 嵌入通常指的是将现实世界的事物映射到多维空间中的向量的方法。例如,我们可以将图像映射到一个(64 x 64)维度的空间中,如果映射足够好,两个图像之间的距离可以反映它们的相似性。 嵌入的另一个例子是 word2vec 算法,它将每个单词都映射到一个向量中。例如,如果嵌入足够好,我们可以对它们进行加法和减法操作,可能会得到以下结果: vec(apple) + vec(pie) ≈ vec("apple apie"),或者向量测量值 vec(apple) + vec(pie) - vec("apple apie") 趋近于 0: |vec(apple) + vec(pie) - vec("apple apie")| ≈ 0 类似地,"pear" 应该比 "dinosaur" 更接近 "apple":|vec(apple) - vec(pear)| < |vec(apple) - vec(dinosaur)| 有了这个基础,理论上我们可以搜索与给定问题更相关的书籍片段。基本过程如下: 将书籍分割为小片段,为每个片段创建嵌入并存储它们 当有一个问题时,计算问题的嵌入 通过计算距离找到与书籍片段最相似的前 K 个嵌入 使用问题和书籍片段构建提示 使用提示查询 LLM ┌────┬────┬────┬────┐ │ 1 │ 2 │ 3 │ 4 │ ├────┴────┴────┴────┤ │ Docs/Knowledge │ ┌───────┐ │ ... │ ┌─────────┐ │ │ ├────┬────┬────┬────┤ │ │ │ │ │ 95 │ 96 │ │ │ │ │ │ │ └────┴────┴────┴────┘ │ │ │ User │─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─▶ LLM │ │ │ │ │ │ │ │ │ └───────┘ ┌ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ┐ └─────────┘ │ ┌──────────────────────────┐ ▲ └────────┼▶│ Tell me ....., please │├───────┘ └──────────────────────────┘ │ ┌────┐ ┌────┐ │ │ 3 │ │ 96 │ │ └────┘ └────┘ │ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ Llama Index Llama Index 是一个开源工具包,它能帮助我们以最佳实践去做 in-context learning: 它提供了各种数据加载器,以统一格式序列化文档/知识,例如 PDF、维基百科、Notion、Twitter 等等,这样我们可以无需自行处理预处理、将数据分割为片段等操作。 它还可以帮助我们创建嵌入(以及其他形式的索引),并以一行代码的方式在内存中或向量数据库中存储嵌入。 它内置了提示和其他工程实现,因此我们无需从头开始创建和研究,例如,《用 4 行代码在现有数据上创建一个聊天机器人》。 文档分割和嵌入的问题 嵌入和向量搜索在许多情况下效果良好,但在某些情况下仍存在挑战,比如:丢失全局上下文/跨节点上下文。 想象一下,当查询"请告诉我关于作者和 foo 的事情",在这本书中,假设编号为 1、3、6、19-25、30-44 和 96-99 的分段都涉及到 foo 这个主题。那么,在这种情况下,简单地搜索与书籍片段相关的前 k 个嵌入可能效果不尽人意,因为这时候只考虑与之最相关的几个片段(比如 k = 3),会丢失了许多上下文信息。 ┌────┬────┬────┬────┐ │ 1 │ 2 │ 3 │ 4 │ ├────┴────┴────┴────┤ │ Docs/Knowledge │ │ ... │ ├────┬────┬────┬────┤ │ 95 │ 96 │ │ │ └────┴────┴────┴────┘ 而解决、缓解这个问题的方法,在 Llama Index 工具的语境下,可以创建组合索引和综合索引。 其中,向量存储(VectorStore)只是其中的一部分。除此之外,我们可以定义一个摘要索引、树形索引等,以将不同类型的问题路由到不同的索引,从而避免在需要全局上下文时错失它。 然而,借助知识图谱,我们可以采取更有意思的方法: 知识图谱 知识图谱这个术语最初由谷歌在 2012 年 5 月提出,作为其增强搜索结果,向用户提供更多上下文信息的一部分实践。知识图谱旨在理解实体之间的关系,并直接提供查询的答案,而不仅仅返回相关网页的列表。 知识图谱是一种以图结构形式组织和连接信息的方式,其中节点表示实体,边表示实体之间的关系。图结构允许用户高效地存储、检索和分析数据。 它的结构如下图所示: 现在问题就来了,上面说过知识图谱能帮忙搞定文档分割和嵌入的问题。那么,知识图谱到底能怎么帮到我们呢? 嵌入和知识图谱的结合 这里的基本实现思想是,作为信息的精炼格式,知识图谱可切割的数据颗粒度比我们人工的分割的更细、更小。将知识图谱的小颗粒数据与原先人工处理的大块数据相结合,我们可以更好地搜索需要全局/跨节点上下文的查询。 下面来做个题:请看下面的图示,假设提问同 x 有关,所有数据片段中有 20 个与 x 高度相关。现在,除了获取主要上下文的前 3 个文档片段(比如编号为 1、2 和 96 的文档片段),我们还从知识图谱中对 x 进行两次跳转查询,那么完整的上下文将包括: 问题:"Tell me things about the author and x" 来自文档片段编号 1、2 和 96 的原始文档。在 Llama Index 中,它们被称为节点 1、节点 2 和节点 96。 包含 "x" 的知识图谱中的 10 个三元组,通过对 x 进行两层深度的图遍历得到: x -> y(来自节点 1) x -> a(来自节点 2) x -> m(来自节点 4) x <- b-> c(来自节点 95) x -> d(来自节点 96) n -> x(来自节点 98) x <- z <- i(来自节点 1 和节点 3) x <- z <- b(来自节点 1 和节点 95) ┌──────────────────┬──────────────────┬──────────────────┬──────────────────┐ │ .─. .─. │ .─. .─. │ .─. │ .─. .─. │ │( x )─────▶ y ) │ ( x )─────▶ a ) │ ( j ) │ ( m )◀────( x ) │ │ `▲' `─' │ `─' `─' │ `─' │ `─' `─' │ │ │ 1 │ 2 │ 3 │ │ 4 │ │ .─. │ │ .▼. │ │ │( z )◀────────────┼──────────────────┼───────────( i )─┐│ │ │ `◀────┐ │ │ `─' ││ │ ├───────┼──────────┴──────────────────┴─────────────────┼┴──────────────────┤ │ │ Docs/Knowledge │ │ │ │ ... │ │ │ │ │ │ ├───────┼──────────┬──────────────────┬─────────────────┼┬──────────────────┤ │ .─. └──────. │ .─. │ ││ .─. │ │ ( x ◀─────( b ) │ ( x ) │ └┼▶( n ) │ │ `─' `─' │ `─' │ │ `─' │ │ 95 │ │ │ 96 │ │ │ 98 │ │ .▼. │ .▼. │ │ ▼ │ │ ( c ) │ ( d ) │ │ .─. │ │ `─' │ `─' │ │ ( x ) │ └──────────────────┴──────────────────┴──────────────────┴──`─'─────────────┘ 显然,那些(可能很宝贵的)涉及到主题 x 的精炼信息来自于其他节点以及跨节点的信息,都因为我们引入知识图谱,而能够被包含在 prompt 中,用于进行上下文学习,从而克服了前面提到的问题。 Llama Index 中的知识图谱进展 最初,William F.H.将知识图谱的抽象概念引入了 Llama Index,其中知识图谱中的三元组与关键词相关联,并存储在内存中的文档中,随后Logan Markewich还增加了每个三元组的嵌入。 最近的几周中,我一直在与 Llama Index 社区合作,致力于将 "GraphStore" 存储上下文引入 Llama Index,从而引入了知识图谱的外部存储。首个知识图谱的外部存储是对接开源分布式图数据库 NebulaGraph,目前在我的努力下已经实现了。 在实现过程中,还引入了遍历图的多个跳数选项以及在前 k 个节点中收集更多关键实体的选项,用于在知识图谱中搜索以获得更多全局上下文。上面提到的这些变更还在陆续完善中。 在大模型中引入 GraphStore 后,还可以从现有的知识图谱中进行上下文学习,并与其他索引结合使用,这也非常有前景。因为知识图谱被认为具有比其他结构化数据更高的信息密度。 本文作为开篇,讲述了一些知识图谱和 LLM 的关系。在后续的文章中,将会偏向实操同大家分享具体的知识图谱和 LLM 的应用实践。 -- 谢谢你读完本文 (///▽///) 欢迎前往 GitHub 来阅读 NebulaGraph 源码,或是尝试用它解决你的业务问题 yo~ GitHub 地址:https://github.com/vesoft-inc/nebula 想要交流图技术和其他想法,请前往论坛:https://discuss.nebula-graph.com.cn/

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册