-
资源购买资源名称规格操作系统存储ECS鲲鹏内存优化型 km1.xlarge.8 4vCPUs 32GiBHuawei Cloud EulerOS 2.0 标准版 64位 ARM版系统盘:超高IO,100GiB基础软件安装Condamkdir -p ~/miniconda3 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-aarch64.sh -O ~/miniconda3/miniconda.sh bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3 rm -f ~/miniconda3/miniconda.sh source ~/miniconda3/bin/activate conda init --allPython & Pip官方默认安装的python版本为3.99,版本比较低,这里使用Conda创建一个3.10的虚拟环境。conda create -n QAnything python=3.10 conda activate QAnything # 设置 pip软件源 pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple python -m pip install --upgrade pipDocker & Docker Compose官方默认安装的docker版本为18.09.0,版本比较低,很多新的特性无法使用,如docker-buildx等,建议升级到最新版本。因为官方并未提供Huawei Cloud EulerOS 2.0的repo支持,所以可以采取以下方式进行安装。如果之前安装过docker,要先删掉之后再安装依赖sudo dnf remove docker docker-ce-cli docker-selinux docker-engine下载repo文件wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's+download.docker.com+mirrors.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo sudo sed -i 's+$releasever+9.9+' /etc/yum.repos.d/docker-ce.repo安装新版本sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin设置开机启动sudo systemctl enable --now docker配置镜像加速器vi /etc/docker/daemon.json # 粘贴以下配置,保存退出,镜像地址可替换成自己在华为云申请的镜像加速器地址 { "registry-mirrors": [ "https://docker.1ms.run", "https://docker.xuanyuan.me"] } 重启dockersystemctl restart docker下载QAnything源码git clone https://github.com/netease-youdao/QAnything.git官方的docker镜像xixihahaliu01/qanything-linux:v1.5.1 是在X86的服务器下构建的,无法在ARM架构下运行,需要手动构建Docker镜像。构建QAnything镜像进入build_images,查看Dockerfile,可以得到以下几点信息Dockerfile文件要移动到父目录下才能构建需要准备models、nltk_data文件夹数据# 复制 requirements.txt 文件到容器中 COPY requirements.txt /tmp/requirements.txt # 复制 models 文件夹到 /root 目录 COPY models /root/models COPY nltk_data /root/nltk_data想知道model文件夹下要准备什么数据就要看这个文件复制到容器后是如何使用的,通过docker-compose-linux.yaml 可知,运行qanything-container-local容器时会执行/bin/bash -c "cd /workspace/QAnything && bash scripts/entrypoint.sh",打开script/entrypoint.sh,其中跟/root/models和/root/nltk_data有关的信息如下:# 创建软连接 if [ ! -L "/workspace/QAnything/qanything_kernel/dependent_server/embedding_server/embedding_model_configs_v0.0.1" ]; then # 如果不存在软连接 cd /workspace/QAnything/qanything_kernel/dependent_server/embedding_server && ln -s /root/models/linux_onnx/embedding_model_configs_v0.0.1 . fi if [ ! -L "/workspace/QAnything/qanything_kernel/dependent_server/rerank_server/rerank_model_configs_v0.0.1" ]; then # 如果不存在软连接 cd /workspace/QAnything/qanything_kernel/dependent_server/rerank_server && ln -s /root/models/linux_onnx/rerank_model_configs_v0.0.1 . fi if [ ! -L "/workspace/QAnything/qanything_kernel/dependent_server/ocr_server/ocr_models" ]; then # 如果不存在软连接 cd /workspace/QAnything/qanything_kernel/dependent_server/ocr_server && ln -s /root/models/ocr_models . # 创建软连接 fi if [ ! -L "/workspace/QAnything/qanything_kernel/dependent_server/pdf_parser_server/pdf_to_markdown/checkpoints" ]; then # 如果不存在软连接 cd /workspace/QAnything/qanything_kernel/dependent_server/pdf_parser_server/pdf_to_markdown/ && ln -s /root/models/pdf_models checkpoints # 创建软连接 fi if [ ! -L "/workspace/QAnything/nltk_data" ]; then # 如果不存在软连接 cd /workspace/QAnything/ && ln -s /root/nltk_data . # 创建软连接 fi从脚本内容结合官方README可知,models文件夹中要准备embedding、rerank、ocr、pdf四个模型,nltk_data下要准备nltk 数据model文件夹下要准备的数据下面下载模型数据都是在QAnything目录下执行安装modelscopepip install modelscopebce-embedding-base_v1modelscope download --model netease-youdao/bce-embedding-base_v1 --local_dir ./models/linux_onnx/embedding_model_configs_v0.0.1bce-reranker-base_v1modelscope download --model netease-youdao/bce-reranker-base_v1 --local_dir ./models/linux_onnx/rerank_model_configs_v0.0.1pdf_models和ocr_modelmodelscope download --model netease-youdao/QAnything-pdf-parser --local_dir ./models/pdf_modelspdf_models中已经包含了ocr,可以重用,这里要改下entrypoint.sh中ocr_models路径if [ ! -L "/workspace/QAnything/qanything_kernel/dependent_server/ocr_server/ocr_models" ]; then # 如果不存在软连接 cd /workspace/QAnything/qanything_kernel/dependent_server/ocr_server && ln -s /root/models/pdf_models/ocr ocr_models # 创建软连接 finltk_data文件夹下要准备的数据modelscope download --dataset CaiJichang/nltk_data --local_dir ./nltk_data构建之前需要对项目中的一些文件做些优化。Dockfile优化在QAnything目录下创建新的Dockerfilevi Dockerfile # 添加以下内容 # 使用官方 Python 3.10.14 镜像作为基础镜像 FROM python:3.10-slim # 替换APT源 RUN sed -i 's/http:\/\/deb.debian.org\//https:\/\/mirrors.huaweicloud.com\//g' /etc/apt/sources.list.d/debian.sources # 设置时区 ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 安装 RUN apt-get update && apt-get install -y \ vim \ wget \ htop \ build-essential \ procps \ && rm -rf /var/lib/apt/lists/\* # 创建TikToken缓存目录 RUN mkdir /opt/tiktoken_cache # 下载TikToken模型缓存 ARG TIKTOKEN_URL="https://openaipublic.blob.core.windows.net/encodings/cl100k_base.tiktoken" RUN wget -O /opt/tiktoken_cache/$(echo -n $TIKTOKEN_URL | sha1sum | head -c 40) "$TIKTOKEN_URL" # 设置环境变量指向TikToken缓存目录 ENV TIKTOKEN_CACHE_DIR=/opt/tiktoken_cache # 复制 requirements.txt 文件到容器中 COPY requirements.txt /tmp/requirements.txt RUN pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple \ && python -m pip install --upgrade pip # 安装 Python 依赖(torch单独安装CPU版本) RUN pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu \ && pip install -r /tmp/requirements.txt # 复制 models 文件夹到 /root 目录 COPY models /root/models COPY nltk_data /root/nltk_data # 设置工作目录 WORKDIR /workspace # 清理 APT 缓存 RUN apt-get clean && rm -rf /var/lib/apt/lists/\* # 设置默认命令 CMD ["/bin/bash"] requirements.txt优化默认的依赖包中会安装CUDA依赖,本次我们是纯CPU部署,不需要这些。vi requirements.txt # 添加以下内容 onnxruntime==1.17.1 xgboost-cpu==3.0.0 concurrent-log-handler==0.9.25 boto3==1.34.79 sanic==23.6.0 sanic_ext==23.6.0 langchain-openai==0.3.7 langchain_elasticsearch==0.3.2 langchain-community==0.3.18 unstructured==0.12.4 unstructured[pptx]==0.12.4 unstructured[md]==0.12.4 opencv-python-headless==4.9.0.80 python-dotenv==1.0.1 mysql-connector-python==8.2.0 pymilvus==2.5.5 aiomysql==0.2.0 PyMuPDF==1.24.4 openpyxl==3.1.2 python-docx==1.1.0 newspaper4k==0.9.3.1 newspaper4k[zh]==0.9.3.1 duckduckgo-search==5.3.0b4 html2text==2024.2.26 mistune==3.0.2 flair==0.13.0 nltk==3.8.1 pandas==2.1.1 scikit-learn==1.3.2 chardet==5.2.0 scipy==1.10.1 fastchat==0.1.0 wikipedia==1.4.0 Wikipedia-API==0.6.0 rouge-score==0.1.2 toml==0.10.2 tqdm==4.66.1 anthropic==0.25.7 streamlit==1.34.0 zhipuai==2.0.1.20240429 tiktoken==0.7.0 modelscope==1.13.0 cryptography==42.0.8 shapely==2.0.4 pyclipper==1.3.0.post5 pdfplumber==0.11.0 markdownify==0.12.1 datrie==0.8.2 hanziconv==0.3.2 PyPDF2==3.0.1 lxml_html_clean==0.1.1 docx2txt==0.8 构建docker镜像# 在QAnything目录下执行 docker build -t xixihahaliu01/qanything-linux:v1.5.1 . docker-compose-linux.yaml优化在qanything_local下的volumes,其实不用把整个QAnything映射到容器中,只需要映射需要的文件即可 volumes: - ${DOCKER_VOLUME_DIRECTORY:-.}/qanything_kernel:/workspace/QAnything/qanything_kernel - ${DOCKER_VOLUME_DIRECTORY:-.}/logs:/workspace/QAnything/logs - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes:/workspace/QAnything/volumes - ${DOCKER_VOLUME_DIRECTORY:-.}/QANY_DB:/workspace/QAnything/QANY_DB - ${DOCKER_VOLUME_DIRECTORY:-.}/scripts/entrypoint.sh:/workspace/QAnything/scripts/entrypoint.sh代码优化qanything_kernel/core/retriever/vectorstore.py@get_time def delete_expr(self, expr): # 如果expr为空,则不执行删除操作 result = self.get_local_chunks(expr) if result is None or len(result) == 0: debug_logger.info(f'expr: {expr} not found in local milvus') return qanything_kernel/dependent_server/embedding_server/embedding_server.py 和 qanything_kernel/dependent_server/rerank_server/rerank_server.py增加以下代码from sanic.worker.manager import WorkerManager WorkerManager.THRESHOLD = 600 qanything_kernel/configs/model_config.py增加以下配置DEFAULT_PROMPT_TEMPLATE = """ 参考信息: {{context}} --- 我的问题或指令: {{question}} --- 请根据上述参考信息回答我的问题或回复我的指令。前面的参考信息可能有用,也可能没用,你需要从我给出的参考信息中选出与我的问题最相关的那些,来为你的回答提供依据。回答一定要忠于原文,简洁但不丢信息,不要胡乱编造。我的问题或指令是什么语种,你就用什么语种回复,你的回复: """ # 匹配后单段上下文长度 CHUNK_SIZE = 800 修改以下配置# 知识库检索时返回的匹配内容条数 VECTOR_SEARCH_TOP_K = 5 # embedding检索的相似度阈值,归一化后的L2距离,设置越大,召回越多,设置越小,召回越少 VECTOR_SEARCH_SCORE_THRESHOLD = 0.5 qanything_kernel/core/local_doc_qa.py # 在下面语句后增加 DEFAULT_PROMPT_TEMPLATE from qanything_kernel.configs.model_config import DEFAULT_PROMPT_TEMPLATE # 586~592做以下修改 if custom_prompt: # prompt_template = CUSTOM_PROMPT_TEMPLATE.replace("{{custom_prompt}}", custom_prompt) prompt_template = custom_prompt else: # system_prompt = SYSTEM.replace("{{today_date}}", today).replace("{{current_time}}", now) # prompt_template = PROMPT_TEMPLATE.replace("{{system}}", system_prompt).replace("{{instructions}}",INSTRUCTIONS) prompt_template = DEFAULT_PROMPT_TEMPLATE 启动项目run.sh 修改# 修改run.sh 93行 source ./.env启动# 在QAnything目录下执行 bash run.sh出现以下信息表示启动成功了访问项目在运行run.sh过程中会询问是在本地部署还是云服务上部署,如果是云服务器部署,就填入弹性IP的地址即可。体验项目新建知识库上传文档目前支持文件格式md、txt、pdf、jpg、png、jpeg、docx、xlsx、pptx、eml、csv, 单个文档小于30M, 单张图片小于5M, 文件总大小不得超过125M.文档越大,处理时间越长.备注中可以看大部分时间都耗费在embedding中,如果文档太大也可能会超时导致失败.预览切片结果PDF文件的解析原理是将其转换成Markedown文件,这可以最大限度保证原版的样式和内容.可以对照源文件对比查看,支持编辑修改.配置LLM大模型这里使用华为云ModelArts Studio大模型服务来作为LLM的提供商进入产品官网ModelArts Studio在API Key管理菜单项中申请一个Api Key进入在线推理菜单项,领取大模型服务免费额度进入对应服务的调用说明获取调用参数配置模型提供商问答会话接下来就可以进行问答会话了,这里用的是外部LLM服务,响应还是非常快的.
-
https://bbs.huaweicloud.com/forum/forum-01119169788590309025-1.html
-
沃土云创-鲲鹏云认证-开发者操作指导
-
WordPress1、【安装WordPress时】数据库连接不成功问题描述:配置好WordPress连接数据库,浏览器访问“http://服务器IP地址/wordpress/wp-admin/install.php”进入安装向导时,提示:问题定位:编辑“wp-config.php”文件时,写入数据库信息不准确,导致连接数据库不成功问题分析:“wp-config.php”是wordpress的基础配置文件,其中,DB_NAME控制数据库名称,需要将“database_name_here”替换成要连接的数据库名称;DB_HOST字段控制数据库的地址配置解决方案:场景1:数据库使用远程连接。编辑“wp-config.php”文件,确认用户和密码准确。确认连接的数据库存在。DB_HOST设置为数据库的私网IP或公网IP。场景2:数据库使用本地连接。nginx 的localhost与127.0.0.1没有映射。修改localhost为127.0.0.1后连接成功。注意:同一个用户远程和本地的密码是不同的,在服务器本地登录时优先匹配本地的。1)本地有设置密码:2)本地没有设置密码:2、【安装WordPress时】安装好WordPress,网页访问输入用户和密码登录时,提示:403 forbidden问题分析:情景说明:在服务搭建完成后,使用浏览器进行初始化安装都没有遇见问题。设置好管理员用户和密码后,在登陆页面输入用户名和密码,然后点击登陆按钮,提示403错误。查看nginx的错误日志(/usr/local/nginx/logs/error.log),提示访问被禁止问题定位:这里的问题是因为 nginx 配置文件中没有配置 “index index.php index.html index.htm;”导致的 DirectoryIndex 问题。【如果你以为是 Permission Denied 的话,你会一直纠结在 chmod 755 -R 目录等权限问题上】解决方案:检查nginx的网页权限和用户、用户组,确认没有问题。在nginx的配置文件(/usr/local/nignx/conf/nginx.conf)中,添加了默认访问页面index.php添加上 index.php注意:添加完成需要重启nginx才能生效!!!重启nginx方式:执行 nginx –s reload (重新加载配置文件)2) 将Nginx的进程给杀死:killall nginx再重新启动Nginx:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf -p /usr/local/nginx3、【安装WordPress时】使用浏览器访问http://服务器IP地址/index.php,PHP启动失败4、【安装PHP时】下载编译cmake过程中,执行./bootstrap,出现报错问题描述:下载编译cmake过程中,执行./bootstrap,出现报错【报错1】:【报错1】分析:Cmake已经在源树(source tree)中启动,现在又在二叉树(binary tree)中启动。解压的资源存在问题,将解压包删除后重新解压,再次执行【报错2】:【报错2】分析:1.没有装gcc 和 g++2.gcc 或者 g++ 版本过低,需要安装高版本的。升级风险较大,可以采用新的编译环境安装新版本的 gcc和g++解决方法:yum install -y gcc gcc-c++再次执行命令又出现【报错1】。换环境重新安装,依旧【报错2】:问题分析:下载的tar包有异常(下载包只有3700000左右。)解决方案:1、把cmake的目录和压缩包全部删除重新下载解压,下面是正常的压缩包的大小./bootstrap执行成功:5、【安装PHP时】华为云上编译指导中的PHP下载包不兼容问题描述:华为云上编译指导中的PHP下载包不兼容情况:解决方案:PHP下载地址改为wget cid:link_0Nginx1、【安装依赖包报错】提示:没有启用的仓库问题分析:提示错误的原因是系统中没有配置对应的源。解决方案:配置欧拉的镜像源EulerOS镜像中现在没有标配镜像源,所以后面用Euler的系统需要首先配置源具体参考:https://support.huaweicloud.com/csg_faq/csg_04_1209.html2、【安装Nginx时】提示:/configure:error: xxx rewrite module requires xxxx library如图:问题分析:没有安装pcre,同理zlib也是解决方案:安装Nginx前,先依次安装pcre和zlibRedis1、【编译Redis时】执行make –j4 报错,提示 has no member named “xxxx”问题描述:执行make –j4时,报错如下:解决方法:再运行make –j4报错:没有找到latomic包问题分析:没有找到latomic包,则需下载对应的包:解决方案:执行命令:yum provides */libatomic.so执行后根据查询结果运行yum install 安装包名称;再执行make distclean 清除之前运行的make;重新执行命令make –j4安装成功。2、【Redis启动报错】提示can’t open config file ‘/etc/redis/6379.conf’解决方案:打开redis.conf文件,进行如下图操作启动redis,启动成功3、【设置Redis开机启动报错】提示cp:cannot stat ‘xxxx’:no such file or directory问题描述:参照华为指导文件: https://www.huaweicloud.com/kunpeng/software/redis.html报错如下:问题定位:已经在redis-4.0.9目录下,故没找到redis-4.0.9/xxx/xxx解决方法:到父级目录 ‘cd ..’去执行命令;或根据所在相对位置,修改执行命令相应的操作如下:cd ..cp redis-4.0.9/utils/redis_init_script /etc/init.d/redis4、【设置Redis开机启动时】执行chkconfig redis on,提示service redis does not support chkconfig参照华为指导文件: https://www.huaweicloud.com/kunpeng/software/redis.html报错如下:解决方法:vim /etc/init.d/redis在文件中修改:#chkconfig: 2345 90 10#description: Redis is a persistent key-value databaseCONF =”/usr/local/etc/redis.conf”如下图5、【Redis启动报错】提示env:’/etc/init.d/redis’: Permission denied参照华为指导文件: https://www.huaweicloud.com/kunpeng/software/redis.html问题如图:问题分析:/etc/init.d/redis权限被拒绝解决方法:给Redis文件授予执行权:chmod +x redis如下图:Rabbitmq1、【rabbitmq启动报错】提示erl:command not found问题定位:没有安装erlang解决方案:安装erlangRabbitmq 启动成功Kafka1、【下载安装Scala并设置环境变量时】解压Scala包报错问题描述:使用tar命令解压时,提示问题定位:tar解压至指定目录用的是-C,而不是-d解决方法:把-d改成-C2、【下载安装Scala并设置环境变量】获取Scala包时,报证书问题问题描述:报错如下:解决方案:下载命令加上:--no-check-certificate (“不检查证书”)3、【编译Gradle-Scoverage时】提示Java_home设置在无效的目录问题分析:1)使用which java 发现出来的是/bin/java2)进入到/bin后查看,发现java是一个链接,链接到了/etc/alternatives3)而进入到/etc/alternatives下查看,发现java又是一个链接,如下:问题定位:/etc/alternatives里的/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.aarch64/jre/bin/java才是真正自带的Java解决方法:重新设置环境变量:export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.aarch644、【启动kafka时】启动QuorumPeerMain,kafka会自动exit问题描述:检查进程启动情况:quorumPeerMain(后台启动)Kafka(一执行别的就退出。。)获取数据:使用jumper登录时:(无法新建消费者)解决方案:编辑kafka-0.11.0.0/core/build/distributions/kafka_2.11-0.11.0.0/config/ 目录下的server.properties文件,hostname填写为本地连接(或远程连接)问题解决:Kafka、QuorumPeerMain两个进程启动成功,整个Kafka服务启动完成5、【验收消息发送时】Kafka新建生产消息时报错问题描述:报错信息:warn connection to node -1 could not be established. broker may not be available解决方案:Docker1、【(Ubuntu)安装依赖包时】提示 E:unmet dependencies问题分析:报错翻译:未设置依赖项,尝试“apt–fix broken install”,不使用包(或指定解决方案)。根据问题提示信息,是由于所依赖的包linux-image-4.10.0-35-generic并没有被正确安装导致。linux-image-x.x.x是内核文件,从提示信息上看,应该是升级过程中断导致的问题解决方法:执行修复命令,并重新执行更新和升级,确保完整修复问题sudo apt --fix-broken installsudo apt-get updatesudo apt-get upgrade执行完后再重新安装依赖包。安装依赖包成功:2、【(Ubuntu)设置Docker CE软件仓库版本为arm64时】提示 No such file or directory问题分析:直接复制下面这四行有空行干扰:sudo add-apt-repository \"deb [arch=arm64] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) \stable"解决方案:粘贴前把空行去了,或者一行一行来输入设置成功:3、【(Ubuntu)安装docker-ce软件时】执行sudo apt-get install docker-ce docker-ce-cli containerd.io 提示:问题分析:问题一:package docker-ce has no installation candidate 原因可能是没找到合适的更新源针对此问题的解决方法:#添加docker源:sudo echo "deb https://download.docker.com/linux/ubuntu zesty edge" > /etc/apt/sources.list.d/docker.list#支持解析https:apt-get install -y apt-transport-https ca-certificates curl software-properties-common#添加GPG密钥:curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add –#设置存储库位置:add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"再重新执行安装命令问题二:后面的3个报错E:不能找到pakeage(containerd.io)问题定位:前面步骤(2)设置Docker CE软件仓库版本为arm64时,设置失败,导致docker-ce安装不成功解决方法:设置Docker CE软件仓库版本为arm64成功后,再重新安装docker-ce安装可以继续并成功:4、【(Ubuntu)安装docker-ce软件时】执行sudo apt-get updat时,提示:E:Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)问题定位:有另外一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况解决方案:1、ps-aux 查出apt-get进程的PID,通常是一个四位数字。2、用sudo kill PID代码 杀死进程3、继续执行sudo apt-get update如果提示错误:E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable) 输入 sudo rm /var/lib/apt/lists/lock 即可5、【(CentOS)安装依赖包时】执行命令sudo yum install -y yum-utils device-mapper-persistent-data lvm2,在第11个包下载错误,提示问题分析:这种下载失败是拉取镜像的问题,arm源需要走国外源站拉,下载速度慢。网络速度低,加上网络波动,导致失败解决方案:再次执行命令:sudo yum install -y yum-utils device-mapper-persistent-data lvm2下载依赖包成功:6、【(CentOS)安装docker-ce】执行命令sudo yum install docker-ce docker-ce-cli containerd.io 安装第12个包时,提示问题分析:这种下载失败是拉取镜像的问题,arm源需要走国外源站拉,下载速度慢。网络速度低,加上网络波动,导致失败解决方案:再次执行命令:sudo yum install docker-ce docker-ce-cli containerd.io安装docker-ce成功:7、【(CentOS)编译docker-ce-19.03.1-3.el7.aarch64.rpm】sudo yum install docker-ce-19.03.1-3.el7.aarch64.rpm时,提示:问题分析:翻译:不更新已经安装检查版本:是19.03.11查看本地安装的docker版本:yum list install | grep docker问题定位:本地已经安装更高版本的docker-ce,导致安装docker失败解决方案:删除docker:yum remove docker-ce-cli.aarch64(注意:删除docker需删除xxx-ce-cli.xxxx,这样会把-ce和-ce-cli都删除,而如果直接删除-ce,那-ce-cli需另外删除。)再安装docker-ce-cli:8、【(CentOS)启动docker时】提示:unit not found问题分析:没有docker-ce包问题定位:只安装docker-ce-li时,系统不会自动下载docker-ce,导致docker-ce没有找到解决方案:下载docker-ce包:安装docker-ce:Docker运行成功9、docker编译总结:docker-ce和 docker-ce-li 这两个都要安装,安装docker-ce会自动下载docker-ce-li,但只安装docker-ce-li不会去下载docker-ce,所以如果已经安装了docker-ce-li,执行时提示unit not found,则再补充下载安装docker-ce即可使用命令:yum remove docker-ce-cli.aarch64 删除docker时:删除docker需删除xxx-ce-cli.xxxx,这样会把-ce和-ce-cli都删除,而如果直接删除-ce,那-ce-cli需另外删除Tengine1、【编译和安装tengine时】./configure:error: xxx rewrite module requires xxxx library问题描述:执行./configure --prefix=/usr/ && make -j4 && make install 时,提示:问题分析:./configure --prefix=/usr/时, 需要安装pcre的devel包:pcre-devel。解决方案:使用yum安装即可:yum –y install pcre-devel安装pcre-devel成功:其中,若出现ssl的类似报错,同理安装ssl的依赖包即可:yum -y install openssl openssl-devel2、【启动nginx时】在/usr/local/src/tengine-2.2.1/目录下,执行nginx -s start -c conf/nginx.conf时,提示:failed no memory问题分析:已经在在“nginx.conf”的http块中增加一条配置,设置缓存大小:check_shm_size 50m;但还是提示这个错误。把50提升至100、200、1000、3000,依旧失败问题定位:nginx命令-c选项跟的是绝对路径,而不是相对路径,导致修改配置文件没生效解决方案:把-c后面的路径变为绝对路径,问题解决。网页访问:问题汇总分析各位小伙伴在相同的步骤可能会引发不同的问题(原因较多,可能是网络、操作步骤、配置等);同时遇到相同的问题,也有着不同的解决方法;大家可以针对目前总结的问题,相互参考、了解一下,促进学习常见问题(出现概率较高):kafka:Java环境变量设置kafka:启动kafka服务时会导致zookeeper退出运行WordPress:网页访问,提示找不到数据库WordPress:网页访问,提示413 forbidden
-
一、案例介绍本方案通过华为云 ECS 鲲鹏 KC1 实例和 Huawei Cloud Euler OS 快速搭建了高性价比的监控系统,结合开源工具 Uptime-Kuma 的灵活监控能力,特别适合中小型团队的基础设施监控需求,可在 15 分钟内完成部署。华为云 ECS 鲲鹏实例:基于华为自研鲲鹏处理器(ARM架构)的高性能云服务器,具备卓越计算性能、低功耗及高扩展性,适用于人工智能、大数据分析、科学计算等场景,并提供安全隔离、弹性资源调配及多存储选项,满足企业高效能计算需求;Huawei Cloud Euler OS:华为云基于 openEuler 构建的云原生操作系统,具备高性能、高安全、易迁移等特性,支持x86和Arm架构,可替代CentOS等传统镜像,助力企业业务高效上云;Uptime-Kuma:轻量级开源自托管监控工具,支持 HTTP(S)、TCP、Ping 等多种协议监控,提供实时报警、可视化仪表盘及状态页面,适用于个人开发、企业内网等场景,具备易部署、数据隐私可控等特点。 二、购买华为云 ECS 鲲鹏 KC1 实例在华为云官网点击“产品”“计算”-“弹性云服务器ECS”,在弹性云服务器ECS详情页点击“购买”按钮进入购买页面:在自定义购买中选择/设置配置信息:基础配置-计费模式:按需计费实例-规格类型选型:鲲鹏计算规格名称:kc1.large.2操作系统-公共镜像:Huawei Cloud Euler OS-Huawei Cloud EulerOS 2.0 标准版 64位 ARM版(10GiB)公网访问-公网带宽:按流量计费云服务管理:设置密码其它配置项使用默认即可全部配置信息如下,勾选右侧的“我已阅读并同意”,点击右下角的“立即购买”完成购买等待服务器完成创建,然后点击“返回云服务器列表”进入服务器列表页面 三、放通 3001 端口uptime-kuma 默认需要用到 3001 端口,需在安全组中放通,在服务器列表页面,点击前面创建的服务器名称/ID,进入服务器管理页面,点击“安全组”选项卡,点击“配置规则”点击“入方向规则”-“添加规则”,优先级输入 1、协议端口输入 3001、源地址输入 0.0.0.0/0 点击右下角的“确定”按钮放通 3001 端口。四、安装Docker首先需要登录服务器,可以在服务器列表中点击“远程登录”在弹窗中点击“立即登录”按钮输入购买服务器时设置的密码,点击“连接”按钮登录Huawei Cloud Euler OS 中安装 Docker 非常方便,一行命令即可完成:dnf install docker安装过程种需要输入两次 y 并按回车键确认:安装完成之后使用 systemctl start docker 命令即可启动服务:systemctl start docker至此我们还需要设置加速镜像,个人使用可以参考设置镜像加速器,设置之后需要执行 systemctl restart docker 重启容器引擎systemctl restart docker 五、安装uptime-kumauptime-kuma 的安装也非常简单,一行命令即可搞定:docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1安装完成之后通过浏览器打开服务器公网IP:3001端口即可访问,首次访问需要设置管理员用户名和密码:接下来我们就可以点击“点击添加”来添加监控服务,设置域名之后保存,即可 24 小时不间断对Web服务、API接口、数据库等组件的状态检测,你还可以根据需要设置通知,uptime-kuma 支持数十种通知方式,一旦你的服务发生故障,uptime-kuma 可以实时通知你来处理:除此之外,uptime-kuma 还可以创建状态页面对外公开展示:本方案通过华为云 ECS 鲲鹏 KC1 实例和 Huawei Cloud Euler OS 快速搭建了高性价比的监控系统,结合 Uptime-Kuma 的灵活监控能力,特别适合中小型团队的基础设施监控需求。 我正在参加【案例共创】第2期 构建开发场景最佳实践/体验评测,创作案例文章cid:link_0
-
我目前手上有一个棘手的需求,需要在服务器上利用KVM运行32位的Linux操作系统。通过搜索网络我发现许多64位的ARM处理器已经不具备32位的支持,或者仅仅在个别EL下支持32位。我正在寻找具备EL1和EL0下的32位支持、且具备虚拟化扩展的64位ARM处理器。请问有使用过搭载鲲鹏916和鲲鹏920处理器的服务器的同行吗?鲲鹏916和鲲鹏920是否具备EL0和EL1下的32位支持?
-
第二期案例共创活动获奖名单如下:代金券将发放到填写问卷的华为云账号中,实物礼品地址如有修改可再次填写问卷修改,截止至4月6日未变动收货信息将按预留信息发放礼品。主题作者奖项周周的奇妙编程二等奖小草飞上天二等奖小鲜二等奖云聪明三等奖胡琦三等奖鸢尾离夏参与奖 了解案例共创活动为了让更多开发者能够更轻松、更高效地理解和使用我们的文档,进而提升云产品的整体使用体验,我们致力于进一步优化和完善官方产品文档。在此过程中,我们诚挚地邀请广大开发者积极参与,通过亲身体验云产品,编写实践案例或体验评测。一旦您的案例经过专家评审团的认可与采纳,将有以下三点:优质案例将被正式收录至官方案例库,供广大开发者学习。优质案例将选送到在华为云站内外10+个技术社区推荐,给予百万级流量资源。以上案例我们都将注明原作者名字,实现与开发者共创官方文档。参与者不仅有机会获得每月活动礼品,还有可能被评为年度内容贡献官,享受更多荣誉和奖励,获得更多合作机会。我们期待着与您一起,共同打造更加优质、高效的云服务体验。 参与投稿方式——先填问卷等领取到代金券后再操作体验写文章第1步:(已注册并实名可跳过)注册华为云账号 + 实名认证(只有实名认证完成后才能申请代金券),点击这里第2步:(已设置可跳过)登录后设置社区昵称,点我设置第3步:添加“社区小助手”微信号bbs_huaweicloud,备注“案例共创”+社区昵称,进活动交流群,活动相关信息会同步到交流群中第4步:点击填写问卷,提供账号及礼品发放地址等信息,根据问卷填写情况体验代金券每周发放一次,论坛小助手会将100元代金券领取链接发放到社区私信中领取体验代金券后在活动期内没有输出案例文章的开发者,后续案例共创活动将不发放体验代金券。第5步:领取代金券后,开启您的云端体验,分享实践案例,点我写帖子版块选择“社区活动”分类选择“案例共创”帖子标题在前面添加【案例共创】文末添加活动名称+链接地址,如“我正在参加【案例共创】第2期 构建开发场景最佳实践/体验评测,创作案例文章cid:link_3”第6步:将发布的案例帖子链接回复反馈到该活动帖评论区【如您在体验中有任何产品问题,欢迎在论坛发布问题求助帖(帖子分类选择问题求助)咨询产品专家,如发现任何体验不友好、产品Bug、文档页面错漏等情况,欢迎通过云声平台反馈给我们,还有机会领取云声专属礼品!】 本期投稿内容基于华为开发者空间(华为提供的一站式开发环境)、华为云ECS(鲲鹏实例KC1,KC2),Huawei Cloud Euler OS和开源的第三方组件(nginx、LNMP、WordPress等)构建开发场景最佳实践、体验评测具体文章主题可以参考下方给出的方向,也可以自行发散拟定,结合自己的实践分享其他案例应用(专家团酌情判定更易得高分~)主题:1)搭建网站(博客,论坛、电商、公司个人主页等)2)搭建应用(APP后台、微信小程序后台、FTP站点、BI看板等)3)部署其他企业经常用到的开源应用软件场景参考:ECS最佳实践输出文章样式参考: 【案例共创】在开发者空间使用 MateChat 和Mass快速开发智能对话界面 一篇完整的案例文章包含哪些内容点?1)案例场景介绍、用到的华为云产品或者开源框架简述。2)案例实际操作描述(文字描述+截图+代码)。3)案例实操需要完整体现,读者可根据案例上手并体验。 相关华为云产品华为云ECS(鲲鹏实例KC1,KC2),华为推出的基于QingTian架构的自研极简虚拟化云服务。鲲鹏实例规格介绍。Huawei Cloud Euler OS,是华为云提供的基于开源社区openEuler构建的linux操作系统,提供云原生、高性能、安全稳定的执行环境来开发和运行应用程序,助力企业客户快速上云及开发者创新。可以参考使用指导 华为开发者空间,是为全球开发者打造的专属开发者空间,预置昇腾、鸿蒙、鲲鹏、GaussDB、欧拉等各项华为根技术的开发工具资源。致力于为每位开发者提供一台云主机、一套开发工具和云上存储空间,点击链接,领取云主机,体验云上应用开发。领取链接注意事项:鲲鹏实例兼容的开源软件包,请参考cid:link_10鲲鹏原生开发工具DevKit,cid:link_13 活动流程(全年征集,每月一期评选)投稿时间:2025年2月14日-3月14日联合评审:2025年3月15日-3月25日奖项公示:2025年3月26日获奖信息收集:2025年3月26日--4月6日奖品发放:获奖信息收集结束5个工作日内寄出 第1期主题案例长期征集,每月评选【案例共创】第1期 书写云产品应用构建开发最佳实践/评测,共创官方文档cid:link_4 评奖规则届时将有华为技术专家团参与评审,主要按照以下维度评分:文章完整性 30%;案例创新性 20%;案例实用性 20%;可借鉴性 20%;代码规范度 10% 奖项设置礼品和代金券会发放到问卷中填写的账号及收货地址中(活动参与方式第4步),礼包类礼品均为实物礼品。如某项奖品库存不足,将根据实际库存更换为同等价值的其他奖品,获奖者不同意此规则视为放弃奖品。 投稿规则1、选题方向需为基于华为云产品的开发案例分享、使用评测、上云技术实践、云上开发项目分享等2、文章要求发布在华为云开发者社区论坛,允许搬运自己发在其他平台的文章,但仅支持搬运自己的原创文章,搬运他人的文章当抄袭处理。3、投稿内容必须保证内容原创性,实践过程真实、内容代码化,如发现投稿内容为转载、复制、抄袭、恶意拼接、灌水等侵权作弊行为,均视为无效并取消参与资格4、投稿内容字数不少于500字(不含代码),要求思路清晰、文字顺通、图片清晰、代码规范,不得有打广告、加二维码引流和凑字数行为。5、投稿内容一经采用,将会被纳入官方产品文档,文章作者拥有著作权,华为云拥有使用权、修改权等。6、将发表过的文章删除后重新发表的文章,不计入发文数量,以文章评选时在线显示数量为准。7、活动期间,作者如果有用脚本刷阅读量、注册僵尸号刷赞等严重违反社区规范的行为,直接取消所有获奖资格。 重要说明1、审核通过被采纳的文章作者,将在下月初进行获奖名单公布和奖励发放,届时会有站内信通知,请及时关注并填写快递信息,过期未填写视为放弃该期奖品。2、对于持续输出高质量内容的作者,每年度末还有年度贡献大礼包送上。3、代金券及周边礼物发放对象为:已完成实名认证的华为云用户。特别声明:华为云有权根据自身运营安排,自主决定和调整本活动的具体规则,具体活动规则以活动页公布规则为准。相关规则一经公布即产生效力,您应当予以遵守。如您不认同以上规则,请谨慎参与本次活动。
-
数字化转型进程持续加速,驱动着技术革新发展,华为开发者空间如何巧妙整合鸿蒙、昇腾、鲲鹏等核心资源,打破平台间的壁垒,实现跨平台协同?在科技迅猛发展的今天,开发者们如何迅速把握机遇,实现高效、创新的技术突破?DTT 年度收官盛典,与大家共同探索华为开发者空间的创新奥秘。本文精选直播期间开发者的提问并由DTSE技术布道师一一解答。欢迎观看直播回顾:cid:link_0 Q:在华为云开发者空间如何快速部署一个最简单的人工智能应用案例?用昇腾做算力计算计算有哪些优势,相较于其他商家?A:在华为云开发者空间,选择AI应用模板、上传数据、配置昇腾算力资源后即可快速部署。昇腾处理器具有高效AI算力、节能、优化推理和训练、支持异构计算,相较于其他商家提供更优性能和效率。Q:如何优化应用在华为设备上的性能?A:优化应用在华为设备上的性能,可以通过合理配置昇腾算力、使用华为自研的MindSpore框架、优化数据处理流程、利用异构计算资源并进行性能调优,提升计算效率和响应速度。Q:如何通过华为开发者空间推广自己的应用?A:通过华为开发者空间,可以发布应用至应用市场,利用华为云的推广渠道和技术支持,优化应用性能并增加曝光,吸引更多用户下载和使用。同时,参与华为的开发者活动和合作伙伴计划,提升应用影响力。Q:华为云有没有纯信创版的开发环境?A:华为云提供信创版开发环境,支持国产操作系统和芯片架构,如鲲鹏处理器和昇腾AI芯片,兼容信创软件生态,帮助开发者构建安全、高效、符合国产化要求的应用。Q:华为开发者空间推广自己的应用?A:在华为开发者空间,可通过发布应用至应用市场,利用平台的推广资源和流量支持,提升应用曝光度。同时,参与开发者活动、优化应用性能,借助华为云的技术优势吸引更多用户。Q:华为开发者空间如何支持全球开发者的需求?A:华为开发者空间通过提供多语言支持、全球化云服务、跨平台开发工具及技术支持,帮助全球开发者构建、测试和部署应用。同时,提供丰富的AI、云计算资源,助力开发者提升应用性能和创新能力。Q:华为开发者空间如何解决不同操作系统和开发环境之间的兼容性问题?A:华为开发者空间通过提供跨平台开发工具、容器化环境及虚拟化技术,确保应用在不同操作系统和开发环境中的兼容性。通过统一的API和开发框架,简化开发过程,提升跨平台兼容性与运行效率。Q:对于使用华为开发者空间的开发者社区,有哪些反馈机制和用户支持渠道?A:华为开发者空间提供在线论坛、技术支持、开发者社区和反馈渠道,开发者可提交问题、交流经验。平台还提供知识库、文档支持和客服服务,帮助开发者解决技术问题,优化开发体验。Q:对于初学者和高级开发者,华为开发者空间提供了哪些不同级别的支持和资源?A:华为开发者空间为初学者提供易用的教程、示例代码和入门资源,高级开发者则可获得深度技术文档、API接口、工具链支持和优化建议,满足不同技能层次开发者的需求。Q:大学生如何在华为开发者空间中找到适合自己技术水平的课程和实践项目,从入门到进阶逐步提升?A:大学生可通过华为开发者空间的学习平台,按照自己的技术水平选择入门到进阶的课程和实践项目。平台提供丰富的在线教程、实践案例及技术讲座,帮助学生逐步提升技能,积累项目经验。Q:ai类产品,感觉非常高大上,有着极高的学习成本,华为开发者空间,能否能够让我们降低学习Ai门槛和成本,让我们能跟上时代潮流。A:华为开发者空间提供易于使用的AI开发工具、教程和实践项目,帮助开发者降低AI学习门槛。通过丰富的文档支持和在线课程,简化AI应用开发流程,让开发者轻松跟上时代潮流。Q:在多云环境下,华为如何确保其服务的兼容性和互操作性,以便开发者能够更灵活地选择和使用不同的云平台?A:华为通过统一的云服务接口和标准化API,确保在多云环境下服务的兼容性和互操作性。其云平台支持跨云平台部署,提供灵活的资源管理和迁移工具,帮助开发者无缝连接并选择不同云服务进行开发和部署。Q:未来一年内,您认为最有可能对云端开发产生重大影响的技术革新是什么?华为将如何应对这些变化?A:未来一年,人工智能、量子计算和边缘计算将对云端开发产生重大影响。华为将通过持续创新,推动AI和量子计算技术在云端的应用,优化边缘计算架构,确保云服务在高效性、安全性和智能化方面的领先优势。Q:如何平衡云端开发中的安全性与便捷性?华为在这方面采取了哪些具体措施?A:华为通过多层安全架构、加密技术和身份认证等措施,保障云端开发的安全性。同时,提供易用的开发工具、自动化运维和灵活的API接口,确保开发过程的便捷性,平衡安全与效率。Q:人工智能技术的发展如何改变云端开发的方式?华为在AI+云领域有哪些最新的研究成果和应用场景?A:人工智能技术提升了云端开发的自动化、智能化水平,优化了数据处理和决策支持。华为在AI+云领域的最新成果包括智能计算平台、AI模型训练与推理服务,广泛应用于智能制造、智慧城市等场景,推动创新发展。Q:对于希望进入云端开发领域的初学者来说,有哪些关键技能或知识是必须掌握的?华为提供了哪些学习资源和支持?A:初学者需掌握云计算基础、编程语言、网络安全及数据存储等技能。华为提供丰富的在线课程、技术文档和实践项目,帮助初学者系统学习云端开发知识,提升实战能力,快速入门并掌握相关技术。Q:感觉华为对ai的推广不太高,后续会加大更多推广吗A:华为一直致力于推动AI技术发展,未来将加大AI技术的应用推广,推出更多AI解决方案和平台,帮助各行各业实现智能化转型,提升技术普及度和市场影响力,助力开发者更好应用AI技术。Q:整套开发环境,跨平台协同能否兼容?鲲鹏是arm的,但是很多老项目基本都是x86的,而且jdk的版本,比如oracle和open,变成毕昇jdk需要从多深的层次进行改造?A:华为的鲲鹏平台通过支持多种架构兼容性,提供跨平台协同开发环境,确保与x86架构的兼容性。对于JDK的转换,毕昇JDK兼容Oracle和OpenJDK,大部分情况下无需深度改造,开发者可通过简单的适配和优化实现迁移。Q:希望2025年,有Ascend,CANN、信创改造、TF迁移等技术和经验交流A:2025年,华为将持续推动Ascend、CANN、信创改造和TF迁移技术的应用,提供丰富的技术交流平台,帮助开发者分享经验、解决技术难题,推动人工智能、计算框架和信创技术的创新和实践落地。Q:华为开发者空间在推动开发者生态多元化发展方面,如何平衡不同开发工具和平台之间的优势互补与竞争关系?A:华为开发者空间通过开放兼容的技术框架,支持多种开发工具和平台并存,促进优势互补。通过提供丰富的文档、培训和社区支持,帮助开发者灵活选择合适工具,确保生态多元化发展,推动创新与合作。Q:华为开发者空间在实现跨平台协同的过程中,如何确保不同根技术平台的安全性和稳定性?A:华为开发者空间通过多层安全架构、数据加密和权限管理,确保跨平台协同过程中的安全性。采用高可用性设计和容错机制,确保系统稳定运行。同时,定期更新和漏洞修复,保障不同技术平台的安全性与稳定性。Q:华为开发者空间在解决开发资源和工具碎片化问题的过程中,如何兼顾开发者的个性化需求和创新自由?A:华为开发者空间通过提供统一的开发平台、集成化工具和丰富的资源,减少工具碎片化问题。同时,支持灵活的定制化功能和多样的技术栈,允许开发者根据自身需求创新,满足个性化开发要求。Q:请问开发者空间能选cangjie环境了吗?A:目前,华为开发者空间已支持多种开发环境,具体是否包括仓颉环境需查看最新的更新和文档。建议开发者关注华为官方平台,了解支持的开发环境及工具,以便选择合适的开发平台进行使用。Q:华为云开发者空间如何赋能开源生态?A:华为云开发者空间通过提供开源工具、框架和平台,支持开发者贡献和共享代码,推动开源项目的快速发展。通过技术支持、社区交流和资源共享,助力开源生态繁荣,促进创新应用的落地与实现。Q:开发者空间25年的发展规划是什么?会比之前增加哪些亮点?A:华为开发者空间2025年将聚焦AI、云计算和5G技术的深度融合,提供更强的跨平台支持,优化开发工具和生态建设,增加智能化服务与社区合作,进一步推动开源项目与全球开发者的创新与共享。Q:开发者的教学数据和实践数据可以保存在华为开发者空间多长时间?A:华为开发者空间提供灵活的数据存储服务,教学和实践数据的保存时间取决于具体的服务类型与协议。一般来说,数据可长期保存,具体时长可以根据使用的存储方案或服务级别进行调整和管理。Q:华为开发者空间目前有没有区块链和分布式账本技术支持,帮助开发者构建可信的去中心化应用?A:华为开发者空间目前已支持区块链和分布式账本技术,提供开发工具和平台,帮助开发者构建可信的去中心化应用。通过提供区块链框架、智能合约等技术,助力开发者实现安全、透明的应用场景。Q:怎么识别技术创新带来的潜在风险,如何进行漏洞防范?A:识别技术创新带来的潜在风险需通过风险评估、代码审计和安全测试,发现漏洞和弱点。进行漏洞防范时,采用加密技术、权限控制、定期更新和及时修复,确保系统的安全性和可靠性,减少安全隐患。Q:怎么评估一项新技术是否符合项目或团队的需求,避免盲目跟风?A:评估新技术时,应根据项目需求、团队能力和技术稳定性进行分析,考虑技术的可扩展性、兼容性和长期支持。通过实验验证技术效果,结合项目实际需求,避免盲目跟风,确保技术选择切实可行。Q:开发者在使用开发者空间开发过程中遇到问题,有哪些技术支持和咨询渠道?A:开发者在使用华为开发者空间时,可通过官方技术文档、开发者论坛、在线客服、社区问答和技术支持热线获取帮助。此外,还可参与开发者活动和培训,向专家获取问题解答和技术支持。Q:华为开发者空间中的CodeArts IDE有哪些优势? 在华为开发者空间中,如何进行版本控制和协同开发?A:华为开发者空间中的CodeArts IDE具备高效的代码编辑、调试和智能提示功能,提升开发效率。版本控制通过集成Git进行代码管理,协同开发可通过项目共享、实时更新和多人协作,优化团队开发流程。Q:华为开发者空间有哪些市场推广和商业合作机会,帮助开发者实现商业化成功?A:华为开发者空间提供应用上架、流量推广、资金支持等市场推广机会,并通过与企业合作、开放API接口、跨平台集成等方式,帮助开发者实现商业化。开发者可借助华为的生态资源和技术优势,拓展市场并实现盈利。Q:华为开发者空间提供了哪些类型的云主机,数据持久化保存是如何实现的?A:华为开发者空间提供弹性云、云主机等多种类型,满足不同开发需求。数据持久化保存通过云存储服务实现,利用分布式存储、备份机制确保数据的安全性和高可用性,同时支持自动扩展和弹性管理。Q:华为开发者空间是如何整合鸿蒙、昇腾、鲲鹏等核心资源的?如何保证跨平台协同的兼容性和数据一致性?A:华为开发者空间通过统一平台整合鸿蒙、昇腾、鲲鹏等核心资源,提供跨平台支持。采用容器化和微服务架构,确保不同平台间的兼容性和数据一致性,同时通过高效的同步机制和分布式系统管理,优化协同开发体验。Q:华为开发者空间可以提供数据统计和分析服务,帮助开发者了解市场需求和用户行为吗?A:华为开发者空间提供数据统计和分析服务,帮助开发者实时了解市场需求和用户行为。通过智能数据分析平台,开发者可以获取用户活跃度、使用习惯等关键指标,为优化产品和制定市场策略提供数据支持。Q:华为开发者空间除了日常DTT直播,还有哪些培训和教育资源可以提升开发者的技能和知识?A:华为开发者空间除了日常DTT直播外,还提供在线课程、技术沙龙、认证培训、开发者大会等教育资源,帮助开发者提升技能和知识。通过专家讲座、实战演练和案例分析,开发者可深入学习最新技术和应用实践。Q:华为云开发者空间,云存储轻度的使用过,还比较好用,专家能讲一下友商的的吗,比如限制下载速度,图片下载压缩等弊端。A:华为云开发者空间提供稳定高效的云存储服务,避免了友商常见的限制下载速度、图片下载压缩等问题。相比之下,华为云存储支持大文件高速下载、原图存储,确保数据传输的高效性和质量,提升用户体验。Q:华为云开发者空间,目前有很多免费资源可以申请使用,未来考虑收费吗?A:华为云开发者空间目前提供丰富的免费资源,支持开发者创新和成长。未来,华为可能根据市场需求和资源优化策略,推出部分付费服务,但始终致力于为开发者提供高质量、可持续的技术支持和服务。Q:在未来的数字化转型浪潮中,华为开发者空间有哪些新的发展方向和计划?A:在未来的数字化转型浪潮中,华为开发者空间将进一步加强AI、云计算、物联网等技术的应用,推动跨平台协同和创新。计划通过开放更多API接口、拓展全球生态合作,助力开发者在智能时代取得商业成功。Q:开发者们在华为开发者空间进行开发时,如何快速掌握相关核心资源的运用方法以实现创新突破呢?A:开发者可通过华为开发者空间提供的在线课程、技术文档、API参考和实践案例,快速掌握核心资源的使用方法。同时,参与技术社区交流、线上沙龙和专家指导,提升技能并实现创新突破。Q:开发者空间制作的原理是什么?如果那么多人用,开发者空间的镜像会不会占用很大的存储空间?是每一个人一个基础的副本吗A:开发者空间通过共享资源和虚拟化技术管理镜像,确保高效存储和资源利用。不同开发者使用相同镜像基础,避免重复占用大规模存储空间。系统会动态分配资源,保证存储空间高效且可扩展,不影响用户体验。Q:开发者空间现在的CPU和GPU,相对于intel和nvidia是什么级别的A:华为开发者空间的CPU主要基于鲲鹏处理器,性能接近高端IntelXeon系列;GPU基于昇腾处理器,适合深度学习和AI运算,性能与NVIDIA的高端GPU相当。整体设计针对大规模并行计算,提供强大的处理能力。Q:开发者空间能不能上线鸿蒙PC,直播中说的是明年?明年指的是2025还是2026A:开发者空间计划明年上线鸿蒙PC版本,届时,开发者将能够在鸿蒙生态下进行PC端应用开发,进一步推动跨平台协同和创新。Q:针对大学生小白如果想快速上手华为开发者空间,需要提前准备哪些技能?各位老师有什么建议?A:大学生小白可以提前掌握基础的编程语言(如Python、Java),了解云计算、AI、物联网等技术。建议从华为开发者空间的入门课程和实践案例开始,积极参与社区互动,向专家请教,逐步提高技术水平。Q:在过去一年DTT直播涉及内容较多,如GaussDB、鲲鹏DevKit、华为云ModelArts等内容,在2025年预计会有哪些新技术进行分享?A:2025年DTT直播预计将重点分享鸿蒙系统、昇腾AI、5G应用、华为云智算等新技术。内容涵盖云原生、AI+物联网、边缘计算等领域,帮助开发者掌握前沿技术,推动创新与应用落地。Q:华为开发者空间是如何根据技术发展通过技术迭代来快速满足开发者使用需求的?A:华为开发者空间通过持续的技术迭代,紧跟前沿技术发展,不断优化平台架构和工具链,增强AI、云计算等技术支持。通过定期更新资源、API接口及培训课程,快速响应开发者需求,助力创新和项目落地。Q:作为一名开发者,如何能利用华为开发者提升自己的开发能力和水平?A:开发者可通过华为开发者空间参与在线课程、技术培训和实战项目,利用平台提供的API、工具和云服务进行实践。加入社区与专家交流,获取实时技术支持,提升自己的开发能力,拓宽技术视野。Q:针对即将毕业大学生,如何通过华为开发者空间提升自己的理论和实践能力?A:即将毕业的大学生可通过华为开发者空间学习最新技术、参加线上课程和实战项目,深入了解云计算、AI等前沿领域。同时,利用平台的开发工具和资源进行实践,提升理论基础与实际操作能力,增强就业竞争力。Q:华为开发者目前覆盖到千行百业,华为开发者空间是如何做到能满足这么多场景需求的?A:华为开发者空间通过提供多元化的技术框架、工具和云服务,结合行业解决方案,满足不同场景需求。平台支持个性化定制,灵活适配各行业应用,促进开发者快速创新,推动各领域技术落地与应用。Q:对于企业开发者来说,如何通过华为开发者空间结合企业中存在的问题进行创新?A:企业开发者可以通过华为开发者空间利用云计算、大数据、AI等技术,结合企业实际问题进行定制化开发。平台提供的技术支持与解决方案,帮助开发者快速测试、部署创新应用,提高企业效率与竞争力。Q:对于企业开发者来说,如何通过华为开发者空间结合企业中存在的问题?A:企业开发者可通过华为开发者空间,利用云服务、AI、大数据等技术,针对企业具体问题进行定制开发。平台提供的开发工具、技术文档和行业解决方案,帮助企业快速实现技术创新,提升业务效率与竞争力。Q:AI是目前发展趋势,个人开发者可以在华为开发者空间做哪些操作实践,以便快速提升自己的AI能力?A:个人开发者可在华为开发者空间通过参与AI课程、使用ModelArts进行模型训练与优化、借助昇腾AI加速器进行项目开发。平台提供的实践环境和技术支持,有助于快速提升AI能力,深入理解和应用AI技术。Q:云主机是永久免费的吗?我的私人数据存放在云主机上是否安全呢?有没有丢失和被盗用的风险?A:华为云主机提供强大的数据安全措施,如加密存储、权限控制等,确保数据安全且基础功能目前免费使用。然而,用户仍需采取额外措施保护账号,避免潜在的数据丢失和被盗用风险。Q:在实现跨平台协同的过程中,华为开发者空间有哪些具体的技术手段和策略?A:华为开发者空间通过统一的云平台架构、跨平台API和容器化技术,实现不同平台间的无缝协同。采用微服务架构、分布式计算和数据同步策略,确保跨平台应用高效、稳定运行,提升开发者的跨平台开发效率。Q:华为开发者空间是如何整合这些技术资源的?A:华为开发者空间通过统一的云服务平台整合AI、大数据、IoT等技术资源,提供开放的开发工具、API接口和开发框架,支持多场景应用。通过模块化、标准化的方式,帮助开发者高效利用和创新,促进技术协同与落地。Q:华为开发者空间如何利用鸿蒙、昇腾、鲲鹏等核心资源实现跨平台协同?A:华为开发者空间通过鸿蒙操作系统、昇腾AI处理器、鲲鹏芯片等核心资源,提供统一的开发环境和跨平台支持,实现设备、应用和服务间的无缝协同。通过高效的计算与数据处理能力,提升开发者在多平台上的开发效率与创新能力。Q:在华为云开发者空间如何快速部署一个最简单的人工智能应用案例?用昇腾做算力计算计算有哪些优势,相较于其他商家?A:在华为云开发者空间,开发者可通过ModelArts平台快速部署AI应用,使用预训练模型和数据集进行快速开发。昇腾算力提供高性能的AI处理能力,支持更高的计算效率和更低的延迟,相较其他商家在AI任务上具有明显优势。Q:在整合核心资源的过程中,华为开发者空间如何与行业标准和规范保持一致,以促进更广泛的应用和合作?A:华为开发者空间通过遵循行业标准和开放协议,确保技术兼容性和互操作性。采用开源技术、标准化接口及模块化设计,推动与其他平台的合作,促进跨行业应用落地,推动生态建设和技术创新。Q:在整合核心资源的过程中,华为开发者空间如何与行业标准和规范保持一致,以促进更广泛的应用和合作?A:华为开发者空间通过遵循行业标准和开放协议,确保技术兼容性和互操作性。采用开源技术、标准化接口及模块化设计,推动与其他平台的合作,促进跨行业应用落地,推动生态建设和技术创新。Q:在推动跨平台协同创新的过程中,华为开发者空间如何与高校和科研机构合作,培养新一代的开发者?A:华为开发者空间与高校和科研机构合作,提供技术支持、培训课程及实践机会,推动创新人才培养。通过联合研发、项目实训等方式,培养新一代开发者,助力学术研究与产业需求对接,促进跨平台协同创新。Q:在数字化转型的浪潮中,华为开发者空间如何引领行业趋势,推动鸿蒙、昇腾、鲲鹏等技术的广泛应用和创新?A:华为开发者空间通过提供开放平台和技术支持,促进鸿蒙、昇腾、鲲鹏等技术的应用创新。通过生态建设、联合研发和跨行业合作,引领数字化转型趋势,推动技术普及,提升行业竞争力,促进各领域的智能化升级。Q:在跨平台协同中,华为开发者空间如何优化资源分配,以确保各个平台都能获得高效的支持?A:华为开发者空间通过智能调度和资源管理系统,优化计算、存储和网络资源分配,确保鸿蒙、昇腾、鲲鹏等平台间的高效支持。采用动态负载均衡、弹性扩展等技术,实现资源的最优配置,提升整体系统效率和协同能力。Q:在跨平台协同开发中,华为开发者空间如何保障应用的可扩展性和可维护性?A:华为开发者空间通过模块化设计、标准化接口和微服务架构,确保应用的可扩展性和可维护性。采用容器化技术和自动化运维工具,支持灵活部署和高效管理,提升跨平台协同开发中的系统稳定性和可持续发展能力。Q:在跨平台协同的复杂环境中,华为开发者空间如何确保对鸿蒙、昇腾、鲲鹏等核心资源的精准调度和高效利用,以实现资源的最大化价值?A:华为开发者空间通过智能调度平台、容器化技术和动态资源管理,精准调配鸿蒙、昇腾、鲲鹏等核心资源。结合大数据分析与AI优化策略,确保跨平台协同中的高效资源利用,实现资源的最大化价值和系统性能优化。Q:随着业务规模的增长,华为开发者空间如何保障对鸿蒙、昇腾、鲲鹏等资源整合的高效性和可持续性?A:华为开发者空间通过自动化管理、弹性扩展和标准化接口,保障鸿蒙、昇腾、鲲鹏等资源整合的高效性和可持续性。结合智能监控与优化机制,确保系统随着业务规模增长保持稳定运行并灵活应对需求变化。Q:随着新兴技术的涌现和数据隐私法规的强化,华为开发者空间怎样在整合核心资源进行跨平台协同的同时,兼顾性能优化、成本控制及数据安全合规?A:华为开发者空间通过智能资源调度和容器化架构,实现性能优化与成本控制。同时,严格遵循数据隐私法规,采用加密技术和多层安全防护,确保核心资源整合与跨平台协同的同时,保障数据安全与合规性。Q:随着人工智能和大数据技术的快速发展,华为开发者空间如何将这些前沿技术融入到跨平台协同的框架中,为开发者创造更多的创新机会?A:华为开发者空间通过集成人工智能与大数据技术,提供智能分析、自动化工具和实时数据处理能力,优化跨平台协同过程。为开发者提供强大的技术支持和创新环境,激发多元化的创意与,推动技术进步和商业价值提升。Q:随着技术的快速发展,华为开发者空间如何平衡技术创新与稳定性,以保障开发者的应用可靠运行?A:华为开发者空间通过严格的测试与验证机制,确保新技术的稳定性。结合容器化、微服务架构和自动化运维,优化系统性能,平衡技术创新与可靠性,为开发者提供稳定、安全的环境,保障应用的高效运行。Q:请问面对未来更加复杂和多元的技术环境,华为开发者空间将如何加强与全球开发者社区的深度合作与交流,共同探索和挖掘创新奥秘,以持续提升其在行业中的影响力和领导力?A:华为开发者空间将通过开放平台、全球技术交流和联合创新项目,加强与全球开发者社区的合作,促进技术共享与协作创新。通过支持多元化开发需求,持续推动技术突破,提升行业影响力与领导力,塑造全球技术生态。Q:那鉴于开发者群体在技术背景、经验水平和创新能力等方面存在显著的多样性和差异性,华为开发者空间通过怎样的创新机制和精细化服务,能够为不同类型和层次的开发者提供极具针对性、精准度和个性化的全方位支持,有效地帮助他们摆脱传统开发模式的束缚,充分激发其创新潜能,从而在跨平台协同的全新领域中取得具有突破性和变革性的技术成果,为行业发展注入强大动力?A:华为开发者空间通过创新的模块化服务、个性化支持与定制化工具,针对不同开发者的技术背景和需求提供精细化服务。结合智能学习平台、专业指导和技术社区,帮助开发者突破传统束缚,激发创新潜力,推动跨平台协同和技术变革。Q:面对众多开发者的多样化需求,华为开发者空间怎样提供个性化的支持,以帮助他们在跨平台协同中发挥最大潜力?A:华为开发者空间通过智能推荐、定制化工具和专业技术支持,针对开发者的具体需求提供个性化服务。结合跨平台协同框架与丰富资源,帮助开发者提高效率、激发创新,充分发挥其在不同场景中的技术潜力。Q:面对未来可能出现的未知技术挑战和市场变化,华为开发者空间如何提前布局,持续优化对鸿蒙、昇腾、鲲鹏等核心资源的整合策略,保持在跨平台协同领域的领先地位?A:华为开发者空间通过前瞻性技术研发与持续优化架构,灵活调整鸿蒙、昇腾、鲲鹏等核心资源整合策略。借助大数据分析与智能调度,提前布局应对未来技术挑战,确保在跨平台协同领域持续领先。Q:面对日益严格的数据隐私法规,华为开发者空间在促进跨平台协同的过程中,采取了哪些创新性的数据保护和合规措施?A:华为开发者空间通过加密技术、分层权限控制和数据脱敏等创新措施,确保数据隐私保护。同时,严格遵循国际数据隐私法规,实施合规审查与监控,保障跨平台协同过程中的数据安全与合规性。Q:面对全球技术标准和接口规范的频繁变动,华为开发者空间如何保障开发者在利用其跨平台协同优势时能迅速适应,实现高效创新?A:华为开发者空间通过持续更新技术标准与接口规范,提供兼容性强的开发工具与API接口,帮助开发者迅速适应变化。同时,提供技术支持与培训,促进开发者灵活应对标准变动,保持高效创新与跨平台协同优势。Q:华为开发者空间在整合这些核心资源进行跨平台协同开发时,如何保障开发者能够轻松应对不断变化的技术标准和接口规范?A:华为开发者空间通过提供灵活的开发框架和自动化工具,帮助开发者轻松应对技术标准和接口规范的变化。通过实时更新和兼容性支持,确保开发者能够快速适应新标准,提升跨平台协同开发的效率和稳定性。Q:华为开发者空间在打破平台间壁垒的过程中,如何解决数据安全和隐私保护方面的挑战?A:华为开发者空间通过端到端加密、数据脱敏与权限管理,确保跨平台协同中的数据安全。同时,严格遵循国际隐私法规,实施合规审查和监控,保障用户数据隐私,打破平台壁垒的同时维护安全性。Q:华为开发者空间如何确保开发者在跨平台协同中能够快速获取技术支持和问题解决方案?A:华为开发者空间通过提供全天候在线技术支持、智能问答系统及丰富的开发者社区,帮助开发者快速获取技术指导与问题解决方案。定期举办技术交流与培训,确保开发者在跨平台协同中高效解决问题、推动创新。Q:华为开发者空间如何促进开发者之间的知识共享和经验交流,以加速跨平台协同的创新进程?A:华为开发者空间通过搭建开放的技术社区、举办线上线下交流活动以及发布技术文档与案例,促进开发者之间的知识共享与经验交流。通过互动平台,鼓励协作与创新,加速跨平台协同的技术进步与解决方案落地。Q:对于那些在传统开发模式中根深蒂固的开发者,华为开发者空间如何引导他们顺利转型,充分利用跨平台协同的优势,实现技术突破?A:华为开发者空间通过提供针对性的培训、技术支持和示范案例,帮助传统开发者了解并掌握跨平台协同工具。通过简化开发流程和优化兼容性,激励开发者逐步转型,充分发挥跨平台优势,推动技术创新与突破。Q:从长远发展的角度来看,华为开发者空间如何构建一个可持续的生态系统,以不断吸引和培育优秀的开发者,推动鸿蒙、昇腾、鲲鹏等技术的深度融合与创新?A:华为开发者空间通过开放平台、完善的开发工具、培训和技术支持,打造一个创新和合作的生态环境。通过持续优化资源整合、促进技术共享,吸引优秀开发者加入,推动鸿蒙、昇腾、鲲鹏等技术的深度融合与创新。Q:在数字化转型加速的背景下,开发者应该如何快速掌握华为开发者空间的核心技术,提升自身的职业竞争力?A:开发者应积极参与华为开发者空间的培训、技术研讨会和在线课程,学习鸿蒙、昇腾、鲲鹏等核心技术。通过实践项目积累经验,利用平台提供的工具和资源,加速技能提升,提升自身在数字化转型中的职业竞争力。Q:现在流行多平台协同开发,开发者如何在华为开发者空间中实现代码的高效复用和移植?A:开发者可以通过华为开发者空间提供的跨平台框架和标准化接口,实现代码的高效复用和移植。平台的兼容性支持、自动化工具以及丰富的开发文档,帮助开发者简化移植过程,提升代码复用效率,加速跨平台协同开发。Q:开发者空间中,华为有提供哪些开源工具和框架,加速开发流程,提高开发效率?A:华为开发者空间提供多个开源工具和框架,如MindSpore(AI开发框架)、OpenGauss(数据库)、Huawei Cloud(云服务平台)和鸿蒙OS,帮助开发者加速开发流程、提高效率,实现智能应用和跨平台协同开发。Q:华为开发者空间在促进开发者与华为技术团队之间的合作方面有哪些有效的机制么?A:华为开发者空间通过技术论坛、线上问答、开发者大赛和定期的技术交流活动,促进开发者与华为技术团队的密切合作。提供专属技术支持和反馈渠道,帮助开发者解决问题,共同推动技术创新与应用落地。Q:华为开发者空间有没有对接相关的创新大赛或项目,可以让开发者实践提升自己的创新能力和项目经验?A:华为开发者空间定期举办创新大赛、黑科技挑战赛等项目,鼓励开发者参与实践,提升创新能力和项目经验。通过实际项目开发与评比,开发者能够获得技术反馈、资源支持,推动个人技术成长与项目落地。Q:华为开发者空间如何支持开发者进行行业解决方案定制化开发?A:华为开发者空间通过提供丰富的技术文档、定制化开发工具和行业解决方案模板,帮助开发者根据行业需求进行定制化开发。平台还提供技术支持、咨询服务,助力开发者高效实现行业特定需求的解决方案。Q:华为开发者空间如何利用昇腾AI计算能力,助力开发者在鸿蒙应用中实现更智能的交互体验?A:华为开发者空间通过提供昇腾AI计算能力和相关开发工具,帮助开发者在鸿蒙应用中实现智能语音识别、图像处理等功能。平台支持深度学习框架,助力开发者优化应用交互体验,提升智能化水平。Q:华为开发者空间的更新频率怎么样?可以引入第三方的API吗?A:华为开发者空间定期更新,持续优化开发工具和技术文档,以适应最新需求。平台支持引入第三方API,开发者可以轻松集成外部服务,扩展应用功能,提升开发效率和创新能力。Q:华为开发者空间如何评估和优化其提供的开发资源和工具的性能和效率A:华为开发者空间通过收集用户反馈、监测性能数据和进行定期测试,评估开发资源和工具的性能。根据分析结果,持续优化工具功能、稳定性和效率,确保开发者获得高效、可靠的开发支持。Q:在推动这些企业数字化转型方面,华为开发者空间有哪些具体的优势和案例?A:华为开发者空间通过提供云计算、大数据、AI等技术支持,帮助企业实现数字化转型。具体案例包括智能制造、智慧城市等领域,企业通过平台优化流程、提升效率,推动业务创新和智能化应用落地。Q:在数字化转型的大背景下,华为开发者空间如何帮助开发者更好地把握技术机遇?A:华为开发者空间通过提供最新的技术工具、框架和云服务,帮助开发者掌握前沿技术,如AI、5G、云计算等。平台还提供培训、技术支持和创新赛事,助力开发者把握数字化转型中的技术机遇,推动创新应用落地。Q:开发者如何利用这些资源来加速自己的技术突破和项目落地?A:开发者可以利用华为开发者空间提供的开源工具、技术文档、云服务和AI框架,加速技术突破。同时,通过参与创新大赛、获取技术支持、实践项目开发,提升能力,快速实现项目落地与技术创新。Q:华为开发者空间提供了哪些工具和资源来支持开发者进行创新开发?A:华为开发者空间提供了丰富的开发工具,如云服务、昇腾AI计算、鸿蒙系统开发套件、API接口及技术文档。此外,还有技术支持、在线课程和创新大赛,帮助开发者进行创新开发,提升技术能力和项目实现。Q:华为开发者空间如何帮助初创企业和中小企业解决技术难题和资源瓶颈?A:华为开发者空间通过提供云计算、AI、5G等技术支持,帮助初创和中小企业解决技术难题。同时,提供开发工具、技术文档、定制化解决方案及资源支持,降低开发成本,提升技术能力,推动企业快速发展与创新。Q:老师说的深有体会,之前做安卓就一个人,项目管理git啥的真没必要,有空了备份即可。后面转成java搞后端,没有git真不行。经常上线级别都会有bug,有时候急的需要回滚,就需要这种管理软件。华为云的CodeArts一站式需求开发到测试,确实很好用。但是可能对新手或者小公司,流程还有点复杂,领导也不懂该怎么推,怎么说服员工A:理解您的感受。确实,Git和CodeArts等工具在开发中非常关键,能有效管理项目、追踪版本和快速回滚。对于新手和小公司,尽管流程较复杂,但可以通过逐步培训、简化操作流程,让团队逐渐适应并认识到这些工具的重要性。Q:老师说的深有体会,之前做安卓就一个人,项目管理gitA:确实,单人项目时可能不太重视Git,但随着团队规模扩大,Git等版本管理工具变得不可或缺。它能有效追踪代码变更、协作开发、管理冲突,尤其在多人协作和上线过程中,避免了很多潜在的错误和风险。Q:开发者空间能不能直接登录自己的华为账号,而不用重新输入一次A:开发者空间支持直接登录华为账号,开发者可以通过华为账号一键登录,无需重复输入登录信息,简化了访问流程,提高了使用便捷性。Q:开发者空间能不能提供命令行模式A:是的,华为开发者空间提供命令行模式,支持开发者通过命令行工具进行项目管理、部署和操作。这样可以提高开发效率,尤其适用于熟悉命令行操作的开发者,简化开发和运维流程。Q:开发者空间环境不久使用就会被自动回收,那么如何保存数据已避免被回收A:开发者空间提供数据持久化功能,开发者可以将重要数据备份到华为云存储或其他外部存储中,以避免因环境回收而丢失数据。使用云存储进行定期备份,是保障数据安全的有效方式。Q:华为开发者空间在解决开发者问题和技术支持方面有哪些新的改进?例如,是否提供更多的即时支持、社区互动平台或人工客服? 是否有更多的在线教程、视频课程、开发者社区活动等资源来帮助开发者提升技能?A:华为开发者空间改进了即时支持和技术服务,提供了在线客服、社区互动平台和更多技术支持。平台还新增了丰富的在线教程、视频课程和开发者活动,帮助开发者提升技能,解决开发难题,促进技术成长。Q:华为开发者空间的技术框架和工具,如何适配不同学科的应用场景?比如,文科专业学生想利用其开发与文化传播、教育相关的应用,该如何入手?A:华为开发者空间提供多种技术框架和工具,如云服务和AI能力,适用于不同学科应用场景。文科专业学生可通过学习相关课程,利用平台的开发工具与API,结合云计算和大数据技术,开发文化传播、教育类应用。Q:水平不是一个档次,听不懂A:如果你觉得有些内容难以理解,可以从基础入手,逐步学习相关的技术。华为开发者空间提供了许多适合初学者的教程和课程,你可以先学习云计算、AI等基础知识,再逐步尝试开发项目。
-
上回谈到从JJ银行提出跟随自主创新的时代步伐,响应银监会要求,进行鲲鹏硬件平台替换后,合规大模型应用就开始按照VDBD方法进行咨询调研并开始实施软件适配迁移。 先访谈了蔡总监,项目组获悉JJ银行应用合规大模型的技术系统包括:贷款系统、总线系统、文件存储管理和银监会数据交互系统,贷款系统是业务系统,存有大量业务合同和模板,文件存储管理是大模型输出合同模板存放的地方,总线系统统筹整个JJ银行应用系统总线交互,包括跟办公OA的流程对接交互;而银监会数据交互系统是银行上报接口。 这些技术上有关联的业务系统跟合同系统之间有实时和批处理两种方式。技术系统范围选择完成后,进行业务技术分析。比如贷款系统的合同模板非常混乱无序,需要合同系统对合同模板格式进行规划;总线系统对合同系统交互有性能要求,通过API接口调用,对合规大模型的合同模板生成周期要求不能超过50ms;文件存储管理要求ftp方式进行文件上传,如果大模型产生的合同模板出现峰值,需要合同系统有缓存空间;银监会数据交互系统每天定时调用批处理的数据,合同系统需要跑定时任务把对应数据推到相应接口。 分析后团队内部进行了技术路线选择,目前模型语言是Python写,选择框架是mindspore,当时支持的版本是Python3.7.5,合同模板是业务应用自定义格式,因此采用外采的软件依赖工具包,让采购厂商适配鲲鹏平台;在鲲鹏测试节点上测试,合规大模型生成合同模板时间10ms,满足API调用要求;同时配置适配鲲鹏的轻量open GaussDB,可以自定义批处理任务。 最终,项目组以产品优势的说法,说服了JJ银行接受我们的设计方案。
-
上回谈到从JJ银行提出跟随自主创新的时代步伐,响应银监会要求,进行鲲鹏硬件平台替换后,合规大模型应用就开始按照VDBD方法进行咨询调研并开始实施软件适配迁移。 先访谈了蔡总监,项目组获悉JJ银行应用合规大模型的技术系统包括:贷款系统、总线系统、文件存储管理和银监会数据交互系统,贷款系统是业务系统,存有大量业务合同和模板,文件存储管理是大模型输出合同模板存放的地方,总线系统统筹整个JJ银行应用系统总线交互,包括跟办公OA的流程对接交互;而银监会数据交互系统是银行上报接口。 这些技术上有关联的业务系统跟合同系统之间有实时和批处理两种方式。技术系统范围选择完成后,进行业务技术分析。比如贷款系统的合同模板非常混乱无序,需要合同系统对合同模板格式进行规划;总线系统对合同系统交互有性能要求,通过API接口调用,对合规大模型的合同模板生成周期要求不能超过50ms;文件存储管理要求ftp方式进行文件上传,如果大模型产生的合同模板出现峰值,需要合同系统有缓存空间;银监会数据交互系统每天定时调用批处理的数据,合同系统需要跑定时任务把对应数据推到相应接口。 分析后团队内部进行了技术路线选择,目前模型语言是Python写,选择框架是mindspore,当时支持的版本是Python3.7.5,合同模板是业务应用自定义格式,因此采用外采的软件依赖工具包,让采购厂商适配鲲鹏平台;在鲲鹏测试节点上测试,合规大模型生成合同模板时间10ms,满足API调用要求;同时配置适配鲲鹏的轻量open GaussDB,可以自定义批处理任务。 最终,项目组以产品优势的说法,说服了JJ银行接受我们的设计方案。
-
上回谈到把代码、SO库、软件包都迁移过来后,就可以进行重新编译了。在编译前,项目组专门了解一下鲲鹏平台的编译器。这套编译器是分场景编译,场景化编译分为四类:通算场景、安全计算、HPC场景和DPAK场景。 对于本次JJ银行的测试节点,只有一台鲲鹏服务器,不组HPC,是为了测试代码迁移后功能的完整性,也不需要安全计算和DPAK,因此本次选择通算场景化编译。 鲲鹏编译器还有一个硬件加速选项。众所周知,鲲鹏硬件平台是支持CPU超分,1核变成1.5核,利用CPU超分能力,加速计算速度,这个开关打开后,代码运行速度会明显加强。 编译完成后,本次代码迁移主干流程已完成。后续就是在新鲲鹏平台上测试迁移后功能和性能。 回顾前几回讨论,合规大模型迁移涉及面比较广,迁移过程环节比较多,如何在迁移工作和价值呈现上做取舍平衡? 迁移工作工作量太大,迁移面面俱到虽然会增加客户价值,但造成工期过长,迁移成本太大;迁移工作只是单纯完成了功能迁移,但性能下降了,不适应新鲲鹏平台运行,将会导致整个应用功能后续无法正常使用,客户价值降低。 我们如何解决这个问题呢?当时采用VDBD方法,比较好平衡二者。 首先,从客户技术场景选择开始,接着使用场景匹配的技术价值作为目标,然后选择对应价值点进行战略分析,技术分析后再选择对应的方案模式,最后明确双方范围分工。下回我们专门回顾一下本次迁移的VDBD技术实践。
-
上回谈到把代码、SO库、软件包都迁移过来后,就可以进行重新编译了。在编译前,项目组专门了解一下鲲鹏平台的编译器。这套编译器是分场景编译,场景化编译分为四类:通算场景、安全计算、HPC场景和DPAK场景。 对于本次JJ银行的测试节点,只有一台鲲鹏服务器,不组HPC,是为了测试代码迁移后功能的完整性,也不需要安全计算和DPAK,因此本次选择通算场景化编译。 鲲鹏编译器还有一个硬件加速选项。众所周知,鲲鹏硬件平台是支持CPU超分,1核变成1.5核,利用CPU超分能力,加速计算速度,这个开关打开后,代码运行速度会明显加强。 编译完成后,本次代码迁移主干流程已完成。后续就是在新鲲鹏平台上测试迁移后功能和性能。 回顾前几回讨论,合规大模型迁移涉及面比较广,迁移过程环节比较多,如何在迁移工作和价值呈现上做取舍平衡?迁移工作工作量太大,迁移面面俱到虽然会增加客户价值,但造成工期过长,迁移成本太大;迁移工作只是单纯完成了功能迁移,但性能下降了,不适应新鲲鹏平台运行,将会导致整个应用功能后续无法正常使用,客户价值降低。 我们如何解决这个问题呢?当时采用VDBD方法,比较好平衡二者。 首先,从客户技术场景选择开始,接着使用场景匹配的技术价值作为目标,然后选择对应价值点进行战略分析,技术分析后再选择对应的方案模式,最后明确双方范围分工。下回我们专门回顾一下本次迁移的VDBD技术实践。
-
上回我们谈到银行去年更换了GCH平台,换成鲲鹏平台,随之上层Saas应用全部都要开始适配鲲鹏平台。除了上回谈的模型参数配置以外,还有一个代码迁移的问题需要解决。合规模型大部分代码是Python和Java,这两部分代码原有架构是X86架构。Java调用了很多SO库和JDK,而Python也安装了GCC和SO库。Python代码迁移分为两部分,GCC重新安装和SO库重新编译,同时还会要重新安装Maveen软件。 Python大量SO库调用,代码经过几个人维护,已经找不到调用SO库的文档记录,如果少迁移一个SO库,代码都会跑不起来。这里我借助了一个代码检查工具——porting advisor,这个工具可以扫描出迁移目录下代码调用了哪些SO库。 这个项目的Pyhton量不大,主要是合同的智能识别和智能比对的模块,在合规模型的代码量中占比20%,但功能点却是整个合规模型的核心功能和亮点。 通过porting advisor扫描,模型代码总共调用了55个SO库。找出这些SO库后,就会出现迁移过程的第二道难关——SO存放在哪个仓库中? 鲲鹏平台对仓库调用有一个顺序,本地,远程,中心仓,由近到远的顺序进行仓库搜索。所以,找出55个SO库后还要进行SO库排序,按照频率调用的高地,调用频率高的SO库存在本地仓,调用频率低的SO库存在中心仓。经过排序后,每个SO库代码在鲲鹏平台重新编译。