当前位置: 首页 > news >正文

如何理解大模型的幻觉输出及RAG技术的应用与实战案例

导读:大语言模型(LLM)在当今技术领域中扮演着越来越重要的角色,但其“幻觉输出”问题却成为实际应用中的痛点。本文将带你深入剖析这一现象的定义、表现形式及成因,并探讨如何通过RAG(检索增强生成)技术有效缓解这一问题。文章不仅详细分析了幻觉输出对医疗、金融等领域的潜在影响,还提供了具体的技术改进策略,如微调对齐、强化学习以及用户侧提示词优化等。
此外,本文还重点介绍了RAG技术的核心思想及其工作流程,结合Java和Python代码示例,展示了如何将RAG应用于智能客服、医疗问答和金融报告生成等场景。例如,在医疗领域,RAG能够通过实时检索权威数据库生成基于循证医学的答案,显著提升合规性和可靠性。
你是否好奇,为什么RAG可以有效减少模型的“胡编乱造”?加载文件、切割文档和向量数据库的作用分别是什么?这些问题将在文中逐一解答。如果你希望了解如何利用RAG技术快速搭建一个智能AI医生系统,或想探索更多实战案例,那么这篇文章绝对值得你深入阅读!

第1部分:什么是大模型的幻觉输出?

引言:
随着人工智能技术的飞速发展,大语言模型(LLM)如GPT、Llama等逐渐成为我们日常生活中不可或缺的一部分。然而,这些强大的工具并非完美无缺。其中,“幻觉输出”是大模型在实际应用中面临的一大挑战。本文将深入探讨这一问题的定义、表现形式、产生原因以及应对策略。

一、幻觉输出的定义与表现形式

  1. 定义:
    幻觉输出(Hallucination)是指大语言模型生成的内容看似合理但实际上错误、虚构或脱离事实的现象。这种现象类似于人类的“臆想”,即模型基于不完整或错误的知识生成了逻辑通顺但内容失实的回答。

  2. 表现形式:

    • 虚构事实:
      • 示例1:生成不存在的书籍(如称《时间简史》是鲁迅所写)。
      • 示例2:编造错误的历史事件(如“秦始皇于公元前200年统一六国”)。
    • 错误推理:
      • 示例:回答数学问题时,步骤正确但结果错误(如“2+3=6”)。
    • 过度泛化:
      • 示例:将特定领域的知识错误迁移到其他领域(如用医学术语解释物理现象)。
    • 矛盾内容:
      • 示例:同一段回答中前后逻辑冲突(如先说“地球是平的”,后又说“地球绕太阳公转”)。

二、幻觉输出的根本原因

  1. 训练数据的局限性:

    • 数据噪声:模型训练数据可能包含错误、过时或偏见信息(如互联网上的谣言)。
    • 知识截止:模型训练后无法获取新知识(如GPT-3的数据截止到2021年)。
  2. 模型生成机制:

    • 概率驱动:模型通过预测“最可能的下一词”生成文本,而非验证事实。
    • 缺乏常识判断:无法区分“合理表达”与“真实事实”。
  3. 模型策略的副作用:

    • 创造性模式:模型在开放生成任务中更易“放飞自我”(如写小说时虚构细节)。

三、典型案例分析

  1. 医疗问答:

    • 问题:用户问“新冠疫苗会导致自闭症吗?”
    • 幻觉输出:模型可能生成“有研究表明两者存在相关性”(错误)。
    • 解决方案:使用RAG检索WHO官方声明,生成“无科学证据支持此说法”。
  2. 金融咨询:

    • 问题:“2024年比特币会涨到10万美元吗?”
    • 幻觉输出:模型虚构专家预测或历史数据。
    • 解决方案:限定回答范围(如“截至2023年,比特币最高价格为…”)。

四、幻觉输出的影响

  • 误导用户: 在医疗、法律等专业领域可能引发严重后果。
  • 信任危机: 用户对模型输出的可靠性产生质疑。
  • 技术瓶颈: 暴露大模型在真实性、可解释性上的不足。

五、缓解幻觉输出的策略

  1. 技术改进方案:

    • 检索增强生成(RAG): 通过实时检索外部知识库(如维基百科、专业数据库),为生成提供事实依据。
    • 微调对齐: 使用高质量数据(如标注正确的问答对)调整模型输出偏好。
    • 强化学习(RLHF): 通过人类反馈惩罚错误生成,奖励准确回答。
  2. 生成策略优化:

    • 温度参数调整:降低随机性(temperature=0),减少“胡编乱造”。
    • 后处理校验:添加事实核查模块(如调用知识图谱API验证答案)。
  3. 用户侧应对:

    • 提示词设计:明确要求模型标注不确定性(如“回答需基于2023年数据”)。
    • 多源验证:对关键信息人工交叉核对(如学术论文、权威网站)。

第2部分:带你走进RAG检索增强生成和应用场景

在这里插入图片描述

引言:
RAG(Retrieval-Augmented Generation)是一种结合信息检索与文本生成的AI技术架构。它通过检索系统找到与问题相关的知识片段,再将检索结果与问题共同输入生成模型得到最终答案。本文将详细介绍RAG的工作原理及其典型应用场景。

一、RAG技术的核心思想

  1. 核心思想:

    • 先通过检索系统找到与问题相关的知识片段。
    • 再将检索结果与问题共同输入生成模型得到最终答案。
    • 类比人类解答问题的过程:遇到问题时先查资料(检索),再结合资料组织回答(生成)。
  2. 工作流程示例(Java代码描述):

public class JavaRAG {public static void main(String[] args) {// 1. 加载文档List<Document> docs = FileLoader.load("data/");// 2. 创建向量库(类似建立索引)VectorDB vectorDB = new FAISSIndex(docs);// 3. 处理用户问题String question = "如何申请报销?";List<Document> results = vectorDB.search(question, 3);// 4. 生成回答String context = String.join("\n", results.stream().map(Document::content).collect(Collectors.toList()));String answer = LLM.generate(context + "\n问题:" + question);System.out.println(answer);}
}

二、为什么需要RAG?

  1. 传统生成模型的局限性:

    • 知识过时: 大模型(如GPT-3)训练数据截止于特定时间,无法覆盖实时信息。
    • 幻觉问题: 生成内容可能包含不准确或虚构的信息。
    • 领域局限性: 通用模型缺乏垂直领域的专业知识(如法律、医疗),企业私有数据无法写入公开模型。
  2. 检索与生成的互补性:

    • 检索系统:擅长从海量数据中快速找到相关文档(实时、精准),实时从外部知识库检索信息。
    • 生成模型:擅长语言理解和流畅输出。
    • 结合优势:RAG通过检索外部知识库增强生成结果,提高准确性和可信度。

三、典型应用场景

  1. 智能客服系统:

    • 传统问题:客服知识库更新频繁,模型无法实时同步。
    • RAG方案:实时检索最新的产品文档、FAQ,生成个性化回答(如退货政策、故障排查)。
    • 效果:减少人工干预,回答准确率提升30%以上。
  2. 医疗问答助手:

    • 传统问题:通用模型缺乏专业医学知识,可能给出危险建议。
    • RAG方案:检索权威医学数据库(如PubMed、临床指南),生成基于循证医学的答案,标注参考文献来源。
    • 效果:合规性提升,避免法律风险。
  3. 金融研究报告生成:

    • 传统问题:市场数据动态变化,模型无法实时分析。
    • RAG方案:检索实时财报、新闻、行业数据→输入生成模型,自动生成带有数据支撑的投资建议。

第3部分:LLM智能AI医生+RAG系统案例实战

引言:
本部分通过一个具体的案例——智能AI医生,展示如何利用LLM大模型和RAG技术快速搭建智能客服系统。我们将逐步拆解每个步骤,并解答常见的疑问。

一、需求分析

  1. 目标:

    • 快速搭建智能医生客服案例,基于LLM大模型+RAG技术。
    • 方便直观地查看效果,并方便后续拆解每个步骤。
    • 效果:根据用户的提问,检索相关私有数据,整合大模型,最终生成返回给用户。
  2. 数据准备:

    • 文本加载:使用TextLoader加载本地文件qa.txt
    • 分割文档:使用RecursiveCharacterTextSplitter将文档分割成适合嵌入的块。

二、技术实现

  1. 加载文档:

    loader = TextLoader("data/qa.txt")
    docs = loader.load()
    
  2. 分割文档:

    text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=200)
    splits = text_splitter.split_documents(docs)
    
  3. 创建向量存储:

    embedding_model = DashScopeEmbeddings(model="text-embedding-v2", max_retries=3, dashscope_api_key="sk-xxxxxxxx")
    vectorstore = Chroma.from_documents(documents=splits, embedding=embedding_model, persist_directory="./rag_chroma_db")
    retriever = vectorstore.as_retriever(search_kwargs={"k": 3})
    
  4. 定义模型:

    model = ChatOpenAI(model_name="qwen-plus", base_url="https://dashscope.aliyuncs.com/compatible-mode/v1", api_key="sk-xxxxxxxx", temperature=0.7)
    
  5. 构建RAG链:

    template = """[INST] <<SYS>>\n你是一个有用的AI助手,请根据以下上下文回答问题:\n{context}\n<</SYS>>\n问题:{question} [/INST]"""
    rag_prompt = ChatPromptTemplate.from_template(template)rag_chain = ({"context": retriever, "question": RunnablePassthrough()}| rag_prompt| model| StrOutputParser()
    )
    
  6. 执行查询:

    question = "饭后经常打嗝原因是?"
    response = rag_chain.invoke(question)
    print(f"问题:{question}")
    print(f"回答:{response}")
    

三、常见问题解答

  1. 为啥可以根据我们的提问,进行检索到对应的词条?

    • RAG技术通过向量嵌入将文本转化为高维空间中的向量表示,然后利用相似度搜索找到最相关的文档片段。
  2. 为啥要加载文件?然后切割?什么是向量数据库?

    • 加载文件是为了引入私有数据作为知识来源;切割是为了将长文档拆分为小片段,便于嵌入和检索;向量数据库用于存储这些嵌入后的向量,支持高效检索。
  3. 为啥检索到词条后,还可以用调整输出内容,更加友好?

    • 通过模板化提示(Prompt Template)和大模型生成能力,可以将检索到的片段与用户问题结合起来,生成更加自然、友好的回答。
  4. 什么是嵌入大模型?和前面学的LLM大模型有啥区别?

    • 嵌入大模型主要用于将文本转化为向量表示,而LLM大模型则负责生成自然语言文本。两者协同工作,前者负责检索,后者负责生成。

总结与展望

通过本文的讲解,我们深入了解了大模型的幻觉输出问题及其解决方案RAG技术。RAG不仅能够有效缓解幻觉输出,还能在多个领域(如智能客服、医疗问答、金融分析)中发挥重要作用。未来,随着技术的不断进步,我们可以期待更加智能化、可靠的大规模语言模型应用。

相关文章:

如何理解大模型的幻觉输出及RAG技术的应用与实战案例

导读&#xff1a;大语言模型&#xff08;LLM&#xff09;在当今技术领域中扮演着越来越重要的角色&#xff0c;但其“幻觉输出”问题却成为实际应用中的痛点。本文将带你深入剖析这一现象的定义、表现形式及成因&#xff0c;并探讨如何通过RAG&#xff08;检索增强生成&#xf…...

std::vector<>.emplace_back

emplace_back() 详解&#xff1a;C 就地构造的效率革命 emplace_back() 是 C11 引入的容器成员函数&#xff0c;用于在容器尾部就地构造&#xff08;而非拷贝或移动&#xff09;元素。这一特性显著提升了复杂对象的插入效率&#xff0c;尤其适用于构造代价较高的类型。 一、核…...

卷积神经网络(CNN)学习率调整完全指南:从理论到PyTorch实践

引言 学习率是训练卷积神经网络(CNN)最重要的超参数之一&#xff0c;合理调整学习率可以显著提高模型性能、加速收敛并避免训练失败。本文将全面解析CNN学习率调整的技术与方法&#xff0c;涵盖基础概念、常用策略、PyTorch实现以及实用技巧。 一、学习率为什么如此重要&…...

KLEC--基于知识学习的演化计算算法

KLEC–基于知识学习的演化计算算法 title&#xff1a; Knowledge Learning for Evolutionary Computation author&#xff1a; Yi Jiang, Zhi-Hui Zhan, Kay Chen Tan, Jun Zhang. journal&#xff1a; IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION (TEVC) DOI&#xff…...

Git查看指定作者提交命令

要查看 Git 仓库中某个作者的提交记录&#xff0c;可以使用 git log 命令结合 --author 选项。以下是具体用法和示例&#xff1a; 基础命令 git log --author"作者名"作用&#xff1a;列出指定作者的所有提交记录。示例&#xff1a;查找作者名为 John Doe 的提交&am…...

隐形安全感

凌晨两点&#xff0c;手机突然震动。合作三年的化工原料供应商发来紧急消息&#xff1a;“一批次环氧树脂需要连夜从南京调往广州&#xff0c;但合作多年的物流公司临时爽约&#xff0c;能帮忙想想办法吗&#xff1f;” 我盯着屏幕愣了几秒。这类危险品运输从来不是简单的“拉…...

代码随想录算法训练营 Day52 图论Ⅲ 岛屿问题Ⅱ 面积 孤岛 水流 造岛

图论 题目 101. 孤岛的总面积 计算孤岛总面积&#xff0c;一个想法是将相邻的陆地的位置置为 0&#xff0c;最后计算孤岛面积中最小的一个 #include <iostream> #include <vector> #include <queue>using namespace std;int sum 0; int dir[4][2] {0,-1…...

实用 Git 学习工具推荐:Learn Git Branching

https://learngitbranching.js.org/?localezh_CN 网站概述 Learn Git Branching 是一个面向开发者的交互式 Git 学习平台&#xff0c;专为那些希望通过实践掌握 Git 高级用法的用户设计。网站采用游戏化的界面和渐进式挑战&#xff0c;让复杂的 Git 概念变得直观易懂。无论是…...

物流项目第三期(统一网关、工厂模式运用)

前两期&#xff1a; 物流项目第一期&#xff08;登录业务&#xff09;-CSDN博客 物流项目第二期&#xff08;用户端登录与双token三验证&#xff09;-CSDN博客 为什么要有网关&#xff1f; 通过前面的课程我们已经完成了四个端的登录&#xff0c;但是我们并没有对登录后的请…...

安卓settings单双屏显示

Settings/src/com/android/settings/homepage/SettingsHomepageActivity.java的onCreate方法中&#xff0c;创建布局之前会通过ActivityEmbeddingUtils.isEmbeddingActivityEnabled(this);去获取是否使用嵌入式显示。 mIsEmbeddingActivityEnabled ActivityEmbeddingUtils.is…...

SpringCloud+Vue实现大文件分片下载(支持开始、暂停、继续、取消)

1. 实现效果 http://localhost:8089/#/demo 所有代码已提交至 https://github.com/SJshenjian/cloud.git与 https://github.com/SJshenjian/cloud-web.git中&#xff0c;欢迎star 2. 后端核心代码 FeignClient(value "download", contextId "download"…...

RK3576 Android 14.0 SDK开发指南(第一集)

RK3576 Android 14.0 SDK代码编译 SDK下载到本地后大概70多个G 下载后要做个校验 解压后内核源码 kernel代码路径说明 Android14支持6.1 版本的kernel&#xff0c;kernel源码在工程中kernel-6.1目录下 Lunch项说明 一键编译命令 ./build.sh -UKAupSoc RK3576 SDK默认没有开…...

【C/C++】现代C++线程池:从入门到生产级实现

文章目录 现代C线程池&#xff1a;从入门到生产级实现&#x1f9e0; What Is a Thread Pool?&#x1f9e9; Why Use a Thread Pool?&#x1f530; Part 1: Basic Thread Pool (Beginner)&#x1f527; Minimal Working Code:✅ Usage: &#x1f9d1;‍&#x1f52c; Part 2: …...

后期:daplink

问题描述: 问题一:总工程,USB插入能识别到dap,但有个黄色的感叹号!现在连感叹号都没有了。 重点跟踪了枚举的几个函数,差异点就是有个工厂描述符没有枚举到。 问题二: 下载后,目标板,没有自动复位。 问题三:未移植daplink的时候,虚拟串口是收发正常,貌似没有映射到…...

Android SharedPreferences:从零到一的全面解析与实战指南

简介 SharedPreferences是Android平台提供的一种轻量级键值对存储方案,虽然看似简单,但在实际开发中却蕴含着丰富的技术细节和最佳实践。本文将从基本概念出发,深入分析其源码实现原理,探讨企业级开发中的应用技巧,并提供完整的代码示例,帮助开发者全面掌握这一重要数据…...

推扫式高光谱相机VIX-N230重磅发布——开启精准成像新时代

随着各行业对高光谱成像技术需求的持续增长&#xff0c;市场对于高分辨率、高灵敏度以及快速成像的高光谱相机的需求愈发迫切。中达瑞和凭借多年的行业经验和技术积累&#xff0c;敏锐捕捉到这一市场趋势&#xff0c;正式推出全新一代推扫式可见光近红外高光谱相机——VIX-N230…...

实现rpc通信机制(待定)

一、概述 &#xff08;1&#xff09;rpc&#xff08;remote procedure call, 远程接口调用&#xff09;,就像在本地调用函数一样&#xff0c;是应用组成服务内部分布式的基础功能。应用场景是在内网中的计算&#xff0c;比如&#xff1a;(a) 为上传的一张图片加水印、&#xf…...

STM32--串口函数

USART_GetFlagStatus() 用于获取某个串口的寄存器中的某个标志位的状态&#xff0c;和中断无关。 USART_ClearFlag() 用于清楚串口寄存器中的标志位的状态&#xff0c;和中断无关。 USART_ITConfig() 使能或禁用指定的 USART 中断。 USART_ITConfig(USART1, USART_IT_TXE, …...

Linux跨网络通信中IP与MAC的作用

是的&#xff0c;MAC地址和IP地址分别属于OSI模型的不同层次&#xff0c;并在数据封装过程中被添加到不同的位置&#xff1a; 1. MAC地址&#xff08;数据链路层&#xff09; 作用层级&#xff1a;数据链路层&#xff08;第二层&#xff09;。封装位置&#xff1a;添加到数据链…...

Facebook隐私保护的成与败:一场对用户信任的考验

引言 在这个信息爆炸的时代&#xff0c;Facebook作为全球最大的社交网络平台之一&#xff0c;其隐私保护政策和实践一直是公众关注的焦点。随着数据泄露事件的频发&#xff0c;Facebook在隐私保护方面的成与败&#xff0c;不仅关系到其自身的声誉&#xff0c;更是对用户信任的…...

面试算法刷题3(核心+acm)

102. 二叉树的层序遍历 递归法 核心代码模式 不断递归根节点&#xff0c;根据深度来判断加在哪一层上。 /*** Definition for a binary tree node.* public class TreeNode {* int val;* TreeNode left;* TreeNode right;* TreeNode() {}* TreeNode(in…...

[Java] idea的调试介绍

1. 什么是调试&#xff1f; 调试就是帮助我们去寻找代码中的bug&#xff0c;优化代码的过程。调试对于程序员来说非常重要&#xff0c;能帮助我们更容易去找到代码中的错误&#xff0c;去修复。 2. idea集成开发环境的调试 下面我就介绍下idea集成开发环境下的调试&#xff…...

winrm ‘Protocol‘ object has no attribute ‘run_ps‘

在使用 winrm 库时遇到错误 ‘Protocol’ object has no attribute ‘run_ps’ 通常意味着你正在尝试使用一个不存在的属性或方法。在 Python 中使用 winrm 库时&#xff0c;正确的调用方式应该使用 client 对象来运行 PowerShell 命令&#xff0c;而不是直接在 Protocol 对象上…...

WHAT - CSS 中的 min-width

文章目录 基本语法常见取值使用场景举例min-width: 0为什么 min-width: 0 重要&#xff1f;场景演示提示 注意事项 在 WHAT - CSS 中的 width 中我们已经详细介绍过 width。那为什么 CSS 还要提供一个 min-width&#xff1f; 阅读本文前可先阅读 MDN - min-width。 min-width…...

测试W5500的第2步_使用ioLibrary库创建TCP客户端

ioLibrary库下载地址&#xff1a;文件下载地址:https://gitee.com/wiznet-hk/STM32F10x_W5500_Examples 源文件下载地址:https://gitee.com/wiznet-hk 没有注册的&#xff0c;只能复制粘贴了。 本文介绍了如何初始化STM32的硬件资源&#xff0c;配置W5500的网络参数&#xff…...

深度学习中的正则化方法与卷积神经网络基础

笔记 1 正则化方法 1.1 什么是正则化 防止模型过拟合(训练集效果好, 测试集效果差), 提高模型泛化能力 一种防止过拟合, 提高模型泛化能力的策略 L1正则: 需要通过手动写代码实现 L2正则: SGD(weight_decay) dropout BN 1.2 Dropout正则化 让神经元以p概率随机死亡, 每…...

pg_dump

以下是 PostgreSQL 中 pg_dump 命令的 核心参数 及 使用示例 的详细说明&#xff1a; 一、核心参数分类及说明 pg_dump 主要用于备份单个数据库&#xff0c;支持多种格式和灵活的控制选项。以下是其关键参数分类&#xff1a; 1. 连接参数 参数说明-h, --hostHOST数据库服务器…...

css使用clip-path属性切割显示可见内容

1. 需求 想要实现一个渐变的箭头Dom&#xff0c;不想使用svg、canvas去画&#xff0c;可以考虑使用css的clip-path属性切割显示内容。 2. 实现 <div class"arrow">箭头 </div>.arrow{width: 200px;height: 60px;background-image: linear-gradient(45…...

系统设计——项目设计经验总结1

摘要 在系统设计的时候&#xff0c;注意域的区分&#xff0c;功能区分、类的区分、方法区分范围和定义。在系统设计的时候的&#xff0c;需要思考类、方法在什么情况下会涉及到修改&#xff0c;遵循记住&#xff1a;一个类应该只有一个原因被修改&#xff01; 当不满足&#x…...

如何在WordPress网站上添加即时聊天功能

在 WordPress 网站上添加即时聊天功能既简单又有益。近年来&#xff0c;即时聊天已经有了长足的发展&#xff0c;融入了强大的交流和自动化功能&#xff0c;类似于流行的人工智能聊天机器人。无论您是想提高销售转化率还是将人工智能整合到客户服务流程中&#xff0c;在 WordPr…...

[luogu12542] [APIO2025] 排列游戏 - 交互 - 博弈 - 分类讨论 - 构造

传送门&#xff1a;https://www.luogu.com.cn/problem/P12542 题目大意&#xff1a;给定一个长为 n n n 的排列和一张 m m m 个点 e e e 条边的简单连通图。每次你可以在图上每个点设置一个 0 ∼ n − 1 0\sim n-1 0∼n−1、两两不同的权值发给交互库&#xff0c;交互库会…...

图像处理基础知识

OpenCV计算机视觉开发实践&#xff1a;基于Qt C - 商品搜索 - 京东 信息是自然界物质运动总体的一个重要方面&#xff0c;人们认识世界和改造世界就是要获得各种各样的图像信息&#xff0c;这些信息是人类获得外界信息的主要来源。大约有70%的信息是通过人眼获得的。近代科学研…...

使用MybatisPlus实现sql日志打印优化

背景&#xff1a; 在排查无忧行后台服务日志时&#xff0c;一个请求可能会包含多个执行的sql&#xff0c;经常会遇到SQL语句与对应参数不连续显示&#xff0c;或者参数较多需要逐个匹配的情况。这种情况下&#xff0c;如果需要还原完整SQL语句就会比较耗时。因此&#xff0c;我…...

HarmonyOS5云服务技术分享--ArkTS开发Node环境

✨ 你好呀&#xff0c;开发者小伙伴们&#xff01;今天我们来聊聊如何在HarmonyOS&#xff08;ArkTS API 9及以上&#xff09;中玩转云函数&#xff0c;特别是结合Node.js和HTTP触发器的开发技巧。文章会手把手带你从零开始&#xff0c;用最接地气的方式探索这个功能&#xff0…...

水利数据采集MCU水资源的智能守护者

水利数据采集仪MCU&#xff0c;堪称水资源的智能守护者&#xff0c;其重要性不言而喻。在水利工程建设和水资源管理领域&#xff0c;MCU数据采集仪扮演着不可或缺的角色。它通过高精度的传感器和先进的微控制器技术&#xff0c;实时监测和采集水流量、水位、水质等关键数据&…...

深度学习之用CelebA_Spoof数据集搭建一个活体检测-用MNN来推理时候如何利用Conan对软件包进行管理

我为什么用Conan 前面的文章&#xff1a;深度学习之用CelebA_Spoof数据集搭建一个活体检测-训练好的模型用MNN来推理有提到怎么使用MNN对训练好的模型进行推理&#xff0c;里面并没有提到我是怎么编译和进行代码依赖包的管理的详细步骤&#xff0c;在这里我是用的是Conan:一个…...

深入解剖 G1 收集器的分区模型与调优策略

JVM 垃圾收集系列之三 | 高并发低延迟系统的首选 GC 解法&#xff01; 一、为什么我们需要 G1 垃圾收集器&#xff1f; 在传统 GC&#xff08;如 CMS&#xff09;中&#xff0c;我们常常面临的问题是&#xff1a; GC 停顿不可预测&#xff08;Stop-The-World&#xff09;内存…...

兰亭妙微・UI/UX 设计・全链路开发

【遇见专业设计&#xff0c;共筑卓越产品】 在数字化浪潮中&#xff0c;界面是产品与用户对话的第一窗口。 兰亭妙微&#xff08;蓝蓝设计&#xff09;&#xff0c;自 2008 年深耕 UI/UX 领域&#xff0c;以清华团队为核心&#xff0c;16 年专注软件与互联网产品的界面设计开…...

Babylon.js学习之路《六、材质与纹理:为模型赋予真实的表面效果》

文章目录 1. 引言&#xff1a;材质与纹理的重要性1.1 材质与纹理的核心作用 2. 基础材质&#xff1a;StandardMaterial2.1 材质属性详解2.2 实战&#xff1a;创建金属材质 3. 纹理贴图&#xff1a;从基础到高级3.1 基础纹理映射3.2 多纹理混合技术 4. 高级材质&#xff1a;PBRM…...

飞致云旗下开源项目GitHub Star总数突破150,000个

2025年5月19日&#xff0c;中国领先的开源软件提供商飞致云宣布&#xff0c;其旗下开源项目在代码托管平台GitHub上所获得的Star总数已经超过150,000个。基于在开源领域的长期耕耘和探索&#xff0c;飞致云的开源势能不断增强&#xff0c;获得第一个五万GitHub Star用时89个月&…...

萌新联赛第(三)场

C题 这道题用暴力去写想都不要想&#xff0c;一定超时&#xff0c;于是我们需要优化&#xff0c;下面是思路过程&#xff1a; 如图&#xff0c;本题只需找到x的因数个数和(n-x)的因数个数&#xff0c;这两个相乘&#xff0c;得到的就是对于这个x来说组合的个数&#xff0c;且x…...

cplex12.9 安装教程以及下载

cplex 感觉不是很好找&#xff0c;尤其是教育版&#xff0c;我这里提供一个版本&#xff0c;在下面的图可以看到&#xff0c;不仅可以配置matlab&#xff0c;也可以配置vs,现在拿vs2017来测试一下&#xff0c;具体文件的文件有需要的可以复制下面的链接获取 我用网盘分享了「c…...

Pycharm-jupyternotebook不渲染

解决方案&#xff1a; https://youtrack.jetbrains.com/issue/PY-54244 import plotly.io as pio pio.renderers.default "vscode"...

layui 介绍

layui&#xff08;谐音&#xff1a;类 UI) 是一套开源的 Web UI 解决方案&#xff0c;采用自身经典的模块化规范&#xff0c;并遵循原生 HTML/CSS/JS 的开发方式&#xff0c;极易上手&#xff0c;拿来即用。其风格简约轻盈&#xff0c;而组件优雅丰盈&#xff0c;从源代码到使用…...

大数据相关操作

大数据相关操作 一、环境配置 1、修改主机名 #修改主机名 hostnamectl set-hostname master2、固定IP地址 # 进入修改 sudo vim /etc/netplan/01-network-manager-all.yaml# 修改配置文件 # Let NetworkManager manage all devices on this system network:version: 2rend…...

谷歌宣布推出 Android 的新安全功能,以防止诈骗和盗窃

在上周二的 Android Show 上&#xff0c;也就是Google I/O 开发者大会之前&#xff0c;谷歌宣布了 Android 的全新安全和隐私功能。这些新功能包括对通话、屏幕共享、消息、设备访问和系统级权限的全新保护。谷歌希望通过这些功能保护用户免遭诈骗&#xff0c;在设备被盗或被攻…...

WSL虚拟机整体迁移教程(如何将WSL从C盘迁移到其他盘)

文章目录 WSL虚拟机迁移教程一、查看当前主机的子系统二、导出 WSL 子系统三、将打包好的文件发送给另一个人四、在另一台机器导入并恢复子系统五、附加命令六、注意事项和导出文件信息6.1 注意事项6.2 导出文件信息使用 wsl --export 命令导出整个 WSL 子系统时&#xff0c;它…...

汽车区域电子电气架构(Zonal E/E)的统一

我是穿拖鞋的汉子&#xff0c;魔都中坚持长期主义的汽车电子工程师。 老规矩&#xff0c;分享一段喜欢的文字&#xff0c;避免自己成为高知识低文化的工程师&#xff1a; 钝感力的“钝”&#xff0c;不是木讷、迟钝&#xff0c;而是直面困境的韧劲和耐力&#xff0c;是面对外界…...

开源一个记账软件,支持docker一键部署

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 开源一个记账软件&#xff0c;支持docker一键部署 项目简介功能特性技术栈快速开始环境要求运行步…...

新能源汽车焊接智能节气阀

在新能源汽车产业迅猛发展的浪潮中&#xff0c;制造工艺的优劣直接关系到车辆的性能、安全与市场竞争力。焊接&#xff0c;作为新能源汽车生产流程里的关键一环&#xff0c;无论是构建车身框架&#xff0c;还是连接电池模组&#xff0c;其质量的好坏都起着决定性作用。而在焊接…...