828华为云征文|部署知识库问答系统 MaxKB
828华为云征文|部署知识库问答系统 MaxKB
- 一、Flexus云服务器X实例介绍
- 1.1 云服务器介绍
- 1.2 核心竞争力
- 1.3 计费模式
- 二、Flexus云服务器X实例配置
- 2.1 重置密码
- 2.2 服务器连接
- 2.3 安全组配置
- 三、部署 MaxKB
- 3.1 MaxKB 介绍
- 3.2 Docker 环境搭建
- 3.3 MaxKB 部署
- 3.4 MaxKB 使用
- 四、总结
一、Flexus云服务器X实例介绍
1.1 云服务器介绍
云服务器是一种通过互联网提供虚拟化计算资源的服务,用户可按需租用存储、数据库、网络等资源。它具有高可用性、可扩展性和灵活性,支持按使用量付费,适合各种规模的企业和个人开发者,以实现成本效益和业务敏捷性。
华为云下一代云服务器Flexus X实例
焕新上线,新产品具备柔性算力,六倍性能,旗舰体验,覆盖高科技、零售、金融、游戏等行业大多数通用工作负载场景,从而帮您快速上云!
Flexus X实例通过和其他服务组合,具备计算、镜像安装、网络、存储、安全等能力,您可根据业务需要灵活配置各资源。
本次测评使用的规格是:4核12G-100G-3M规格
的Flexus X实例基础模式
1.2 核心竞争力
-
柔性算力随心配
首创CPU内存规格灵活定义,突破1:2次幂的固有配比,实现1:3、2:5等自定义特殊规格,量身匹配业务性能诉求 -
一直加速一直快
首创大模型QoS保障,智能全域调度,算力分配长稳态运行,一直加速一直快 -
越用越省降本多
针对迁移场景智能资源预画像,帮助用户在华为云上推荐匹配的资源规格,降本可达30% -
安全可靠更放心
拥有国内最大SRE团队之一,基于华为云定性运维理念,确保云服务超高可用性
1.3 计费模式
计费模式 | 包年/包月 | 按需计费 |
---|---|---|
付费方式 | 预付费按照订单的购买周期结算。 | 后付费按照云服务器实际使用时长计费。 |
计费周期 | 按订单的购买周期计费。 | 秒级计费,按小时结算。 |
关机是否计费 | 关机对包年/包月的X实例计费无影响。云服务器按订单的购买周期计费。 | 关机后,基础资源(包括vCPU、内存、镜像)不计费。其他绑定资源(如云硬盘、弹性公网IP、带宽等)正常计费。 |
是否支持变更规格 | 支持变更实例规格。 | 支持变更实例规格。 |
是否支持备案 | 支持备案。需包月3个月及以上(包含多次续费后累计时长)。 | 不支持备案。 |
适用场景 | 适用于可预估资源使用周期的场景,价格比按需计费模式更优惠。对于长期使用者,推荐该方式。 | 适用于计算资源需求波动的场景,可以随时开通,随时删除。 |
二、Flexus云服务器X实例配置
2.1 重置密码
购买完成后,会短信通过你的云服务器信息,重点是公网IP地址
和用户名。首先我们需要打开你的服务器控制台,完成重置密码
勾选自动重启,点击确定即可。
2.2 服务器连接
-
方式一:使用控制台提供的VNC方式登录
-
方式二:使用Putty、Xshell等工具登录Linux弹性云服务器,
a) 下载安装登录工具,例如Putty。
b) 输入弹性公网IP。
c) 输入用户名:root、密码,单击“确定”。 -
方式三:使用Linux/Mac OS系统主机登录Linux弹性云服务器。
a) 执行连接命令。
ssh 弹性公网IP
例如:ssh 123.xxx.xxx.456
b) 输入用户名:root、密码,登录服务器。
我个人习惯使用 MobaXterm
这款软件,添加SSH连接,输出公网IP
、用户名和端口(默认22),连接即可。
2.3 安全组配置
安全组是一个逻辑上的分组,为同一个VPC内的云服务器提供访问策略
。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。
系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组
。
主要需要填写优先级
(默认填1即可)、协议端口信息
(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。
如果还不清楚可以参考文档:安全组配置示例
三、部署 MaxKB
3.1 MaxKB 介绍
MaxKB = Max Knowledge Base,是一款基于大语言模型和 RAG 的开源知识库问答系统,广泛应用于企业内部知识库、客户服务、学术研究与教育等场景。
-
开箱即用
支持直接上传文档、自动爬取在线文档,支持文本自动拆分、向量化、RAG(检索增强生成),智能问答交互体验好; -
无缝嵌入
支持零编码快速嵌入到第三方业务系统,让已有系统快速拥有智能问答能力,提高用户满意度; -
灵活编排
内置强大的工作流引擎,支持编排 AI 工作流程,满足复杂业务场景下的需求; -
模型中立
支持对接各种大语言模型,包括本地私有大模型(Llama 3 / Qwen 2 等)、国内公共大模型(通义千问 / 智谱 AI / 百度千帆 / Kimi / 腾讯混元 / DeepSeek 等)和国外公共大模型(OpenAI / Azure OpenAI / Gemini / Claude 等)。
知识库问答系统 MaxKB 的意义在于,它不仅能够理解自然语言查询,还能从大规模知识库中快速检索相关信息,从而生成高质量的答案。这对于提升客户服务体验、加速企业决策流程、支持科学研究等多个领域都有着重要的应用价值,使得机器能够更加智能地辅助人类解决实际问题。
- 官网:https://maxkb.cn/
- Github:https://github.com/1Panel-dev/MaxKB
3.2 Docker 环境搭建
本次服务器环境是ubuntu系统镜像,需要自己安装docker环境
服务器类别 | 系统镜像 | 内网IP地址 | Docker版本 | 操作系统版本 |
---|---|---|---|---|
Flexus云服务器X实例 | Ubuntu | 192.168.0.168 | 27.2.0 | Ubuntu 22.04.4 LTS |
使用apt-get
命令安装docker及其配置
# 安装必要工具包
$ sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-common# 添加Docker GPG秘钥
$ sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -# 配置仓库源
$ sudo add-apt-repository \"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \$(lsb_release -cs) \stable" # 更新apt包索引
$ sudo apt-get update# 安装docker
$ sudo apt-get install docker-ce docker-ce-cli containerd.io# 添加docker镜像源
$ sudo vim /etc/docker/daemon.json{"registry-mirrors": ["https://ustc-edu-cn.mirror.aliyuncs.com/","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn","https://ccr.ccs.tencentyun.com/","https://docker.m.daocloud.io/","https://dockerproxy.com",]
}
# 重启
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
测试docker
安装是否成功
root@flexusx-c6b3:~# docker -v
Docker version 27.2.0, build 3ab4256```
检查docker
服务状态
root@flexusx-c6b3:~# systemctl status docker
* docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2024-08-30 15:53:45 CST; 17h ago
TriggeredBy: * docker.socketDocs: https://docs.docker.comMain PID: 24912 (dockerd)Tasks: 13Memory: 24.7MCPU: 3.778sCGroup: /system.slice/docker.service`-24912 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
检查docker compose
版本
root@flexusx-c6b3:~# docker compose version
Docker Compose version v2.29.2
3.3 MaxKB 部署
- 创建 docker-compose.yml
version: "3.5"services:maxkb:image: cr2.fit2cloud.com/1panel/maxkbcontainer_name: maxkb restart: unless-stopped ports:- "3456:8080"volumes:- ./maxkb:/var/lib/postgresql/data- ./python-packages:/opt/maxkb/app/sandbox/python-packages
- volumes:映射容器内部文件路径到本地
- ports:配置访问端口
如果将上述代码片段保存在名为 docker-compose.yml 的文件中,则只需从同一文件夹中运行 docker compose up -d
即可自动拉取 MaxKB 镜像,并创建并启动一个容器。 up
表示启动服务,-d
表示在后台执行。docker-compose down
命令用于停止和清理由 docker-compose up
启动的服务。
- 配置安全组
在Flexus云服务器X实例的安全组管理页面,添加入方向规则,接下来我们启动服务需要监听3456端口,所以添加安全组为TCP:3456
协议端口。
- 启动服务
进入项目目录,执行docker compose up -d
启动命令,会自动拉取容器并运行
从 Dockerhub 拉取 MaxKB 镜像,地址:https://hub.docker.com/r/1panel/maxkb
root@flexusx-c6b3:~/maxkb# docker-compose up -d
Creating network "maxkb_default" with the default driver
Pulling maxkb (cr2.fit2cloud.com/1panel/maxkb:latest)...
latest: Pulling from 1panel/maxkb
8a1e25ce7c4f: Pull complete
b2be002daccf: Pull complete
71dff0956c31: Pull complete
962627501404: Pull complete
c23077a7a05a: Pull complete
40632b8e7084: Pull complete
cfbec5f1dac7: Pull complete
d1743de7c97b: Pull complete
c9cde040a07c: Pull complete
3a23a8d46005: Pull complete
f499f39f0f2d: Pull complete
2cf0f5381fa5: Pull complete
89f512733a11: Pull complete
45deb7326cc7: Pull complete
4da1588ee668: Pull complete
d3f2ea1b2dc4: Pull complete
a651e1af8a2c: Pull complete
b0f10305f06f: Pull complete
25d51f67048a: Pull complete
2b72b0c37d09: Pull complete
Digest: sha256:25a2f81682da5dff39b95aeb331c069eb29449be809b80b8b0105ea3f1f6e064
Status: Downloaded newer image for cr2.fit2cloud.com/1panel/maxkb:latest
Creating maxkb ...
Creating maxkb ... done
- 检查容器状态
检查 MaxKB 容器状态,确保容器正常启动
root@flexusx-c6b3:~/maxkb# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b032cd415d31 cr2.fit2cloud.com/1panel/maxkb "bash -c /usr/bin/ru…" About a minute ago Up 53 seconds 5432/tcp, 0.0.0.0:3456->8080/tcp, :::3456->8080/tcp maxkb
- 访问地址
内网:http://localhost:3456
外网:http://公网IP:3456
- 访问结果
若出现此页面,则部署 maxkb server 成功。
3.4 MaxKB 使用
输入默认的用户名和密码,完成登录
默认登录信息
用户名:admin
密码:MaxKB@123…
登录后需要重新修改密码,修改完成后就可以进入主页面了
登录 MaxKB 系统后,可以在系统管理
- 模型设置
中添加模型,也可以在创建应用时再添加模型
在供应商中选择【 Ollama 】,然后点击【添加模型】,进入 Ollama 表单,点击【添加】后校验通过则添加成功,便可以在应用的 AI 模型列表选择该模型
- 模型名称:MaxKB 中自定义的模型名称。
- 模型类型:大语言模型或向量模型。
- 基础模型:供应商的 LLM 模型,支持自定义输入,但需要与供应商的模型名称保持一致,系统会自动下载部署模型。
- API 域名和 API Key: Ollama 服务地址,例如:http://42.92.198.53:11434 。若没有设置 API Key,可以输入任意字符。
这里填入的API域名为之前部署的 ollama
,可以通过此网址和端口,如http://123.60.144.170:11434
,进行测试是否是可用的,出现Ollama is running
则是可用的
添加完成后,就可以显示在全部模型列表中了,默认是有一个 maxkb-embedding
的向量模型的
打开 知识库
页面,点击 创建知识库
,进入创建知识库页面。 输入知识库名称、知识库描述、向量模型、选择通用型知识库类型
然后将离线文档通过拖拽方式或选择文件上传方式进行上传,支持文本文件格式为:Markdown、TXT、PDF、DOCX、HTML
设置分段规则,目前 MaxKB 支持智能分段以及高级分段两种分段方式。
智能分段
(1)MarkDown 类型的文件智能分段规则:
根据标题逐级下钻式分段(最多支持 6 级标题),每段的字符数最大为 4096 个字符;
当最后一级的文本段落字符数超过设置的分段长度时,会查找分段长度以内的回车进行截取。
(2)HTML、DOCX 类型的智能分段规则:
识别标题格式转换成 markdown 的标题样式;
逐级下钻进行分段(最多支持 6 级标题)每段的字符数最大为 4096 个字符。
(3)TXT和 PDF 类型的文件智能分段规则:
按照标题# 进行分段,若没有#标题的则按照字符数4096个字符进行分段;
查找分段长度以内的回车进行截取。
还可以选择高级分段,需要自己更根据上传的文件设置规则
高级分段
用户可以根据文档规范自定义设置分段标识符、分段长度及自动清洗。
- 分段标识支持:#、##、###、####、#####、######、-、空行、回车、空格、分号、逗号、句号,还可以手动输入分段标识符。
- 分段长度:支持最小 50个字符,最大 4096 个字符。
- 自动清洗:开启后系统会自动去掉重复多余的符号如空格、空行、制表符等。
开始导入后,会先索引中,等待文件状态变成成功
即可
点击 创建应用
,输入应用名称,选择 简易配置应用
,点击 创建
应用创建完成,进入简易配置应用的设置页面,左侧为应用信息,右侧为调试预览界面
- 应用名称:用户提问时对话框的标题和名字。
- 应用描述:对应用场景及用途的描述。
- AI模型:在【系统设置】-【模型管理】中添加的大语言模型。
- 提示词:系统默认有智能知识库的提示词,用户可以自定义通过调整提示词内容,可以引导大模型聊天方向.
- 多轮对话:开启后当用户提问时,将携带用户在当前会话中最后3个问题;不开启则仅向大模型提交当前问题。
- 关联知识库:用户提问后会在关联的知识库中检索分段。
- 开场白:用户打开对话时,系统弹出的问候语。支持 Markdown 格式;[-]后的内容为快捷问题,一行一个。
- 问题优化:对用户提出的问题先进行一次 LLM 优化处理,将优化后的问题在知识库中进行向量化检索;开启后能提高检索知识库的准确度,但由于多一次询问大模型会增加回答问题的时长。
知识库还可以进行参数设置,比如检索模式
- 检索:使用向量模型通过向量距离计算与用户问题最相似的文本分段;
- 全文检索:通过关键词检索,返回包含关键词最多的文本分段;
- 混合检索:同时执行全文检索和向量检索,再进行重排序,从两类查询结果中选择匹配用户问题的最佳结果。
应用信息设置完成后,可以在右侧调试预览中进行提问预览
在应用列表页面,在概览
页面点击演示或在浏览器中复制公开访问链接进入问答页面进行提问
访问公开访问链接
,可以分享给他人使用
我们来查看下 MaxKB 的映射文件路径下的结构
root@flexusx-c6b3:~/maxkb# tree -L 1
.
|-- docker-compose.yml
|-- maxkb
`-- python-packages2 directories, 1 file
- maxkb 即为 postgresql 数据库目录
- python-packages 即为python库依赖目录
基于MaxkB搭建本地知识库问答系统,能够实现对敏感数据的本地化存储与管理,确保信息安全。同时,该系统支持快速检索与智能生成,帮助企业或个人高效利用已有知识,提升工作效率。适用于教育培训、企业内部知识分享等多种场景,促进知识积累与创新应用。MaxkB的基本使用就操作到此了,添加模型、添加知识库、添加应用和使用应用操作,其中对文档文件的检索设置还需要仔细研究下,还有更多有趣的设置和功能就需要自行探索了。
四、总结
基于大型语言模型和检索增强生成(RAG, Retrieval-Augmented Generation)的知识库问答系统结合了深度学习的强大文本生成能力和结构化数据的精确检索优势,能够在回答复杂问题时提供更准确、上下文相关的响应。此次使用的Flexus X实例
配置还是很高的4核12G-100G-3M规格
的基础模式
,在回答过程中,输出比较缓慢,我这里将ollama部署在了同一个服务器上了,使用的模型的是llama2:7b
,没有限制最大CPU和内存使用,使用纯CPU推理的,回答问题时CPU和内存都会上升,但整体负载评估是运行流畅。
华为云服务器,以卓越的性能和稳定性著称,提供灵活的资源配置,满足不同业务需求。现在正值828 B2B企业节
,享受限时优惠,免费试用和专属技术支持,让您的业务更上一层楼。立即行动,体验华为云的高效与便捷,助力您的企业快速成长。
相关文章:

828华为云征文|部署知识库问答系统 MaxKB
828华为云征文|部署知识库问答系统 MaxKB 一、Flexus云服务器X实例介绍1.1 云服务器介绍1.2 核心竞争力1.3 计费模式 二、Flexus云服务器X实例配置2.1 重置密码2.2 服务器连接2.3 安全组配置 三、部署 MaxKB3.1 MaxKB 介绍3.2 Docker 环境搭建3.3 MaxKB 部署3.4 Max…...

数据结构之算法复杂度
目录 前言 一、复杂度的概念 二、时间复杂度 三、大O的渐进表示法 四、空间复杂度 五、常见复杂度对比 总结 前言 本文主要讲述数据结构中的算法复杂度 一、复杂度的概念 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源。因此衡量一个算法的好坏…...

Python用TOPSIS熵权法重构粮食系统及期刊指标权重多属性决策MCDM研究|附数据代码...
原文链接:https://tecdat.cn/?p37724 在当今世界,粮食系统的稳定性至关重要。尽管现有的全球粮食系统在生产和分配方面表现出较高的效率,但仍存在大量人口遭受饥饿以及诸多粮食安全隐患。与此同时,在学术领域,准确评估…...

【例题】lanqiao4403 希尔排序模板题
插入排序每次只能将数据移动一位。 已知插入排序代码为: def insert_sort(a):for i in range(1,len(a)):ji-1while j>0 and a[j]>a[i]:a[j1]a[j]j-1a[j1]a[i]return a希尔排序在插入排序的基础上,将数据移动n/2,n/4,…,1位。 for i in range(ga…...

【C/C++】速通涉及string类的经典编程题
【C/C】速通涉及string类的经典编程题 一.字符串最后一个单词的长度代码实现:(含注释) 二.验证回文串解法一:代码实现:(含注释) 解法二:(推荐)1. 函数isalnum…...

MySQL:库表的基本操作
库操作 查看 查看存在哪些数据库: show databases;查看自己当前处于哪一个数据库: select database(); 由于我不处于任何一个数据库中,此处值为NULL 查看当前有哪些用户连接到了MySQL: show processlist; 创建 创建一个数据库 语…...

JS领域的AI工程利器分享
JavaScript,这个在网页开发中广为人知的脚本语言,正逐渐在AI工程领域展现出其独特的魅力。对于那些希望将大语言模型(LLM)融入项目的开发者来说,以下五个JavaScript工具将是关键资源。 1. TensorFlow.js TensorFlow.…...

2024/9/20 使用QT实现扫雷游戏
有三种难度初级6x6 中级10x10 高级16x16 完成游戏 游戏失败后,无法再次完成游戏,只能重新开始一局 对Qpushbutton进行重写 mybutton.h #ifndef MYBUTTON_H #define MYBUTTON_H #include <QObject> #include <QWidget> #include <QPus…...

09.20 C++对C的扩充以及C++中的封装、SeqList
SeqList.h #ifndef SEQLIST_H #define SEQLIST_H#include <iostream> #include<memory.h> #include<stdlib.h> #include<string.h>using namespace std;//typedef int datatype; //类型重命名 using datatype int;//封装一个顺序表 class Seq…...

Git提交类型
说明:Git提交类型指的是代码commit时,写在comment前面的标志,表示此次commit的提交类型,如下: Git提交类型 常见的Git提交类型有: feat:新特性、新功能或优化; fix:修复…...

C++速通LeetCode简单第18题-杨辉三角(全网唯一递归法)
全网唯一递归法: vector<vector<int>> generate(int numRows) {vector<int> v;vector<vector<int>>vn;if (numRows 1){v.push_back(1);vn.push_back(v);v.clear();return vn;//递归记得return}if (numRows 2){v.push_back(1);vn.p…...

Redis作为单线程模型,为什么效率高、速度快呢?
前言: 效率高、速度快是相较于数据库来说的(MySQL、Orcale、SQL server) 文章目录 一、单线程模式的工作流程二、为什么快? 一、单线程模式的工作流程 这里我们所说的单线程是指:Redis只使用一个线程,来处…...

人工智能——猴子摘香蕉问题
一、实验目的 求解猴子摘香蕉问题,根据猴子不同的位置,求解猴子的移动范围,求解对应的过程,针对不同的目标状态进行求解。 二、实验内容 根据场景有猴子、箱子、香蕉,香蕉挂天花板上。定义多种谓词描述位置、状态等…...

对ViT 中Patch Embedding理解
借鉴了这个博主的ViT Patch Embedding理解-CSDN博客,再加了一些理解。 就通过代码来理解吧 假设输入图像的维度为HxWxC,分别表示高,宽和通道数。 PatchEmbed 的类,它继承了 nn.Module,实现了将输入的2维图像&#…...

Redis基本命令详解
1. 基本命令 命令不区分大小写,而key是区分大小写的 # select 数据库间的切换 数据库共计16个 127.0.0.1:6379> select 1# dbsize 返回当前数据库的 key 的数量 127.0.0.1:6379[1]> dbsize# keys * 查看数据库所有的key 127.0.0.1:6379[1]> keys *# fl…...

Java之线程篇四
目录 volatile关键字 volatile保证内存可见性 代码示例 代码示例2-(volatile) volatile不保证原子性 synchronized保证内存可见性 wait()和notify() wait()方法 notify() 理解notify()和notifyAll() wait和sleep的对比 volatile关键字 volati…...

计算机毕业设计之:基于微信小程序的校园流浪猫收养系统
博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…...

SpringBoot:关于Redis的配置失效(版本问题)
我们使用redis时发现yaml配置中的redis相关配置不生效,后面发现将配置修改甚至删除所有相关redis的配置,springboot依然能使用redis里面默认的db0并且不报错。上网查阅了一些文章,也都没有解决今天分享下,我的处理方法, SpringBo…...

halcon 快速定义字典
定义一个名为params的字典 Params : dict{} 等价于用 create_dict (Params ) 为字典添加键值对,在halcon中箭只能是字符串,值可以是任何类型的obj或者tuple Params.remove_outer_edges : true Params.max_gap : 150 等价于用 set_dict_object (true,…...

Sublime text3怎么关闭提示更新
问题 sublime text 3有新版本后,会不停地在每次启动后弹窗提示更新版本 第一步 软件安装之前,切记是软件安装之前!!!需要在hosts中添加以下内容(屏蔽官网联网检测):hosts的位置一般在C:\Windows\System32\drivers\etc…...

生成式语言模型技术栈
生成式语言模型的最新技术栈正在快速发展,尤其是随着大规模预训练模型(LLMs)和生成式AI的应用不断扩展。以下是当今最前沿的生成式语言模型技术栈,涵盖从模型开发到优化、推理和部署的各个环节。 1. 基础模型开发 基础模型开发包…...

进程分析工具Process Explorer使用
进程分析工具Process Explorer使用 Process Explorer让使用者能了解看不到的在后台执行的处理程序,能显示目前已经载入哪些模块,分别是正在被哪些程序使用着,还可显示这些程序所调用的DLL进程,以及他们所打开的句柄。Process Expl…...

vue 中如何实现鼠标拖动出发滚动条的跟随移动?
使用场景 在做弹窗、表单或 tab 切换需求的时候,有时候因为内容过长会导致出现滚动条,但是只能拖动滚动条时会导致操作不便,我们会希望实现通过拖动内容区实现滚动条的滑动。这样操作就会简单多了。 实现思路 如果要实现鼠标辅助触发滚动条…...

【Java EE】文件IO
Author:MTingle major:人工智能 --------------------------------------- Build your hopes like a tower! 目录 一、文件是什么? 二、针对文件系统操作的API 1.文件路径,文件名,文件是否存在 2. 创建文件 3.删除文件&#…...

使用 React、Material-UI、Spring、MySQL、MyBatis 以及高德 API 模拟实时位置信息
要使用 React、Material-UI、Spring、MySQL、MyBatis 以及高德 API 模拟实时位置信息,你可以按以下步骤来实现: 目录 1. 前端 (React Material-UI) 2. 后端 (Spring Boot MyBatis MySQL) 3. 模拟实时位置数据 4. 前后端联调 1. 前端 (React Mat…...

UniApp一句话经验: px -> rpx动态转换和动态元素区域的获取
px->rpx转换 在多终端条件下,什么devicePixelRatio,upx2px都是不靠谱的,最直接的是这样: const { screenWidth } uni.getSystemInfoSync()const pixelUnit screenWidth / 750 // rpx->px比例基数 动态元素区域获取 多终…...

Python基于flask框架的智能停车场车位系统 数据可视化分析系统fyfc81
目录 技术栈和环境说明解决的思路具体实现截图系统设计python语言django框架介绍flask框架介绍性能/安全/负载方面可行性分析论证python-flask核心代码部分展示python-django核心代码部分展示技术路线操作可行性详细视频演示源码获取 技术栈和环境说明 结合用户的使用需求&…...

海外服务器哪个速度最快且性能稳定
海外服务器的速度与性能稳定性受多种因素影响,包括地理位置、网络架构、基础设施质量以及用户网络路径等。在众多选择中,几个特定地区的服务器因其卓越表现而备受推崇。 首先,美国硅谷(加利福尼亚州)与纽约的服务器以其技术领先、网络连接稳定…...

C/C++通过CLion2024进行Linux远程开发保姆级教学
目前来说,对Linux远程开发支持相对比较好的也就是Clion和VSCode了,这两个其实对于C和C语言开发都很友好,大可不必过于纠结使用那个,至于VS和QtCreator,前者太过重量级了,后者更是不用说,主要用于…...

工程师 - 如何安装Windows 终端
Windows 终端是一款适用于 Windows 的现代命令行应用程序,支持多个终端会话,包括 Command Prompt、PowerShell 和 Windows Subsystem for Linux (WSL)。它具有标签式界面、可定制的设置(如主题和按键绑定)、改进的文本渲染以及对 …...