自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Clang’s Blog

如果尚未看到成果,那是因为付出的努力还不够多,如果尚未梦想成真,那是因为等待的时间还不够久。笑到最后的人永远最精彩,最成功,最执着。

  • 博客(57)
  • 收藏
  • 关注

原创 使用 Docker 构建不同 Node 环境下的 Hexo 调试环境

隔离环境:不同 Node 版本相互独立,不会互相影响。快速切换:通过不同的 Dockerfile 和镜像,可以方便地切换测试环境。代码挂载与端口映射:方便本地代码调试,同时让 Hexo 服务对外可访问。希望本文能帮助你在多个 Node 环境下顺利调试 Hexo 博客项目。

2025-03-06 21:31:01 1146

原创 使用 LangChain 对接硅基流动(SiliconFlow)API:构建一个智能对话系统

硅基流动是一种基于大语言模型(如深度学习模型)提供自然语言处理能力的 API 服务。它支持多种类型的模型,可以通过 REST API 接口与其进行交互,进行自然语言生成、问答、文本处理等任务。LangChain 是一个用于创建与 LLM 相关应用的工具库,它提供了一些功能强大的模块,允许开发者更容易地将 LLM 集成到应用程序中。LangChain 支持任务链、记忆管理、外部 API 集成等特性,帮助开发者创建复杂的智能应用。

2025-02-13 21:02:32 3209

原创 深入理解定时器:优先队列与时间轮实现

线程池是一种管理多个线程的机制,避免了每次执行任务时创建和销毁线程的开销。线程池会预先创建一定数量的线程,并将任务提交给线程池执行。线程池中的线程会从任务队列中取出任务并执行,直到任务完成。通过使用线程池,我们能够将定时任务的执行并发化,避免每个任务都新建一个线程的性能开销。优先队列定时器适用于任务数量较少、任务到期时间不均匀的场景,能够较好地处理动态任务调度。时间轮定时器适用于任务数量较多且时间间隔均匀的场景,尤其在高并发任务调度时表现优越。

2024-12-03 17:37:11 725

原创 在Ubuntu中运行和管理AppImage

AppImage是一种将应用程序打包为单一文件的格式,旨在使Linux用户可以轻松地在不同的发行版中运行应用程序,而无需担心特定系统的依赖和安装问题。它是一种便捷的打包方式,因为所有必要的运行时依赖和资源都被包含在单个文件中,用户只需下载并赋予执行权限,即可直接运行应用程序。AppImage为Linux用户提供了一种便捷的应用分发和管理方式。它不仅让应用程序可以在不同的Linux发行版上无缝运行,还允许用户通过简单的操作进行管理。

2024-12-03 10:37:42 5777 1

原创 解决 tail: inotify 资源耗尽 错误的快速方法

遇到。

2024-11-27 10:22:34 569

原创 C++开发者必备:23种设计模式全面解析

工厂方法工厂方法模式,定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。2、抽象工厂模式抽象工厂模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。3、原型模式原型模式,用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。4、建造者模式建造者模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。5、单例模式单例模式,保证一个类仅有一个实例,并提供一个访问它的全局访问点。二、结构

2024-11-22 23:05:09 3158

原创 Java开发者必备:23种设计模式全面解析

简单工厂模式虽然也能解决这个问题,但这个模式只是解决对象的创建问题,而且由于工厂本身包括了所有的收费方式,商场是可能经常性地更改打折额度和返利额度,每次维护或扩展收费方式都要改动这个工厂。命令模式,将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以 及支持可撤销的操作。解释器模式,给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。建造者模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。

2024-11-21 16:16:46 1540

原创 如何解决 ModuleNotFoundError 和 No module named 错误:使用 pip install --ignore-installed 强制安装 Pandas 和 Numpy

通过使用选项,我们可以强制覆盖系统中已安装的 Pandas 和 Numpy 版本,解决由于安装损坏或版本不兼容导致的错误。推荐在虚拟环境中管理依赖,以便更好地隔离和控制每个项目的库版本。希望本文提供的解决方案能帮助你解决安装和导入 Pandas 或 Numpy 时遇到的问题。

2024-11-20 16:40:18 1375

原创 Python多进程编程与进程间通信

Python的多进程编程是通过multiprocessing模块来实现的,利用多进程可以有效地提高程序的运行效率。进程间的通信是一个非常重要的问题,Python提供了队列、管道和共享内存等方法来实现进程间的通信。每种方法都有其优缺点,选择哪种方法取决于具体的需求。

2024-11-08 14:29:20 466

原创 在 FastAPI 的 @app.on_event(“startup“) 中启动后台线程

在 FastAPI 中启动后台线程,可以帮助我们实现一些自动化或定时操作,确保在应用启动时即开始执行这些任务。选择适合的方式可以使后台任务更加高效,同时减少对主线程的影响,从而提升应用的响应速度。希望本文帮助大家理解在 FastAPI 中启动后台线程的不同方法。

2024-11-08 09:59:30 1410

原创 使用 asyncio.run_coroutine_threadsafe 在 Python 中处理异步操作

在现代 Python 开发中,异步编程已经成为一种常见的模式。尤其是在处理 I/O 密集型操作(如网络请求或文件读写)时,异步编程能够显著提高程序的性能。本文将介绍如何使用 方法来在多线程环境中安全地调度异步操作。 是 库中的一个实用函数,它允许在与事件循环不在同一线程的情况下安全地调度异步协程。这对于在多线程程序中使用异步操作非常重要,因为直接从非事件循环线程调用协程会导致错误。想象一个场景,你有一个主线程在运行一个 ROS 节点,它需要处理来自外部线程的请求。这时,你可能希望在 ROS 节点的事件循

2024-11-04 15:15:16 848

原创 修改 CentOS 7.9 YUM 源的详细指南

替换 CentOS 7.9 的 YUM 源是提高软件包下载速度和稳定性的常见方法。通过备份现有源文件,下载新的源文件,并更新 YUM 缓存,你可以轻松切换到更合适的镜像源。本文介绍了如何将 YUM 源替换为阿里云的镜像源,操作简单且安全,适合绝大多数用户使用。

2024-08-08 17:55:00 5445

原创 如何在不同电脑之间导出和导入 Docker 镜像

在开发和部署过程中,你可能会遇到需要将 Docker 镜像从一台电脑导出并导入到另一台电脑的情况。无论是为了分享镜像,还是为了在不同环境中进行测试,Docker 都提供了方便的工具来实现这一需求。通过以上步骤,你可以轻松地将 Docker 镜像从一台电脑导出并导入到另一台电脑。接下来,需要将生成的 tar 文件从源电脑传输到目标电脑。这条命令会从指定的 tar 文件中加载镜像,并将其添加到本地 Docker 镜像库中。命令将 Docker 镜像从一台电脑传输到另一台电脑。的文件,该文件包含了。

2024-08-05 16:55:16 1168 1

原创 解决Ubuntu下QT编译失败::-1: error: cannot find -lGL

这个错误通常意味着你的系统缺少一些必要的库文件,特别是 OpenGL 库。

2024-07-23 11:12:22 854

原创 使用GeographicLib在C++中进行地理坐标转换

通过上述步骤,你可以在你的C++项目中轻松使用GeographicLib进行地理坐标转换。GeographicLib提供了简单且高效的方法来处理经纬度与局部直角坐标系之间的转换,为地理信息处理提供了便利。在实际应用中,可以根据需要进行更复杂的坐标转换和计算,满足不同场景下的需求。

2024-07-12 14:41:59 1266

原创 在Ubuntu上创建和启用交换文件的简单步骤

在Linux系统中,交换空间是一种将内存数据临时存储在磁盘上的机制,用于缓解内存不足的情况。本文将介绍如何在Ubuntu系统上创建和启用一个12GB的交换文件。通过以上简单步骤,你已经成功在Ubuntu系统上创建并启用了一个12GB的交换文件。你可以在不重新分区的情况下轻松调整交换空间的大小。为了确保系统安全,我们需要将交换文件的权限设置为只有root用户可以读取和写入。首先,我们需要在文件系统上创建一个12GB的交换文件。现在,我们需要将这个文件格式化为交换空间。接下来,启用这个交换文件,使其立即生效。

2024-07-03 18:21:48 721

原创 ROS中C++、Python完整的目录结构

该目录包含启动文件(.launch文件),用于启动ROS节点、配置参数等。:该目录包含启动文件(.launch文件),用于启动ROS节点、配置参数等。:该目录包含定义ROS服务类型的文件(.srv文件),用于描述服务的请求和响应数据类型。:该目录包含定义ROS服务类型的文件(.srv文件),用于描述服务的请求和响应数据类型。:该目录包含定义ROS消息类型的文件(.msg文件),用于描述消息的数据结构。:该目录包含定义ROS消息类型的文件(.msg文件),用于描述消息的数据结构。

2024-06-22 10:16:10 1035

原创 安装和使用nvm安装Nodejs

通过使用 nvm 安装和管理 Node.js 版本,您可以避免与系统库版本冲突的问题,并在需要时轻松切换和管理不同版本的 Node.js。这对于开发和维护 Node.js 项目尤其有用。安装 nvm 后,您需要重新加载终端配置文件以使 nvm 生效。确保使用安装的 Node.js 版本来运行您的应用程序或执行其他 Node.js 命令。首先,您需要安装 nvm。使用 nvm 安装所需的 Node.js 版本。替换为您需要的具体版本号,例如。

2024-06-22 09:45:16 760

原创 DELL服务器插入新磁盘、创建虚拟磁盘、挂载磁盘步骤

分区磁盘 sudo fdisk /dev/sdb # 格式化分区 sudo mkfs.ext4 /dev/sdb1 # 创建挂载点 sudo mkdir /mnt/newdisk # 挂载分区 sudo mount /dev/sdb1 /mnt/newdisk # 编辑 fstab 以实现持久挂载 sudo nano /etc/fstab这样就可以将新磁盘(sdb)挂载到,并且每次重启后它都会自动挂载在那里。

2024-06-15 12:13:19 5760

原创 跨机器ROS服务调用:在不同包名下实现分布式服务端和客户端节点

创建一个名为的包,并在srv目录下创建一个名为int64 aint64 b---int64 sum确保在和中正确配置,以便生成服务代码。rospystd_msgsFILESstd_msgs

2024-06-06 10:59:49 851

原创 使用国内源加速pip安装包

中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/清华:https://pypi.tuna.tsinghua.edu.cn/simple。阿里云:http://mirrors.aliyun.com/pypi/simple/华中理工大学:http://pypi.hustunique.com/山东理工大学:http://pypi.sdutlinux.org/豆瓣:http://pypi.douban.com/simple/

2024-06-04 11:41:46 239

原创 Docker Hub 镜像加速器

国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务。以下镜像站来源于互联网,可能出现宕机、转内网、关停等情况,建议同时配置多个镜像源。⚠️ 部分网友反馈以下镜像站存在未同步最新源镜像问题,请按需选用。统计所花费的总时间。测速前先移除本地的镜像!,如果从结果中看到了如下内容,说明配置成功。使用镜像前后,可使用。

2024-06-04 11:33:17 3555 2

原创 理解矩阵内积与矩阵乘法的区别及其应用

计算方式逐元素乘积(内积):对应位置的元素相乘。矩阵乘法:行和列的点积,遵循线性代数规则。尺寸要求逐元素乘积(内积):两个矩阵必须具有相同的尺寸。矩阵乘法:第一个矩阵的列数必须等于第二个矩阵的行数。结果矩阵的尺寸逐元素乘积(内积):结果矩阵的尺寸与操作数矩阵相同。矩阵乘法:结果矩阵的尺寸为第一个矩阵的行数和第二个矩阵的列数。

2024-05-26 18:39:46 3725

原创 CentOS 7.9安装NVIDIA P40显卡驱动、CUDA和cuDNN

至此显卡驱动、CUDA和cuDNN就安装完成了,安装过程中主要是禁用开源显卡驱动和操作系统内核版本的匹配安装。

2024-05-25 17:52:48 3934 2

原创 机器学习数据预处理详解:标准化、填充缺失值及编码离散特征

本文将通过具体示例,详细解释数据预处理的关键步骤,包括标准化数值特征、填充缺失值以及编码离散特征。通过这些步骤,我们成功地对训练和测试数据集的特征进行了标准化、缺失值处理和独热编码,使其准备好用于后续的模型训练和预测。将离散特征(分类特征)进行独热编码(one-hot encoding),包括缺失值(dummy_na=True)。确定数值型特征的列,然后对这些特征进行标准化处理,使每个数值特征的均值为0,标准差为1。首先,将训练和测试数据集的特征(不包括标签列。将数值型特征中的缺失值(NaN)填充为0。

2024-05-25 08:05:54 1034

原创 使用 PyTorch 和 Pandas 进行 Kaggle 房价预测

通过上述步骤,我们成功地使用 PyTorch 和 Pandas 实现了一个简单的线性回归模型,用于 Kaggle 房价预测任务。这篇博文涵盖了数据下载、预处理、模型构建、训练、验证及预测的全过程,为类似任务提供了一个完整的参考。在本篇博文中,我们将探索如何使用 PyTorch 和 Pandas 库,构建一个用于 Kaggle 房价预测的模型。然后,我们合并所有特征以进行统一预处理,并标准化数值特征,填充缺失值为0,处理离散数值特征。我们定义了最终的训练和预测函数,并训练模型生成预测结果。

2024-05-25 08:02:15 831

翻译 Spring中REST API实现异常处理机制的几种方法

本文将说明如何使用Spring为REST API实现异常处理。我们还将简要介绍历史背景,并查看不同版本引入的异常处理选项。在Spring 3.2之前,在Spring MVC应用程序中处理异常的两种主要方法是HandlerExceptionResolver或@ExceptionHandler注释。两者都有一些明显的缺点。从3.2开始,我们引入了@ControllerAdvice注释,以解决前两个解决方案的局限性,并在整个应用程序中促进统一的异常处理。

2024-05-25 07:48:21 165

原创 CentOS7解决This file requires compiler and library support for the ISO C++ 2011 standard错误

您可以通过安装更新的 GCC 版本来解决这个问题。CentOS 7 提供了一个名为 devtoolset 的 SCL,它包含了较新版本的编译器。您可以尝试升级您的编译器以支持 C++11 标准。在 CentOS 7.9 上,默认安装的 GCC 版本是 4.8.5,这个版本的 GCC 对 C++11 的支持有限。在此环境中,您将能够使用较新版本的 GCC,支持更多的 C++11 特性。您可以尝试重新编译您的代码,看看是否仍然有编译错误。

2024-05-11 11:19:30 748

原创 解决Git提交失败的问题:配置user.name和user.email

在本文中,我们介绍了解决Git提交失败问题的一种常见原因,并提供了详细的解决办法。通过配置“user.name”和“user.email”,你可以确保在提交代码时Git能够正确地识别你的身份信息,顺利完成提交操作。

2024-04-30 14:06:26 9154

原创 使用 Docker 在 PyTorch 环境中训练模型

通过使用 Docker,我们可以轻松地构建和管理 PyTorch 环境,并在其中运行训练任务。这种方法可以帮助我们避免了环境配置的烦恼,提高了工作效率,同时也使得我们的代码更具可移植性和可重复性。

2024-04-29 17:30:19 2238

原创 使用WSGI服务器在生产环境中运行Flask应用程序

这段代码将使用Gevent的WSGIServer运行你的应用程序,监听IP地址127.0.0.1(本地主机)的5000端口,并在该端口上启动服务器。这段代码将使用WSGIRef的WSGIServer运行你的应用程序,监听IP地址127.0.0.1的5000端口,并在该端口上启动服务器。通过使用以上方法,你可以在生产环境中安全地运行你的Flask应用程序,而不会再收到开发服务器警告信息的干扰。在生产环境中,应该使用WSGI服务器来运行Flask应用程序,因为它们提供了更多的功能和更好的性能。

2024-04-29 15:09:58 1774 2

原创 解决在Linux上运行Python脚本出现ImportError: `CXXABI_1.3.9‘未找到的问题

通过按照这些步骤操作,您可以有效解决与在Linux系统上使用Anaconda环境中的Pandas或其他Python包相关的CXXABI版本不匹配而引起的ImportError。这个错误通常是由于所需的CXXABI版本与系统库中提供的版本不一致引起的。在这里,我们将深入探讨一种逐步解决此问题的方法。错误消息表明需要CXXABI版本1.3.9,但系统库提供的版本只到1.3.7。替换为您实际的Anaconda安装的库目录路径。替换为您实际的Anaconda安装的库目录路径。**注意:**记住将。

2024-04-26 09:57:46 1185

原创 理解和构建用于MNIST分类的卷积神经网络

现在是核心部分 - 定义我们的CNN架构。我们将为数字分类创建一个简单而有效的网络。

2024-04-22 22:58:52 585

原创 ubuntu20.04安装ros noetic

这里,我选择了中科大(https://mirrors.ustc.edu.cn/ubuntu/)。把鼠标放在第三步的界面上,然后通过上下左右方向键就可以控制小海龟的移动了。这一步非常重要,决定着后面安装ROS能否成功的关键一步。至此,ros已经安装完成了。

2024-04-01 22:47:42 1637

原创 ros1 简单节点demo(Python)

好的,下面是一个Python版本的简单节点

2024-04-01 22:43:56 531

原创 ros1 简单节点demo(C++)

下面是一个简单的 ROS 1 demo,包括创建一个 Catkin 工作空间、创建一个 ROS 节点以发布一个字符串消息到一个话题上,并创建一个订阅器来接收并打印这个消息。您将会看到一个发布者不断地发布 “hello world” 消息,并且一个订阅器接收并打印这些消息。现在,您已经成功创建了一个简单的 ROS 节点和订阅器的 demo。

2024-04-01 22:42:54 971

原创 JetBrains远程开发报错解决:Failed to exec spawn helper: pid: 18310, exit value: 1解决

JetBrains远程开发报错:Failed to exec spawn helper: pid: 18310, exit value: 1。在后面添加 -Djdk.lang.Process.launchMechanism=vfork。JetBrains远程开发如果遇到以上问题,修改下面路径文件。保存,重新打开 idea 就可以正常运行了。

2024-04-01 22:37:54 672

原创 Linux平台利用Ollama和Open WebUI部署大模型

在当今的人工智能领域,部署大型深度学习模型是一个挑战,尤其是对于那些不熟悉复杂技术栈的用户而言。然而,随着开源技术的不断发展,出现了一些强大的工具,如 Ollama 和 Open-webui,使得部署大型模型变得更加简单和高效。Ollama 是一个功能强大的开源平台,专门用于部署深度学习模型。与此同时,Open WebUI 是一个开源的 Web 用户界面工具,为用户提供了友好的界面来与 Ollama 平台进行交互。

2024-03-23 12:23:38 11155 2

原创 Windows搭建OpenCV开发环境(Python)

点击下面红框中的下拉,点击Add Local Interpreter。进入PyCharm中Settings。按照如下所示进行配置。

2023-06-27 22:09:19 15582

原创 MacOS搭建OpenCV开发环境(Python)

点击下面红框中的下拉,点击Add Local Interpreter。进入PyCharm中Preferences。按照如下所示进行配置。

2023-06-27 21:41:46 17205 1

Windows OpenCV编译后的库文件

Windows OpenCV编译后的库文件

2023-06-14

OpenCV、cmake-3.26.4-windows-x86-64、mingw-x86-64

OpenCV、cmake-3.26.4-windows-x86-64、mingw-x86-64

2023-06-13

elasticsearch-7.3.2、kibana-7.3.2、ik-7.3.2、jdk11

elasticsearch-7.3.2、kibana-7.3.2、ik-7.3.2、jdk11

2023-04-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除