• [课程学习] 云学堂精品课推荐! 《轻松入门大模型RAG》
    你是否还在为AI开发的高门槛发愁?看着心动却无从下手? 由华为云学堂技术团队精心打造的DeepSeek大模型部署系列课程,融合实战经验,体验在线实操,边学边练,为你扫清学习障碍。一次学习终身受用,省去万元试错成本,职业竞争力飙升!本课程将系统性地介绍 RAG(Retrieval-Augmented Generation) 的基本概念、核心原理及其典型应用场景,并深入剖析 RAG 系统的整体搭建流程。此外,本章还将进一步详细探讨如何高效构建高质量的向量知识库,如何通过先进技术手段显著提升检索能力,以及如何优化模型生成能力,从而为用户提供更加精准、智能的解决方案。课程目标:1、掌握RAG的定义2、熟悉RAG的工作流程3、了解RAG的召回优化方法点击课程链接学习,开启你的AI模型部署高光时刻!  
  • [问题求助] 组件执行延时问题
    针对组件的属性“执行前延时”,一般哪些类型的组件需要设置延时,延时通常设置多长时间合理?如果前后两个组件之间没有依赖关系,后一个组件的“执行前延时”可以不用设吗
  • [热门活动] 【重磅来袭】DeepSeek-R1昇腾满血版入驻华为开发者空间!互动体验,瓜分福利!
    摘要:开发者的“超级引擎”来了!华为开发者空间又双叒叕迎来“超级伙伴”!DeepSeek-R1(昇腾满血版)正式入驻,依托华为昇腾算力与强化学习技术,在极少标注数据下显著提升模型推理能力,助力开发者一键解锁大模型的无限潜能。 一键启动,极速响应,开发者的通用智能中枢DeepSeek-R1(昇腾满血版)搭载‌671B超大规模参数模型‌,支持多轮对话及复杂逻辑推理,如长文本交互及代码生成等高阶任务,响应速度突破秒级门槛。开发者在空间开发桌面也可轻松调用大模型处理技术难题、开发瓶颈等场景需求。预置场景“拿来即用”,降低从创意到产品的技术壁垒华为开发者空间提供一站式开发环境,与DeepSeek-R1(昇腾满血版)模型库结合使用,可调用行业场景中的标杆案例代码,促进开发者快速构建应用。“光用不练假把式”,教你在开发者空间部署DeepSeek开发者空间通过构建沉浸式技术实践平台,为开发者提供深度掌握前沿技术的实战场景。案例中心集成完整项目源码、配置模板及技术文档,开发者基于空间的开发桌面即可一站式部署DeepSeek等相关技术,真正实现"会用能练"的技术成长闭环。自主编程之Cline×DeepSeek的智能融合探索基于DeepSeek+Dify构建财务报表分析模型基于DeepSeek和Dify构建心理咨询师应用华为开发者空间致力于为全球开发者提供顶尖的技术平与创新土壤。DeepSeek-R1(昇腾满血版)的入驻,标志着昇腾生态的进一步开放,更为华为开发者空间构筑了坚实的生态壁垒。无论是探索前沿技术,还是解决行业痛点,华为开发者空间都将成为你的最强助力。即刻访问华为开发者空间,开启DeepSeek之旅!点击链接特别福利福利时间:即日起-4月18日福利规则:在评论区分享与开发者空间DeepSeek-R1(昇腾满血版)对话截图,抽送华为蓝牙鼠标、华为云云宝盲盒。抽奖奖品:华为蓝牙鼠标3件,华为云云宝盲盒10个
  • [问题求助] 高斯数据库查询视图,输出三种格式,如何只输出驼峰格式的数据
    只要驼峰格式的,视图里面 用  a.issue_year as "issueYear" 这么拼的,查询后输出三种格式,怎么只输出驼峰的,有什么解决方法吗
  • GaussDB 集中式安装部署小实践及常见错误解决
    GaussDB 集中式数据库的下载和安装过程相对复杂,以下是详细步骤:下载 GaussDB 集中式数据库GaussDB 集中式数据库的下载通常需要通过华为云平台进行。用户可以在华为云的官方网站上找到 GaussDB 的相关下载页面。例如,在华为云的 GaussDB 产品页面中,用户可以找到下载客户端和驱动程序的链接。安装 GaussDB 集中式数据库GaussDB 集中式数据库的安装过程通常涉及以下几个步骤:准备环境:确保服务器环境满足 GaussDB 的安装要求,包括操作系统版本、硬件配置等。下载安装包:从华为云平台下载 GaussDB 集中式数据库的安装包。解压安装包:将下载的安装包解压到指定目录。配置参数:根据实际环境配置安装参数,如数据库端口、数据目录等。执行安装脚本:运行安装脚本,按照提示完成安装过程。启动服务:安装完成后,启动 GaussDB 服务。在安装过程中,可能需要参考详细的安装指南或文档,例如华为云提供的《安装指南》。https://doc.hcs.huawei.com/db/zh-cn/gaussdb/24.7.30.10/productdesc/gaussdb_01_061.html安装示例以下是一个简化的安装示例,假设已经下载了 GaussDB 集中式数据库的安装包并解压到了指定目录:# 进入安装目录cd /path/to/gaussdb_installation# 配置安装参数vi install.conf# 执行安装脚本./install.sh在实际操作中,可能需要根据具体的安装指南和环境要求进行调整。注意事项确保服务器环境满足 GaussDB 的安装要求,包括操作系统版本、硬件配置等。在安装过程中,可能需要 root 权限或特定用户权限。安装过程中可能会提示输入一些配置信息,如数据库端口、数据目录等,需要根据实际环境进行配置。安装完成后,建议进行一些基本的配置和测试,确保数据库服务正常运行。在GaussDB集中式数据库的安装过程中,可能会遇到以下常见错误:网络连接问题:网络连接建立失败,导致无法与数据库建立通信。执行SQL操作时,报网络异常中断的错误。连接数据库或执行查询时发生进程停止响应。安装包分发失败:SFTP安装失败,导致无法将安装包分发到目标主机。主机管理问题:主机管理配置错误,导致无法正确识别和管理安装主机。依赖软件缺失或版本不匹配:缺少必要的依赖软件,如openssl或expect,导致安装脚本无法执行。依赖软件版本不匹配,例如JDK和Maven版本与Spring-boot的包加载版本不匹配,导致启动Java Demo应用并激活Skywalking Agent时报错。配置文件错误:配置文件(如install_cluster.conf)中的参数设置错误,例如IP地址配置错误,导致安装过程无法正确识别主机。json文件中的IP地址设置错误,导致无法正确配置集群。证书生成和安装问题:证书生成过程中出现错误,导致无法生成必要的证书文件(如ca.pem、server.key、server.pem)。证书安装失败,导致无法建立安全的通信通道。OmAgent安装失败:OmAgent安装过程中出现错误,导致无法正确监控和管理数据库实例。预安装和安装过程错误:预安装过程中出现错误,导致无法完成必要的系统配置和环境准备。安装过程中出现错误,导致无法正确部署数据库实例。实例状态检查失败:安装完成后,无法正确查询和确认数据库实例的状态,导致无法确认安装是否成功。hostIp获取错误:在虚拟机环境下,可能会出现hostname为bogon的情况,导致hostIp获取错误。安全组配置问题:安全组外访问安全组内的GaussDB实例时,如果没有为安全组添加相应的入方向规则,可能导致连接失败。JDK版本问题:如启动Java Demo应用并激活Skywalking Agent时,可能因为JDK版本与Spring - boot的包加载版本不匹配导致报错。Maven版本问题:Maven版本太高可能导致适配问题,例如使用Maven - 3.9.6版本时可能出现适配问题。依赖库问题:如在启动Java Demo应用并激活Skywalking Agent时,可能出现curl: symbol lookup error: /lib64/libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b的错误,这是由于依赖库的问题。
  • [热门活动] 华为开发者布道师技术直播第10期·基于华为云+DeepSeek大模型的脑肿瘤分割实验教学案例
    【精彩直播预告】🌟 基于华为云+DeepSeek大模型的脑肿瘤分割实验教学案例 🌟📢 第10期华为开发者布道师技术直播 | 桂林电子科技大学教师 林承德亲临分享本期直播,我们将深入探讨如何利用华为云和先进的大模型技术,直播打造脑肿瘤分割实验的高效AI助手!直播亮点抢先看:✨ 高效微调DeepSeek大模型:学习如何通过微调DeepSeek大模型,打造脑肿瘤分割实验AI助手,显著提升分割精度与效率。✨ 基于华为云+MindSpore的迁移训练:了解如何基于华为云的强大计算能力和MindSpore框架,快速实现脑肿瘤分割模型的迁移学习,加速科学研究与技术进步。📅 时间:4月10日19:00-20:30报名地址:基于华为云+DeepSeek大模型的脑肿瘤分割实验教学案例_开发者活动_华为 (huawei.com)  
  • [版主交流] 【华为云社区外部版主】2025年3月激励评比结果已公布!
    各位亲爱的版主们,大家好!经过大家一个月的努力角逐,3月外部版主激励评比结果已出炉,数据公示如下,请查看!(在新标签页打开图片可查看清晰大图/见附件)·外部版主激励规则:点击了解更多转正礼/基础任务/额外任务(在线时长15小时+,主题帖15+,回帖30+,技术长文5+/原创技术干货1+,合集1+,有效回复问题求助帖10+,话题互动1+,完成这4项指标可获对应价值的代金券/实物礼品)请完成任务获得激励的版主,点击填写激励发放意愿统计问卷反馈截止时间:2025年4月10日,以便小编进行相应的激励发放。注:在线时长数据达标后,才会再去考察达标版主的三项任务完成情况;主题数+回帖数达标后,才会再去考察达标版主的技术长文数量情况。
  • [热门活动] 华为开发者布道师技术沙龙 第9期 海思星闪大师班 线上线下同步活动“基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战”总结简报
    【直播回放】直播回放地址Day1直播回放地址Day2【活动总结】 华为开发者布道师技术沙龙·直播间精彩回顾【第1期】联接高校人才培养与前沿产业技术,成就学生未来 / 李一浩老师【第2期】逐梦之旅:学生开发者到华为开发者布道师的蜕变 / 杨阳同学【第3期】昇思MindSpore:AI 领域的创新力量与跨平台之路 / 陈新杰同学【第4期】基于OpenHarmony计算机学科人才培养经验分享 / 周睿老师【第5期】计算机核心课程贯通式实践教学体系介绍 / 赵欢老师、李博经理、杨科华老师 【第6期】OpenHarmony应用开发之网络数据请求与数据解析 / 倪红军老师【第7期】华为开发者空间玩转DeepSeek / 马欣老师【第8期】基于能力图谱的openGauss项目闯关 / 马瑞新老师【第9期Day1】基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战 / 齐耀龙老师【第9期Day2】基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战 / 齐耀龙老师    
  • [技术干货] 直播预告|新手从搭建到二开TinyEngine低代码引擎
    TinyEngine 低代码引擎使能开发者定制低代码平台。它是低代码平台的底座,提供可视化搭建页面等基础能力,既可以通过线上搭配组合,也可以通过创建cli工程进行二次开发,实时定制出自己的低代码平台。适用于多场景的低代码平台开发,如:资源编排、服务端渲染、模型驱动、移动端、大屏端、页面编排等。社区贡献者观默评价它:“基于 Vue3,利用 DSL 实现从 schema 生成源码,支持多框架集成,且拥有强大的插件系统,能实现各种定制化开发的需求”。如果你正在寻找一款趁手的低代码引擎或者你对低代码开发感兴趣,那你不妨来试试 TinyEngine。本期直播将通过实战分享,手把手带你完成项目搭建、组件库部署与注册并开发一款简单的插件。直播详情:  
  • [热门活动] 【云学堂直播】从AI基础到昇腾:大模型初探、DeepSeek解析与昇腾入门
    直播主题:从AI基础到昇腾:大模型初探、DeepSeek解析与昇腾入门直播时间:2025年4月2日  16:00-17:30直播简介: 昇腾是华为研发的AI芯片,其具有哪些能力?我们如何基于其进行开发?本期直播将从AI以及大模型基础知识开始,介绍人工智能核心概念、昇腾AI基础软硬件平台以及昇腾专区,旨在为零基础或入门级学习者搭建从AI基础知识到昇腾技术的完整学习路径。 本期直播亮点:1、人工智能及大模型主流技术介绍2、DeepSeek核心技术解析3、昇腾全栈能力介绍以及昇腾专区实操。直播入口:cid:link_0   
  • [产品讨论] 忘记收费网盘吧,开发者可以用OBS+ECS自主搭建网盘------ZPan
    https://zpan.space/ZPan致力于打造一款不限速的网盘系统,因此采用客户端直连云存储的方式进行设计。目前支持所有兼容S3协议的云存储平台,可以选用您熟悉的平台来驱动ZPanZPan本质上是一个URL签名服务器+可视化的文件浏览器。因为采用直链的方式进行上传下载,所以为了保证上传下载的安全性,客户端用来上传下载的URL均需要服务端进行签名。然后为了能方便的管理用户上传的文件,我们就需要开发一个可视化的伪文件系统来进行文件管理。特色完全不受服务器带宽限制支持所有兼容S3协议的云存储支持文件及文件夹管理支持文件及文件夹分享(未登录可访问)支持文档预览及音视频播放支持多用户存储空间控制支持多语言
  • Head Dimension简介
    注意力头维度(Head Dimension)是Transformer模型中多头注意力机制(Multi-Head Attention)的一个关键参数,表示每个注意力头(Head)中键(Key)、查询(Query)和值(Value)向量的特征维度。它的作用是为模型提供不同的子空间来学习多样化的注意力模式。核心概念多头注意力机制:将输入序列的嵌入表示(Embedding)拆分为多个“头”(Head),每个头独立计算注意力权重。最终将所有头的输出拼接起来,通过线性变换得到最终结果。Head Dimension的定义:假设输入向量的总维度是 d_model,头的数量是 h,则每个头的维度为:[\text{head_dim} = \frac{d_model}{h}]例如,d_model=512,h=8,则 head_dim=64。为什么需要Head Dimension?并行化学习:每个头在独立的子空间中学习不同的注意力模式(例如关注局部/全局、语法/语义等)。较小的 head_dim 可以降低计算复杂度,但需平衡头的数量。计算效率:注意力分数的计算复杂度为 ( O(n^2 \cdot d) )(n为序列长度,d为维度)。通过拆分多头,实际复杂度变为 ( O(n^2 \cdot \frac{d}{h}) ),更高效。模型容量:更大的 head_dim 可能让单个头学到更复杂的模式,但需更多参数和计算资源。实际应用中的调整固定比例:通常保持 head_dim 和 h 的乘积等于 d_model(如原始Transformer论文)。例如,d_model=768,h=12 → head_dim=64。灵活设计:某些模型(如GPT-3)可能调整 head_dim 和 h 的比例以优化性能。极端情况下,head_dim=1(每个头仅关注一个标量特征)。示例代码(PyTorch)import torch import torch.nn as nn d_model = 512 h = 8 head_dim = d_model // h # 定义多头注意力层 multihead_attn = nn.MultiheadAttention(embed_dim=d_model, num_heads=h, head_dim=head_dim) # 输入序列(序列长度=10,batch_size=2) x = torch.randn(10, 2, d_model) # [seq_len, batch, d_model] output, _ = multihead_attn(x, x, x) 常见问题Head Dimension是否必须等于 d_model/h?不一定,但这是标准做法。某些模型(如ALBERT)会共享头的参数以减少计算量。维度如何影响性能?过小的 head_dim 可能限制单个头的表达能力,过大会增加计算开销。通常通过实验调整(例如在 64-128 之间)。与模型深度的关系?深层Transformer可能逐渐减少 h 并增大 head_dim,以捕捉更高阶特征。总结来说,Head Dimension是平衡模型表达能力、计算效率和并行化学习的关键参数,需要根据任务需求和资源约束合理设计。
  • Linux完美卸载Chrome浏览器
    1. 确认 Google Chrome 是否已安装在卸载之前,可以先确认系统中是否已经安装了 Google Chrome。运行以下命令:dpkg -l | grep google-chrome如果输出中包含类似 google-chrome-stable 的条目,则说明 Google Chrome 已安装。2. 卸载 Google Chrome根据安装方式的不同,卸载方法如下:方法一:使用 apt 卸载(推荐)Google Chrome 在安装时会自动注册到系统的包管理器中,因此可以通过 apt 命令卸载:sudo apt remove --purge google-chrome-stableremove:卸载软件。--purge:同时删除配置文件(如果需要保留配置文件,可以省略此选项)。卸载完成后,运行以下命令清理残留文件:sudo apt autoremove方法二:使用 dpkg 卸载如果更倾向于使用 dpkg,可以直接运行以下命令:sudo dpkg -r google-chrome-stable此命令会卸载 Google Chrome,但不会删除配置文件。如果需要彻底删除配置文件,可以手动清理相关目录。3. 清理残留文件即使卸载了 Google Chrome,某些配置文件或缓存可能仍会保留在系统中。可以检查并删除这些文件:配置文件通常位于用户的主目录下:rm -rf ~/.config/google-chrome缓存文件可能位于:rm -rf ~/.cache/google-chrome4. 验证卸载是否成功再次运行以下命令,确认 Google Chrome 是否已完全卸载:dpkg -l | grep google-chrome如果没有输出,则说明卸载成功。总结卸载 Google Chrome 的完整流程如下:使用 apt remove --purge google-chrome-stable 或 dpkg -r google-chrome-stable 卸载软件。清理残留的配置文件和缓存。验证卸载结果。
  • 使用华为NPU的注意事项
    在使用华为NPU时,不要直接依赖npu-smi info中显示的物理NPU INDEX1. npu-smi info显示的是宿主机的全局物理索引物理索引与容器内逻辑索引不一致npu-smi是宿主机的管理工具,显示的NPU INDEX是全局物理索引(例如宿主机上的0,1,2,...)。但在容器中,通过ASCEND_VISIBLE_DEVICES环境变量限制可见设备后,代码中实际使用的是逻辑索引(从0开始的连续编号),而非物理索引。示例:宿主机有8个NPU,用户分配了物理卡3和5给容器:docker run -e ASCEND_VISIBLE_DEVICES=3,5 ...容器内通过npu-smi info仍会看到物理索引3和5,但代码中需使用逻辑索引0和1。2. 代码中必须使用逻辑索引华为NPU驱动要求逻辑索引华为NPU的驱动或框架(如MindSpore、TensorFlow等)会将ASCEND_VISIBLE_DEVICES指定的物理设备按顺序映射为逻辑索引。例如:# 容器内设置可见设备为物理卡3和5 os.environ['ASCEND_VISIBLE_DEVICES'] = '3,5' # 代码中调用逻辑索引0,实际对应物理卡3 device_id = 0 # 正确用法 若直接使用物理索引3,会因超出容器内逻辑索引范围(仅有0和1)导致错误。3. 避免资源冲突与权限问题容器内权限受限容器只能访问ASCEND_VISIBLE_DEVICES指定的物理设备。若用户误用npu-smi看到的物理索引(如直接调用未分配的卡0或1),可能因权限不足或设备不存在导致程序崩溃。4. 逻辑索引与物理索引的映射关系逻辑索引是容器内的“虚拟视图”通过ASCEND_VISIBLE_DEVICES设置的物理设备,在容器内会被重新编号为0,1,...,N-1。例如:宿主机物理索引:0,1,2,3,4,5,6,7容器内设置:ASCEND_VISIBLE_DEVICES=3,5容器内逻辑索引:0 -> 3,1 -> 5正确使用方法分配设备时指定物理索引在容器启动时通过环境变量指定宿主机的物理NPU:docker run -e ASCEND_VISIBLE_DEVICES=3,5 ...代码中始终使用逻辑索引在代码中按0,1,...顺序调用设备,驱动会自动映射到物理设备:# 示例:MindSpore中使用NPU import os os.environ['ASCEND_VISIBLE_DEVICES'] = '3,5' # 宿主机物理索引 context.set_context(device_id=0) # 逻辑索引0(对应物理卡3) 总结npu-smi info的物理索引是宿主机全局视角,容器内代码需使用逻辑索引(从0开始)。直接使用物理索引会导致设备不可见、权限错误或程序崩溃。始终通过ASCEND_VISIBLE_DEVICES设置物理设备,并在代码中按逻辑索引调用。
  • 嵌入式模型有关维度大小问题
    在使用嵌入式模型,有可能遇到以下错误dimension 512 does not match collection dimensionality 1024从错误信息来看,遇到的问题是 嵌入维度不匹配。具体来说,代码中使用的嵌入维度是 512,而模型或数据集的预期维度是 1024。这种问题通常发生在以下几种情况下:问题分析嵌入维度不一致:模型在训练时使用的是 1024 维度的嵌入(可能是预训练模型的默认设置)。但在推理或加载时,您提供的嵌入维度是 512,导致维度不匹配。可能的原因:使用了错误的嵌入层或权重文件。加载的模型与当前使用的嵌入维度不兼容。数据处理过程中,嵌入维度被错误地调整为 512。常见场景:如果您正在使用预训练模型(如 BERT、GPT 等),模型的嵌入维度通常是固定的(例如 768 或 1024),不能随意更改。如果您自定义了嵌入层,但没有正确对齐模型的输入维度。解决方案1. 检查模型的嵌入维度确认模型的嵌入层是否确实需要 1024 维度。可以通过查看模型的架构或文档来确认。如果模型要求 1024 维度,那么您需要确保所有输入数据和嵌入层都符合这一要求。2. 调整嵌入维度如果您的嵌入维度是 512,而模型需要 1024,可以尝试以下方法:扩展嵌入维度:通过线性投影将 512 维度扩展到 1024 维度。例如:import torch.nn as nn # 假设 input_embeddings 是形状为 (batch_size, seq_len, 512) 的张量 projection_layer = nn.Linear(512, 1024) expanded_embeddings = projection_layer(input_embeddings) 截断嵌入维度:如果模型允许,可以尝试截断多余的维度(虽然这种方法可能会丢失信息):# 假设 input_embeddings 是形状为 (batch_size, seq_len, 1024) 的张量 truncated_embeddings = input_embeddings[:, :, :512] 3. 检查权重文件如果您是从预训练模型加载权重,确保权重文件与当前模型的嵌入维度一致。如果权重文件是 1024 维度,但您加载时使用了 512 维度的嵌入层,会导致维度不匹配。4. 修改代码中的嵌入层如果您自定义了嵌入层,确保其输出维度与模型的要求一致。例如:embedding_layer = nn.Embedding(num_embeddings=vocab_size, embedding_dim=1024) 5. 检查数据处理流程确保在数据处理过程中,嵌入维度没有被意外修改。例如,检查是否有代码将嵌入维度从 1024 改为 512。6. 使用正确的预训练模型如果您使用的是预训练模型,确保加载的模型与当前任务的嵌入维度一致。例如,某些模型可能有不同版本,分别对应不同的嵌入维度(如 768 或 1024)。示例代码假设您正在使用 PyTorch,并且需要将嵌入维度从 512 扩展到 1024,可以参考以下代码:import torch import torch.nn as nn # 假设输入嵌入的维度是 512 input_embeddings = torch.randn(32, 128, 512) # batch_size=32, seq_len=128, embedding_dim=512 # 定义一个线性投影层,将 512 维度扩展到 1024 维度 projection_layer = nn.Linear(512, 1024) # 扩展嵌入维度 expanded_embeddings = projection_layer(input_embeddings) print(expanded_embeddings.shape) # 输出: torch.Size([32, 128, 1024]) 总结核心问题:嵌入维度不匹配(512 vs 1024)。解决思路:确认模型的嵌入维度要求。调整嵌入维度以匹配模型要求(扩展或截断)。检查权重文件和数据处理流程。使用正确的预训练模型或嵌入层。