自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

哈哈哈哈哈哈哈

哈哈哈哈哈哈哈

  • 博客(340)
  • 资源 (16)
  • 问答 (1)
  • 收藏
  • 关注

原创 使用tantivy构建日志库

本文介绍了使用Rust实现的全文检索引擎tantivy来构建日志存储和检索系统的方法。主要内容包括:1) 添加tantivy和中文分词依赖;2) 定义日志数据结构;3) 创建索引Schema并构建索引;4) 批量添加日志数据;5) 实现日志搜索功能,支持时间范围和关键词查询。文章重点讲解了如何配置中文分词器、定义字段类型以及实现高效的日志检索功能,为构建嵌入式日志系统提供了实用解决方案。

2025-11-22 11:25:36 311

原创 Rust基础:静态变量和常量

Rust中的常量与静态变量提供了不同的全局数据管理方式。常量使用const定义,必须在编译时确定值且不可修改;静态变量使用static定义,生命周期持续到进程结束,支持延迟初始化。新版Rust通过LazyLock、OnceCell和OnceLock简化了静态变量初始化,其中OnceCell适合单线程,OnceLock支持多线程。可变静态变量需使用unsafe或原子类型/锁机制确保线程安全。这些特性为Rust程序提供了灵活的全局状态管理方案。

2025-11-12 17:21:34 265

原创 Rust真的适合写业务后端吗?

本文分享了使用Rust开发知识库后端的实践经验。通过2万行Rust代码的实战案例,作者发现Rust虽以难度著称,但在业务开发中表现优异:无null设计和Result模式提升代码质量,所有权系统促进合理设计,而生命周期问题实际出现频率较低。性能测试显示Rust比Java快3倍,可显著降低服务器成本。尽管缺少Spring Boot这类集成框架,但Rust生态已覆盖常见功能需求。作者建议新系统可考虑采用Rust,其编译优化和异步处理能力能为后端服务带来显著性能提升,同时指出Rust生态正在快速完善。

2025-11-01 13:10:40 1409 1

原创 OpenRaft简介以及在配置中心中的应用

OpenRaft是一个Rust实现的Raft协议框架,简化了分布式系统中的数据同步。它通过封装日志同步、选举等底层细节,开发者只需定义请求/响应类型、实现日志存储和状态机等组件即可构建Raft集群。文章以配置中心Conreg为例,展示了如何用OpenRaft处理配置变更(如增删改查),通过HTTP实现节点通信,并提供了性能测试数据(如配置写入1.3k/s)。OpenRaft支持单节点模式,便于开发环境切换。项目已开源,适合需要强一致性的分布式系统。

2025-10-26 11:50:04 559

原创 Rust基础:DashMap的死锁问题及解决办法

《DashMap并发安全容器中的死锁问题及解决方法》 摘要: Rust中的DashMap是一个并发安全的HashMap替代方案,采用分段锁设计提高性能。但在使用中容易出现死锁问题,主要表现为在持有读锁时尝试获取写锁。文章通过代码示例展示了典型死锁场景:当读取操作返回的Ref(包含RwLockReadGuard)未释放时,后续插入操作会因等待写锁而阻塞。解决方法包括:1)通过大括号明确限制读锁作用域;2)主动调用drop释放锁。类似问题也存在于标准库的RwLock中。核心原则是避免在持有读锁时请求写锁,并尽量

2025-10-18 14:34:56 323

原创 rust-embed:嵌入静态资源

rust-embed可将前端资源嵌入Rust后端可执行文件。在Cargo.toml中添加依赖后,通过#[derive(Embed)]指定资源目录。配合Rocket框架定义路由端点,处理静态资源请求:优先返回匹配文件,未找到时返回index.html以支持SPA路由。注意设置低优先级路由、正确返回Content-Type,并建议仅在release模式启用该功能。开发时可跳过嵌入以支持前端热更新。

2025-10-13 13:05:35 247

原创 Rust基础:使用From和Into做类型转化

Rust中的From和Into是用于类型转换的核心Trait。From定义从源类型到目标类型的转换(通过from方法),而Into是其反向操作(通过into方法)。实现From会自动获得Into,通常优先实现From。对于可能失败的转换,可使用TryFrom和TryInto。这些Trait统一了Rust的类型转换方式,使代码更清晰简洁。

2025-10-13 13:00:10 405

原创 Rust基础:变量与类型推断

Rust变量基础与实践要点: 变量默认不可变,需加mut才可变 支持变量遮蔽(同名覆盖),但原变量仍在内存中 强类型,多数情况可自动推断类型 泛型场景需显式指定类型 最佳实践: 优先不可变变量 及时清理无用变量 限制变量作用域 优先类型推断而非显式声明 (共140字,包含核心概念和实践建议)

2025-10-12 18:51:40 37

原创 使用rust-embed嵌入多个可执行程序

本文介绍了如何使用Rust的rust-embed库将多个可执行程序嵌入到主程序中,实现单机运行多个服务。通过将子程序二进制文件放入bin目录,使用EmbedApp结构体管理子进程的启动和清理,既保持了服务间的隔离性,又简化了部署。该方案适用于需要多节点部署也能单机运行的场景,但会增加程序包体积和启动时间。文章还比较了嵌入可执行程序与作为依赖库的优缺点,并提供了完整的实现代码。

2025-10-11 13:21:45 763

原创 开源一个本地AI知识库

小飞树知识库是一个基于Tauri开发的本地化知识管理工具,支持多种文件格式(MD/TXT/Office/PDF等)导入和OCR识别。内置向量库、主流AI模型(Qwen3系列)及兼容OpenAI的工具链,具备AI记忆功能且数据本地加密存储。目前提供Windows版本,其他平台需自行编译。项目开源,支持本地运行而不依赖云端服务。

2025-10-08 21:02:29 379

原创 【Rust】一个从Modelscope下载模型CLI工具

摘要:Modelscope是一个用于从Modelscope平台下载模型的CLI工具,支持多线程下载、断点续传和进度条显示。适用于Windows、macOS和Linux系统,可通过Cargo安装或下载预编译包。使用方式为modelscope -m <模型ID> -s <保存目录>,也可作为库集成到Rust项目中。该工具提供简单易用的模型下载功能,支持自定义保存路径和异步操作。

2025-09-13 17:48:19 208

原创 使用Rust实现服务配置/注册中心

Conreg 是用 Rust 实现的配置与注册中心,参考 Nacos 设计,支持 Linux 各发行版。提供配置管理(增删改查、历史记录)和服务注册功能,采用 Raft 保证集群数据一致性。支持单机和集群部署,提供 Web UI 和管理工具。性能测试显示配置写入达 1.3k/s,读取达 52k/s(启用缓存)。客户端 SDK 支持配置获取和服务注册发现。项目处于开发阶段,部分功能如配置导入导出、服务发现等尚未完成。

2025-09-11 14:55:16 956

原创 【OneAI】大模型兼容与转发

这是一个国内直连的LLM转发接口服务,无需代理即可使用。目前已支持包括GPT-5系列、GPT-4.1系列、GPT-4o系列、Google Gemini 2.5系列、Anthropic Claude系列以及GPT-OSS-120b等15种主流大模型。该服务基于AI网关实现,访问地址为https://modelproxy.coderbox.cn/,开发者可便捷地调用各类大模型API。项目作者表示欢迎有需要的小伙伴使用这项服务。

2025-08-27 18:20:26 370

原创 【OneAI】使用Rust构建的轻量AI网关

LLM网关提供统一的大模型API入口,兼容OpenAI规范,支持10+提供商和50+模型。功能包括自动负载均衡、限流、IP/Token用量限制,支持钉钉/飞书/企微预警,可设置代理。支持Windows/Ubuntu/macOS/CentOS等系统及边缘设备部署。体验地址:https://oneai.coderbox.cn

2025-08-20 18:42:28 349

原创 【OneAPI】网页搜索API和网页正文提取API

OneAPI新增网页搜索和网页正文提取两大功能接口。网页搜索接口支持关键词检索,可返回网页标题、链接及概要信息。网页正文提取接口提供三种提取方式(算法/AI/混合),支持静态/动态网页,结果转为markdown格式。两个接口均采用Rust实现,支持本地部署和永久授权,通过AccessToken认证,不设调用频率限制。开发者可通过文档链接获取详细接口参数和使用说明。

2025-08-01 23:19:04 725

原创 我们使用Rust开发的AI知识库应用

本文介绍了两个基于Rust开发的AI知识库应用:面向企业的飞树智库和个人知识管理工具小飞树。作者分享了使用Rust进行全栈开发(后端、客户端、模型部署)的体验,认为Rust虽然生态系统不如Java完善,但其特性(如Option类型、所有权机制)能有效避免常见问题,且编译体积小、并发性能好。特别指出Rust在AI模型部署上的优势,如跨平台、无需环境依赖。文章还讨论了Rust的学习曲线,并推荐了相关学习资源和使用到的核心库。整体展示了Rust在企业应用和AI场景中的实用价值。

2025-07-29 11:59:38 841 3

原创 DAG在AI工作流中的应用

我们通过Rust构建的AI知识库系统,集成了MCP、工作流以及即将实现的多Agent,正在面向企业提供试用,我们将致力于打造一个安全可靠的知识库平台,为企业降本增效。

2025-07-10 09:00:00 899

原创 【飞树智库】 内置MCP工具更新:支持显示图片结果

MCP服务工具http-api-call迎来新版本更新,主要包含四大改进:支持配置任意接口地址作为MCP工具、对话结果新增图片展示功能、UI界面优化以及已知bug修复。该工具可将MCP调用转化为接口调用,实现与大模型的无缝集成,适用于订单查询、物流跟踪等场景。更新还提供了Deepseek调用MCP的网页截图示例。该服务由飞树智库(一个基于Rust开发的企业级智能知识库平台)提供,旨在帮助企业构建高效安全的知识管理系统。

2025-05-30 11:40:59 510

原创 近期知识库开发过程中遇到的一些问题

本文记录了Rust开发知识库系统过程中遇到的问题及解决方法。在Docker中使用headless_chrome时出现连接错误,发现是因最小化Ubuntu镜像缺少/usr/lib/x86_64-linux-gnu/nss下的依赖文件;在集成LibreOffice时,通过本地安装并拷贝缺失so文件解决转换问题;针对知识库上下文不连贯问题,采用链式存储和双向链表扩展查询范围的方法优化。这些问题主要涉及依赖管理和数据存储结构的改进。(148字)

2025-05-30 11:23:23 516

原创 通过MCP让LLM调用系统接口

为了增强大型语言模型(LLM)的功能并使其能够调用现有系统的内部API,我们开发了一个名为http-api-call的MCP Server。该服务器通过标准的MCP协议,重写了call_tool和list_tool两个关键功能。call_tool负责将请求信息转发给系统的后端接口,而list_tool则用于查询和返回可用的API列表。通过这种方式,我们将工具列表封装为tool_message,使模型能够自动选择并调用合适的API。这一实现方案不仅简化了模型与内部系统的交互,还以最小的成本实现了数据的获取和功

2025-05-14 23:01:35 1009

原创 使用Rust开发的智能助手系统,支持多模型、知识库和MCP

我们使用Rust开发了一款AI助手系统,具备多模型支持、权限管理、私有化部署等功能。系统支持多种文件格式的知识库构建,提供精准搜索和自然语言处理能力,适用于企业知识库、智能客服等场景。Rust语言确保了系统的高性能和低资源占用,安装简便,无需复杂配置。目前,我们正快速开发推广,首家接入企业可免费使用并享受部署服务。

2025-05-14 14:35:01 1029

原创 【MRAG】使用RAG技术增强AI回复的实时性和准确性

我们用2周时间,使用Rust+Python开发了这个名为MRAG的知识库系统。体验地址:[https://mrag.coderbox.cn/](https://mrag.coderbox.cn/)支持私有化部署。

2025-04-20 10:04:52 1368

原创 【Rust基础】使用Rocket从Token中提取用户信息

Rocket没有像Spring那样提供了ContextHolder来直接获取当前请求对象,我们目前也不能直接通过一个静态工具类来获取请求对象,因为它是基于协程而不是线程的,所以我们只能通过接口中从request中提取需要的数据,作为函数参数传递下去。对于一些连接池,我们需要在系统即将关闭的时候释放某些连接,或者等待未处理完成的数据处理完成后再关闭,Rocket提供了一个Fairing trait,可以attach自定义的Fairing来监听shutdown事件,从而实现释放资源。以上,我们定义了一个。

2025-04-20 10:02:51 329

原创 【Rust基础】使用Rocket构建基于SSE的流式回复

使用Rust写这些业务代码的速度,终归是没有Java快,一些常用的库,没有Java系列封装的简单易用,不过应用占用资源确实比Java小很多。tokio:异步运行环境,以及mpsc的channel,dashmap:支持并发的hashmap,但是使用不当容易造成死锁。

2025-04-17 16:10:01 637

原创 【Rust基础】crossbeam带来的阻塞问题

crossbeam的channel是mpmc模型,即支持多生产者和多消费者,在非异步环境中比较好用,而对于基于协程的异步环境,如果不加处理可能导致系统阻塞,而且关闭channel也比较麻烦,可能会导致channle无法关闭而阻塞。因此,crossbeam的channel其实更适合逻辑简单且需要高频传递消息的场景。tokio的channel是mpsc模型,即多生产者单消费者,比较适合做SSE推送,也更适合在异步环境中使用。

2025-04-17 15:07:52 379

原创 【Rust基础】使用LanceDB构建高性能以图搜图服务

搜索支持向量搜索,查找相似图片支持通过item_id搜索精确搜索数据管理支持添加数据、批量导入CSV或JSON数据支持已有数据修改、删除API提供HTTP接口高性能检索性能:基于LanceDB,千万级数据,非向量查询毫秒级别相应,向量查询秒级响应。启动速度:毫秒级启动时间安全稳定使用Rust开发,保证稳定运行,并且仅占用少量资源,可在廉价服务器上部署运行简单易用通过Yaml配置文件管理库表,提供可视化查询及数据管理界面,适合快速搭建搜图服务。

2025-03-28 18:50:10 436

原创 【Rust基础】使用Rust和WASM开发的图片压缩工具

使用rust+wasm开发了一个简易版的图片压缩工具,支持JPG、PNG、GIF、WEBP等图片格式,不限制大小,无需上传图片,完全在浏览器中执行。同样的进行量化,并重新将rgba颜色(如果原图是rgba)调整为8位索引颜色,最后对图片重新编码。提取原图帧后进行量化压缩,帧率和原图保持一致,最后重新编码图片。对原图进行量化,通过指定质量参数,控制压缩质量。安装wasm-pack。暴露出接口给js调用。

2025-03-20 20:48:58 572

原创 【Rust基础】排序和分组

【代码】【Rust基础】排序和分组。

2025-03-16 15:21:49 468

原创 【Rust交叉编译】在x86_64架构下交叉编译aarch64-linux-musl版的rust-opencv

在x86_64架构的Ubuntu系统上,纯静态编译aarch64平台的rust-opencv,以方便在嵌入式设备上移植。系统:Ubuntu 24.04,架构:x86_64,可使用WSL,或者Docker,本次使用Docker。

2025-03-15 19:24:33 804

原创 【Rust基础】Rust后端开发常用库

使用Rust有一段时间了,期间尝试过使用Rust做后端开发、命令行工具开发,以及做端侧模型部署,也尝试过交叉编译、FFI调用等,也算是基本入门了。在用Rust做后端接口开发时,常常会找不到一些合适库,而这些库在Java中却很常见,于是在此汇总一下后Rust后端开发中常用的一些库。

2025-03-13 14:24:54 824

原创 【OneAPI】网页截图API-V2

生成指定URL的网页截图或缩略图。网页截图V2版本新增全屏截图、带壳截图等功能,并修复了一些已知问题。全屏截图:支持全屏截图,通过设置来支持全屏截图。全屏模式下,系统将自动获取网页最大高度后截图,此时height参数将无效(width不受影响)。带壳截图:我们内置了5中设备外壳模板供您选择,以便将截图嵌入到设备模型中,获得更好的视觉效果。当使用带壳截图时,不支持设置宽度和高度。

2025-03-09 23:24:59 1015

原创 【OpenAPI】票证图像检测和矫正

检测一张图片中是否存在票证(发票、银行卡、证件等),如果存在则返回置信度、边界框以及提取出的票证图像。

2025-03-05 09:41:52 391

原创 【OneAPI】通过网页预渲染让搜索引擎收录网页

网页预渲染,适用于动态网页以及单页面的SEO,支持网页缓存。您无须更改代码即可让搜索引擎收录您的网页。只要将需要预渲染的页面转发的本接口即可。#您的网站#转发到预渲染服务#以下是搜索引擎判断条件,您可以更改这些条件,满足条件时将会被转发到预渲染服务url=$urlcache=5m&AccessToken=您的访问凭证;

2025-02-09 13:08:11 665

原创 【Rust笔记】poem统一响应结果

开发后端接口时,往往需要返回一致的响应格式给前端,在Poem中,通过实现。来返回统一的JSON格式响应。

2025-01-20 21:38:47 298 1

原创 【OneAPI】提取网页链接

提取一个网页中的链接,包括图片、音频和视频等。

2025-01-03 15:41:10 477

原创 onnx-runner:使用ORT运行YOLO的ONNX模型

首先检查CUDA环境变量是否已配置,然后检查CUDNN依赖库是否已复制到CUDA目录。注意CUDA和CUDNN的版本。目前仅支持 CUDA12.x 和 CUDNN9.x。压缩包中已经包含运行 ONNX 和 OpenCV 所需的依赖项。您不需要下载任何其他依赖项。目前仅支持Nvidia GPU。您需要在设备上安装CUDA 12.x +和cudnn 9.x +。目前仅支持 YOLO 模型,未来可能会支持其他 ONNX 模型。,然后将onnx-runner添加到您的项目中。运行 ONNX 模型。

2024-11-05 15:54:30 951

原创 【Rust笔记】Rocket实现自定义的Responder

在Java项目中,我们通常会将响应包装一层来实现统一响应格式,在Rocket中,我们也可以通过实现Responder来返回统一的响应。

2024-10-29 22:43:39 676

原创 【Rust基础】创建第一个Rust项目

Rust开发可以选用VsCode或者RustRover,对于习惯了Jetbrains的产品的同学来说,RustRover可能用的更顺手些。选择"File" - “new” - “Project”,选择项目路径即可创建Rust项目。默认编译是按照debug模式来编译的,debug模式不会做太多优化,可以通过添加。Rust安装完成后,Cargo也将被安装。,当需要创建一个lib项目时,可 指定类型为。创建时,默认是创建的二进制项目,等同于。bin类型:即可运行的程序,可以通过。:Rust的包管理配置文件。

2024-10-27 15:14:35 1418

原创 Spring Cloud Gateway动态路由及路由插件实现方案

性能问题:Zuul基于线程隔离,一个请求需要一个线程处理,而Gateway基于事件驱动,少量线程即可支持大量并发(仅仅是并发度和吞吐量,并不能提高业务处理效率),在性能不是很好的服务器上,太多的线程数反而会降低并发度。流行度:Zuul在后期的SpringCloud版本中将不会再继续集成,所以有必要更换为Gateway。

2024-08-18 16:07:42 2208 1

原创 【OneAPI】中国行政区域省市县编码查询

支持查询中国大陆地区的行政区域,省市县乡村街道5级查询

2024-08-14 20:42:30 1862 1

OneAPI网页截图接口服务(本地化部署)

生成指定URL的网页截图或缩略图,支持全屏截图、带壳截图等功能。 支持centos、ubuntu等常用linux系统部署。 该资源需LICENSE授权后使用,下载后请在优快云主页联系作者进行LICENSE授权以及部署指导。

2025-11-08

ModelScope模型下载小工具(Windows版)

ModelScope模型下载小工具(Windows版)

2025-11-08

ModelScope模型下载小工具(MAC版)

ModelScope模型下载小工具(MAC版)

2025-11-08

小飞树知识库客户端,无需注册登录,支持主流模型及本地模型,支持离线运行,保障您的数据安全,可处理各类办公文档,集成MCP工具

小飞树知识库客户端,无需注册登录,支持主流模型及本地模型,支持离线运行,保障您的数据安全,可处理各类办公文档,集成MCP工具

2025-11-08

llvm-config.exe windows x64

windows10 x64 编译的llvm-config,使用rust版的opencv时可能需要。在官方预编译安装后添加到环境变量即可。

2024-10-27

stylegan3-动漫头像生成

stylegan3-动漫头像生成

2023-07-29

指针式仪表读数识别源代码(C#)

指针式仪表的识别,表盘定位、指针定位、读数等功能,基于C#实现

2021-11-18

渣土车识别模型文件(yolov5训练)

渣土车的模型文件,yolov5(s)训练20000张图片得到。

2021-12-15

数据结构二叉树头文件BiTree.h

数据结构二叉树头文件BiTree.h

2017-04-25

工件零件缺陷检测系统(C#)

以前做的一个缺陷检测系统,可以检测零件的缺陷,标注缺陷位置以及缺陷程度。 功能: 1. 标注缺陷位置 2. 计算缺陷比例 3. 评估是否合格 4. 动态调整检测精度 使用时,需将cvextern.dll拷贝到System32目录下

2021-12-15

SeqStack.h

数据结构栈的头文件

2017-03-19

数据结构队列头文件

数据结构队列头文件,包含队列的基本操作函数

2017-04-25

qq聊天记录分析包

分析QQ聊天记录数据,包含一下分析结果: - 消息条数 - 消息记录转化为消息实体 - 消息记录中聊天天数 - 最早的一条消息 - 最近的一条消息 - 最晚的10条记录 - 活跃时间 - 词频统计

2018-02-20

基于RFID射频识别的商品录入和管理系统(C#)

在学校时做的一个基于RFID射频识别的商品录入和管理系统,基于C#实现。 适合人群:需要对C#、串口通信、RFID等知识有一定的了解。 文件包含可执行程序以及整个项目源码,vs2019以上版本打开可直接运行。

2021-11-25

简易版计算器(C#实现)

初学C#的时候做的一个简易计算器,实现了基本的加减乘除等功能。 适合人群:C#初学者

2021-11-25

简易版的自行车速度计(C#实现)

大学单片机课程作业,基于C#和单片机计数器实现的一个速度计,可以测量车轮速度。 原理: 利用红外传感器采集两个脉冲信号的时间间隔,再通过车轮半径计算出速度。

2021-11-25

数据结构SeqList.h头文件

包含数据结构顺序表的基本操作函数(初始化,插入,删除,查找等)

2017-03-07

各个版本hadoo.dll以及winutils

各个版本hadoo.dll以及winutils(从hadoop2.6.0hadoop到3.0.0),下载后将hadooo.dll导入到windows\System32下

2019-03-29

数据结构链表头文件

包含单链表、循环单向链表和双向链表的基本操作:初始化、获取长度、插入、删除、查找、销毁等

2017-03-11

微信文章抓取

利用搜狗微信,实现对微信文章内容,作者,发布时间,公众号名称进行提取。 使用方法: WechartArticles wa = new WechartArticles(); WechartArticle w = wa.getArticle("湖北师范大学", 0, 1); System.out.println(w.getTittle()); System.out.println(w.getTime()); System.out.println(w.getAuthor()); System.out.println(w.getPublicSign()); System.out.println(w.getContent());

2017-10-14

湖师贴吧标题词频统计表

湖师贴吧标题词频统计表,包含对所有帖子标题分词并去除停用词后的词语的词频统计,共7134条记录。

2017-10-10

微信文章抓取工具

利用搜狗微信对微信文章抓取,抓取内容包括文章标题,作者发表时间,公众号名称以及文章内容

2017-10-14

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

TA关注的人

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