828华为云征文 | 云服务器Flexus X实例:RAG 开源项目 FastGPT 部署,玩转大模型
目录
一、FastGPT 简介
二、FastGPT 部署
2.1 下载启动文件
2.2 开放端口权限
2.3 启动 FastGPT
三、FastGPT 运行
3.1 登录 FastGPT
3.2 知识库
3.3 应用
四、总结
本篇文章主要通过 Flexus云服务器X实例 部署 RAG 开源项目 FastGPT,通过 FastGPT 可以使用大模型生成用户需要的内容。 Flexus云服务器X实例具有柔性算力,六倍性能,旗舰体验,覆盖高科技、零售、金融、游戏等行业大多数通用工作负载场景,完全可以支持 FastGPT 的部署、运行和使用,而且,Flexus云服务器X实例 能够提供完备的产品能力,可以基于业务诉求灵活自定义拓扑组网,支持灵活自定义vCPU和内存配比,完全基于业务资源诉求选择合适规格,节省资源开销等优势,需要的小伙伴赶紧用起来吧!
一、FastGPT 简介
FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景!
具有如下特性:
(1)专属 AI 客服:通过导入文档或已有问答对进行训练,让 AI 模型能根据你的文档以交互式对话方式回答问题;
(2)简单易用的可视化界面:FastGPT 采用直观的可视化界面设计,为各种应用场景提供了丰富实用的功能。通过简洁易懂的操作步骤,可以轻松完成 AI 客服的创建和训练流程;
(3)自动数据预处理:提供手动输入、直接分段、LLM 自动处理和 CSV 等多种数据导入途径,其中“直接分段”支持通过 PDF、WORD、Markdown 和 CSV 文档内容作为上下文。FastGPT 会自动对文本数据进行预处理、向量化和 QA 分割,节省手动训练时间,提升效能;
(4)工作流编排:基于 Flow 模块的工作流编排,可以帮助你设计更加复杂的问答流程。例如查询数据库、查询库存、预约实验室等;
(5)强大的 API 集成:FastGPT 对外的 API 接口对齐了 OpenAI 官方接口,可以直接接入现有的 GPT 应用,也可以轻松集成到企业微信、公众号、飞书等平台。
二、FastGPT 部署
2.1 下载启动文件
首先,创建一个目录方便存储部署的文件,执行如下命令创建目录。
root@flexusx-7305:~# mkdir fastgpt
进入 fastgpt 目录,下载 config.json 文件。
root@flexusx-7305:~# cd fastgpt
root@flexusx-7305:~/fastgpt# curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json% Total % Received % Xferd Average Speed Time Time Time CurrentDload Upload Total Spent Left Speed
100 6637 100 6637 0 0 17283 0 --:--:-- --:--:-- --:--:-- 17283
root@flexusx-7305:~#
如上所示,下载成功。config.json 文件是用于配置 FastGPT,包括大模型、向量数据库、重排模型等,config.json 文件部分内容如下所示。
{ "feConfigs": {"lafEnv": "https://laf.dev" // laf环境。 https://laf.run (杭州阿里云) ,或者私有化的laf环境。如果使用 Laf openapi 功能,需要最新版的 laf 。},"systemEnv": {"vectorMaxProcess": 15,"qaMaxProcess": 15,"pgHNSWEfSearch": 100 // 向量搜索参数。越大,搜索越精确,但是速度越慢。设置为100,有99%+精度。},"llmModels": [{"model": "gpt-4o-mini", // 模型名(对应OneAPI中渠道的模型名)"name": "gpt-4o-mini", // 模型别名"avatar": "/imgs/model/openai.svg", // 模型的logo"maxContext": 125000, // 最大上下文"maxResponse": 16000, // 最大回复"quoteMaxToken": 120000, // 最大引用内容"maxTemperature": 1.2, // 最大温度"charsPointsPrice": 0, // n积分/1k token(商业版)"censor": false, // 是否开启敏感校验(商业版)"vision": true, // 是否支持图片输入"datasetProcess": true, // 是否设置为知识库处理模型(QA),务必保证至少有一个为true,否则知识库会报错"usedInClassify": true, // 是否用于问题分类(务必保证至少有一个为true)"usedInExtractFields": true, // 是否用于内容提取(务必保证至少有一个为true)"usedInToolCall": true, // 是否用于工具调用(务必保证至少有一个为true)"usedInQueryExtension": true, // 是否用于问题优化(务必保证至少有一个为true)"toolChoice": true, // 是否支持工具选择(分类,内容提取,工具调用会用到。目前只有gpt支持)"functionCall": false, // 是否支持函数调用(分类,内容提取,工具调用会用到。会优先使用 toolChoice,如果为false,则使用 functionCall,如果仍为 false,则使用提示词模式)"customCQPrompt": "", // 自定义文本分类提示词(不支持工具和函数调用的模型"customExtractPrompt": "", // 自定义内容提取提示词"defaultSystemChatPrompt": "", // 对话默认携带的系统提示词"defaultConfig": {}, // 请求API时,挟带一些默认配置(比如 GLM4 的 top_p)"fieldMap": {} // 字段映射(o1 模型需要把 max_tokens 映射为 max_completion_tokens)},{"model": "gpt-4o","name": "gpt-4o","avatar": "/imgs/model/openai.svg","maxContext": 125000,"maxResponse": 4000,"quoteMaxToken": 120000,"maxTemperature": 1.2,"charsPointsPrice": 0,"censor": false,"vision": true,"datasetProcess": false,"usedInClassify": true,"usedInExtractFields": true,"usedInToolCall": true,"usedInQueryExtension": true,"toolChoice": true,"functionCall": false,"customCQPrompt": "","customExtractPrompt": "","defaultSystemChatPrompt": "","defaultConfig": {},"fieldMap": {}},
然后,下载 Docker yml 文件,执行如下命令。
root@flexusx-7305:~/fastgpt# curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml% Total % Received % Xferd Average Speed Time Time Time CurrentDload Upload Total Spent Left Speed
100 5577 100 5577 0 0 14448 0 --:--:-- --:--:-- --:--:-- 14448
root@flexusx-7305:~#
docker-compose.yml 里面的镜像需要修改为国内镜像,如下所示。
version: '3.3'
services:# dbpg:#image: pgvector/pgvector:0.7.0-pg15 # docker hubimage: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.7.0 # 阿里云container_name: pgrestart: alwaysports: # 生产环境建议不要暴露- 5432:5432networks:- fastgptenvironment:# 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果- POSTGRES_USER=username- POSTGRES_PASSWORD=password- POSTGRES_DB=postgresvolumes:- ./pg/data:/var/lib/postgresql/datamongo:#image: mongo:5.0.18 # dockerhubimage: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云# image: mongo:4.4.29 # cpu不支持AVX时候使用container_name: mongorestart: alwaysports:- 27017:27017networks:- fastgptcommand: mongod --keyFile /data/mongodb.key --replSet rs0environment:- MONGO_INITDB_ROOT_USERNAME=myusername- MONGO_INITDB_ROOT_PASSWORD=mypasswordvolumes:- ./mongo/data:/data/dbentrypoint:- bash- -c- |openssl rand -base64 128 > /data/mongodb.keychmod 400 /data/mongodb.keychown 999:999 /data/mongodb.keyecho 'const isInited = rs.status().ok === 1if(!isInited){rs.initiate({_id: "rs0",members: [{ _id: 0, host: "mongo:27017" }]})}' > /data/initReplicaSet.js# 启动MongoDB服务exec docker-entrypoint.sh "$$@" &# 等待MongoDB服务启动until mongo -u myusername -p mypassword --authenticationDatabase admin --eval "print('waited for connection')" > /dev/null 2>&1; doecho "Waiting for MongoDB to start..."sleep 2done# 执行初始化副本集的脚本mongo -u myusername -p mypassword --authenticationDatabase admin /data/initReplicaSet.js# 等待docker-entrypoint.sh脚本执行的MongoDB服务进程wait $$!
# fastgptsandbox:container_name: sandbox#image: ghcr.io/labring/fastgpt-sandbox:latest # gitimage: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:latest # 阿里云networks:- fastgptrestart: alwaysfastgpt:container_name: fastgpt#image: ghcr.io/labring/fastgpt:v4.8.9 # gitimage: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.8.9 # 阿里云ports:- 3000:3000networks:- fastgptdepends_on:- mongo- pg- sandboxrestart: alwaysenvironment:# root 密码,用户名为: root。如果需要修改 root 密码,直接修改这个环境变量,并重启即可。- DEFAULT_ROOT_PSW=1234# AI模型的API地址哦。务必加 /v1。这里默认填写了OneApi的访问地址。- OPENAI_BASE_URL=http://oneapi:3000/v1# AI模型的API Key。(这里默认填写了OneAPI的快速默认key,测试通后,务必及时修改)- CHAT_API_KEY=sk-fastgpt# 数据库最大连接数- DB_MAX_LINK=30# 登录凭证密钥- TOKEN_KEY=any# root的密钥,常用于升级时候的初始化请求- ROOT_KEY=root_key# 文件阅读加密- FILE_TOKEN_KEY=filetoken# MongoDB 连接参数. 用户名myusername,密码mypassword。- MONGODB_URI=mongodb://myusername:mypassword@mongo:27017/fastgpt?authSource=admin# pg 连接参数- PG_URL=postgresql://username:password@pg:5432/postgres# sandbox 地址- SANDBOX_URL=http://sandbox:3000# 日志等级: debug, info, warn, error- LOG_LEVEL=info- STORE_LOG_LEVEL=warnvolumes:- ./config.json:/app/data/config.json
............
需要将对应的镜像(image处)替换为国内镜像源。
2.2 开放端口权限
FastGPT 需要使用 3000 端口,所以需要开放 3000 端口。
在基本信息中,点击安全组,如下所示。
然后,点击配置规则,配置对应的端口,如下所示。
然后,点击入方向规则,如下所示。
然后,点击添加规则,如下所示。
最后,填写优先级、策略、类型、协议端口、源地址等,点击确定即可添加。
2.3 启动 FastGPT
最后,执行命令 docker-compose up -d 启动容器,如下所示。
root@flexusx-7305:~/fastgpt# docker-compose up -d
Pulling pg (registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.7.0)...
v0.7.0: Pulling from fastgpt/pgvector
b0a0cf830b12: Pull complete
b311dac095c3: Pull complete
36163cea98c3: Pull complete
fe401a45083b: Pull complete
b4f63e66f657: Pull complete
9a8245430c33: Pull complete
74c893d239e5: Pull complete
789ed9a95b21: Pull complete
5b691e4e12b4: Pull complete
e502d5360f88: Pull complete
0292671f3c2d: Pull complete
5247a27db111: Pull complete
b3a42a5269c3: Pull complete
5fc19b802589: Pull complete
973f95d4f335: Pull complete
694339e21380: Pull complete
Digest: sha256:27df42f0d0be8d5623ff1aea5fea7134e175af1cdef62d9df00b322a3c85edc9
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.7.0
Pulling mongo (registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18)...
5.0.18: Pulling from fastgpt/mongo
99803d4b97f3: Pull complete
6653ceb22977: Pull complete
e067c5774dde: Pull complete
3f2512535c9b: Pull complete
95823dd64119: Pull complete
806644aafaf1: Pull complete
b6eb4ecca0a2: Pull complete
a85fb80d261c: Pull complete
b8e25023b418: Pull complete
Digest: sha256:2b7e5f3ddc4f4707cdf72bd55e50a0dbd34b5832e5e97d9fdf5adc19abebf068
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18
Pulling sandbox (registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:latest)...
latest: Pulling from fastgpt/fastgpt-sandbox
ec99f8b99825: Already exists
826542d541ab: Pull complete
dffcc26d5732: Pull complete
db472a6f05b5: Pull complete
ecd04a51a4f0: Pull complete
545ea84d560a: Pull complete
c58556c21eaf: Pull complete
Digest: sha256:713b33d3046df1dbad4d8a96e96d6768da40b37725aae51d62c65f78d142f7f0
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:latest
Pulling fastgpt (registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.8.9)...
v4.8.9: Pulling from fastgpt/fastgpt
ec99f8b99825: Already exists
826542d541ab: Already exists
dffcc26d5732: Already exists
db472a6f05b5: Already exists
491fb52a5552: Pull complete
e976869203ad: Pull complete
3752adf5e588: Pull complete
4f4fb700ef54: Pull complete
16dac137804b: Pull complete
6e71790b1b02: Pull complete
182766849e9d: Pull complete
dcb3c7036667: Pull complete
953e3286d363: Pull complete
b07e2289cb81: Pull complete
12cd02b56be5: Pull complete
1cb02e13b272: Pull complete
bf8bf6a61713: Pull complete
ccd96c6d5426: Pull complete
303d7b560361: Pull complete
9b6e2c2688e6: Pull complete
d44f4ca5f7c4: Pull complete
Digest: sha256:91e1bc8349f477c0c70b25a0dbeb7394240aac515ee5dd9e8c7c6e44b2d3da4a
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.8.9
Pulling mysql (registry.cn-hangzhou.aliyuncs.com/fastgpt/mysql:8.0.36)...
8.0.36: Pulling from fastgpt/mysql
bd37f6d99203: Pull complete
d2433cba0951: Pull complete
13702d9fe3c3: Pull complete
83bcc87284a1: Pull complete
c38d8660e1fa: Pull complete
7e1bc321f421: Pull complete
bddd54b9c549: Pull complete
4eaae1e844ac: Pull complete
5196e1e87d8f: Pull complete
6586d096303c: Pull complete
cf55ff1c80af: Pull complete
Digest: sha256:c57363379dee26561c2e554f82e70704be4c8129bd0d10e29252cc0a34774004
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/fastgpt/mysql:8.0.36
Pulling oneapi (registry.cn-hangzhou.aliyuncs.com/fastgpt/one-api:v0.6.6)...
v0.6.6: Pulling from fastgpt/one-api
4abcf2066143: Already exists
17841cb3f506: Pull complete
4394f95d2b0d: Pull complete
7fcd5fcce5af: Pull complete
Digest: sha256:480a8d63af5057f7d81437dc138da941998657779b6c0150fd5e595b6ff72c71
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/fastgpt/one-api:v0.6.6
Creating pg ... done
Creating mongo ... done
Creating sandbox ... done
Creating mysql ... done
如上所示,分别拉取了pgvector、mongo、fastgpt-sandbox、fastgpt、mysql、one-api 镜像。
通过 docker ps 查看当前运行的镜像,如下所示。
root@flexusx-7305:~/fastgpt# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
68a1f9a73e58 registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:v4.8.9 "sh -c 'node --max-o…" 22 hours ago Up 22 hours 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp fastgpt
b57af8cd1b6b registry.cn-hangzhou.aliyuncs.com/fastgpt/one-api:v0.6.6 "/one-api" 22 hours ago Up 22 hours 0.0.0.0:3001->3000/tcp, [::]:3001->3000/tcp oneapi
2de37c379c6a registry.cn-hangzhou.aliyuncs.com/fastgpt/mysql:8.0.36 "docker-entrypoint.s…" 22 hours ago Up 22 hours 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql
9d7906452f26 registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt-sandbox:latest "docker-entrypoint.s…" 22 hours ago Up 22 hours sandbox
6f9c7f088d9d registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 "bash -c 'openssl ra…" 22 hours ago Up 22 hours 0.0.0.0:27017->27017/tcp, :::27017->27017/tcp mongo
3867cf7f6df9 registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.7.0 "docker-entrypoint.s…" 22 hours ago Up 22 hours 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp pg
89bb9f7a3dd1 swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/justsong/one-api:v0.6.0 "/one-api" 2 days ago Up 23 hours 0.0.0.0:3002->3000/tcp, [::]:3002->3000/tcp one-api
65fe1c102df6 daocloud.io/library/mysql:8 "docker-entrypoint.s…" 4 days ago Up 23 hours 3306/tcp, 33060/tcp root_db_1
root@flexusx-7305:~/fastgpt#
三、FastGPT 运行
3.1 登录 FastGPT
在浏览器中访问 http://服务器IP:3000,FastGPT界面如下所示。
默认用户是 root,密码是 1234,登录后如下所示。
3.2 知识库
点击知识库,右上角点击新建,如下所示。
然后填写知识库名称,创建完成,知识库如下所示。
然后,可以点击新建/导入按钮导入文档。
3.3 应用
点击工作台,点击右上角新建,如下所示。
输入名称,创建应用完成,如下所示。
可以在 AI 配置中选择模型,填写提示词,关联知识库,知识库可以选择 3.2 知识库中创建的,如下所示。
配置完大模型后可以在右侧聊天窗口开启聊天。
四、总结
通过本篇文章,使用 Flexus云服务器X实例 实例部署 FastGPT,整个过程非常顺利,包括:下载配置文件、拉取镜像、启动容器、远程访问 FastGPT等,而且 Flexus云服务器X实例 具有高安全性,开放端口需要配置对应的规则,可以保障 FastGPT 的安全运行,有需要的小伙伴赶紧用起来吧!
相关文章:

828华为云征文 | 云服务器Flexus X实例:RAG 开源项目 FastGPT 部署,玩转大模型
目录 一、FastGPT 简介 二、FastGPT 部署 2.1 下载启动文件 2.2 开放端口权限 2.3 启动 FastGPT 三、FastGPT 运行 3.1 登录 FastGPT 3.2 知识库 3.3 应用 四、总结 本篇文章主要通过 Flexus云服务器X实例 部署 RAG 开源项目 FastGPT,通过 FastGPT 可以使…...

MySQL之基本查询(一)(insert || select)
目录 一、表的增删查改 二、表的增加insert 三、表的读取select where 条件子句 结果排序 筛选分页结果 一、表的增删查改 我们平时在使用数据库的时候,最重要的就是需要对数据库进行各种操作。而我们对数据库的操作一般来说也就是四个操作,CRUD :…...

基于深度学习的多智能体协作
基于深度学习的多智能体协作是一种通过多个智能体相互协作完成复杂任务的框架,利用深度学习技术来优化智能体之间的合作与决策过程。多智能体系统广泛应用于自动驾驶、机器人群体、游戏AI、资源调度、无人机编队等领域,其中每个智能体通常具有自主性&…...

Nmap网络扫描器基础功能介绍
怎么快速知道网络中存在哪些设备呢?我们可以借用扫描工具Nmap来实现这个功能。 下载 Windows系统可以前往Nmap官网下载安装包。 Linux使用对应的包管理器可以直接安装,命令如下 # Debian/Ubuntu apt install nmap# RedHat/Fedora yum install nmap …...

idea 编辑器常用插件集合
SequenceDiagram 用于生成时序图的插件,支持一键生成功能。 使用:选择某个具体的方法,点击右键菜单,选择“Sequence Diagram” 便可生成相应的时序图 例子: 效果: Code Iris Code Iris可以根据代码自动…...

如何优化Java商城系统的代码结构
前言 优化Java商城系统的代码结构可以提高代码的可维护性、可读性和性能。以下是一些建议: 一、模块化设计 将系统拆分为多个模块,每个模块负责特定的功能。例如,可以将用户管理、商品管理、订单管理等功能分别放在不同的包中。 二、分层…...

两数之和、三数之和、四数之和
目录 两数之和 题目链接 题目描述 思路分析 代码实现 三数之和 题目链接 题目描述 思路分析 代码实现 四数之和 题目链接 题目描述 思路分析 代码实现 两数之和 题目链接 LCR 179. 查找总价格为目标值的两个商品 - 力扣(LeetCode) 题目…...

这几个方法轻松压缩ppt文件大小,操作起来很简单的压缩PPT方法
这几个方法轻松压缩ppt文件大小。在当今信息化迅速发展的时代,PPT已成为工作和学习中必不可少的工具。然而,随着内容的增加,文件体积常常变得庞大,影响了分享和传输的便利性。过大的文件不仅占用存储空间,还可能导致演…...

【nvm管理多版本node】下载安装以及常见问题和解决方案
nvm管理多版本node nvm 下载安装下载安装 nvm 常用命令其他常用命令 常见问题 nvm 下载安装 下载 nvm下载地址 每个版本下都有Assets,根据需要下载一个。 node下载地址 根据自己需要,可以下载可执行文件或者压缩包 安装 按提示安装即可。 安装过程中ÿ…...

C++(学习)2024.9.23
目录 运算符重载 1.概念 2.友元函数运算符重载 3.成员函数运算符重载 4.特殊运算符重载 1.赋值运算符重载 2.类型转换运算符重载 5.注意事项 std::string字符串类: 模板与容器 模板 1.函数模板 2.类模板 类内实现 类内声明类外实现 运算符重载 1.概念…...

大数据处理从零开始————3.Hadoop伪分布式和分布式搭建
1.伪分布式搭建(不会用,了解就好不需要搭建) 这里接上一节。 1.1 伪分布式集群概述 伪分布式集群就是只有⼀个服务器节点的分布式集群。在这种模式中,我们也是只需要⼀台机器。 但与本地模式不同,伪分布式采⽤了分布式…...

跟着问题学12——GRU详解
1 GRU 1. 什么是GRU GRU(Gate Recurrent Unit)是循环神经网络(Recurrent Neural Network, RNN)的一种。和LSTM(Long-Short Term Memory)一样,也是为了解决长期记忆 和反向传播中的梯度等问题…...

内核是如何接收网络包的
1、数据如何从网卡到网络协议栈 1.1内核收包的过程 1、数据帧从外部网络到达网卡 2、网卡把数据帧从自己的缓存DMA(拷贝到)和内核共有的RingBuffer上 3、网卡发出硬中断通知CPU 4、CPU响应硬中断,简单处理后发出软中断 5、k’softirqd线程处理软中断,调…...

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

【leetcode】环形链表、最长公共前缀
题目:环形链表 解法一:哈希表 创建一个哈希表,遍历链表先判断哈希表中是否含有要放入哈希表中的节点,如果该节点已在哈希表中出现那么说明该链表是环形的;如果链表节点出现nullptr那么就退出循环,该链表是…...

C#开发记录如何建立虚拟串口,进行串口通信,以及通信模板
记录时间;2024年4月 记录如何开启虚拟串口以及进行基础串口通信。 建立虚拟串口 使用的软件是vspd,建立虚拟串口之后就可以将他们当成实际物理连接的两个串口进行通信。 之后使用我们之前给出的通信模板,建立一个稍微规矩一点的界面。 界面建立 其中…...

电源设计的艺术:从底层逻辑到工程实践
在电子工程的世界里,电源设计是核心中的核心。它不仅是电子设备的能量源泉,更是整个系统稳定运行的基石。随着科技的不断进步,电源设计的要求也越来越高,从效率、稳定性到体积、成本,每一个维度都是工程师们不断追求的…...

软媒市场新探索:软文媒体自助发布,开启自助发稿新篇章
在繁华喧嚣的软媒市场中,每一个声音都在竭力呼喊,每一个品牌都在奋力展现。而软文,作为一种温柔而坚韧的营销力量,正逐渐崭露头角。特别是软文媒体自助发布平台的出现,更是为企业提供了一个全新的、高效的自助发稿渠道。 软媒市场自助发布平台,正如其名,是一个让企业能够自主发…...

【Kubernetes】常见面试题汇总(二十七)
目录 77.假设公司希望在不同的云基础架构上运行各种工作负载,从裸机到公共云。公司将如何在不同界面的存在下实现这一目标? 78.什么是 Google 容器引擎? 特别说明: 题目 1-68 属于【Kubernetes】的常规概念题。 题目 69-1…...

基于单片机巡迹避障智能小车系统
文章目录 前言资料获取设计介绍设计程序具体实现截图设计获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们…...

Python163邮箱发送:提升发送效率的技巧?
python163邮箱发送邮件教程?python怎么使用163邮箱? Python163邮箱发送作为一种自动化邮件发送方式,越来越受到开发者和企业的青睐。AokSend将探讨如何通过多种技巧提升Python163邮箱发送的效率,从而更好地满足用户需求。 Pytho…...

springboot中的异步任务
在springboot项目中可以通过EnableAsyncAsync的方式简化异步操作,下文使用springboot:3.2.1 源码分析 若一个bean中的公共方法上标注了Async,在系统启动时,会给这个类创建一个代理对象,并将该代理对象作为bean注册到spring容器中 …...

Linux学习笔记8 理解Ubuntu网络管理,做自己网络的主人
本文讲解了Ubuntu下网络由什么管理,介绍了临时ip和路由的设置方法,介绍了静态持久化网络配置的方法以及各网络管理软件之间的关系。 来看看Ubuntu网络管理。 序言 原本学习ubuntu网络管理就是为了检查nginx安装过程中使用wget获取压缩包为什么解析不出…...

理解线程的三大特性:原子性、可见性和有序性
在并发编程中,保护线程安全是一个重要课题。要实现线程安全,我们必须理解并掌握三个核心概念:原子性、可见性和有序性。下面将详细介绍这三个特性及其解决方案。 一、原子性 原子性是指一个操作要么全部完成,要么完全不执行。在多…...

英特尔®以太网网络适配器E810-CQDA1 / E810-CQDA2 网卡 规格书 e810 网卡 规格书 Intel100G E810 网卡 白皮书
英特尔以太网800系列网络适配器 英特尔以太网网络适配器E810-CQDA1 / CQDA2 在10到100Gbps的以太网速度下实现高效的工作负载优化性能 关键特性 •单、双端口QSFP28 •应用设备队列(ADQ) •PCI Express (PCIe) 4.0 x16 •动态设备个性化(DDP) •以太网端口配置工具(EPC…...

好用的idea方法分隔符插件
好用的idea方法分隔符插件...

通过 Xshell 无法连接到 Ubuntu
无法通过 Xshell 连接到 Ubuntu 服务器,通常与 SSH 服务、网络连接、主机防火墙设置问题有关。以下是排查并解决这个问题的步骤: 1. 确保 SSH 服务正在运行 在 Ubuntu 上,SSH 服务必须启动才能连接。如果你有虚拟机或物理机的访问权限&…...

Java面试篇基础部分-Synchronized关键字详解
Synchronized关键字用于对Java对象、方法、代码块等提供线程安全操作。Synchronized属于独占式的悲观锁机制,同时也是可重入锁。我们在使用Synchronized关键字的时候,可以保证同一时刻只有一个线程对该对象进行访问;也就是说它在同一个JVM中是线程安全的。 Java中的每个…...

数据结构之线性表——LeetCode:67. 二进制求和,27. 移除元素,26. 删除有序数组中的重复项
67. 二进制求和 题目描述 67. 二进制求和 给你两个二进制字符串 a 和 b ,以二进制字符串的形式返回它们的和。 运行代码(javaC) class Solution {public String addBinary(String a, String b) {StringBuilder ansnew StringBuilder();int ca0;for(i…...

SQL_HAVING小例子
例一 求众数的sql语句1: select income,count(*) as cnt from graduates group by income having count(*) > all(select count(*) from graduates group by income);这段SQL语句的作用是从一个名为graduates的表中找出income(收入)字段…...