PaddleYOLO

GitHub
664 155 中等 1 次阅读 3天前GPL-3.0图像
AI 解读 由 AI 自动生成,仅供参考

PaddleYOLO 是一个基于百度飞桨(PaddlePaddle)深度学习框架开发的开源目标检测代码库。它专注于整合和优化 YOLO 系列算法,旨在为开发者提供一个统一、高效且易于使用的模型训练与部署平台。

在计算机视觉领域,YOLO 系列模型虽然性能卓越,但不同版本(如 YOLOv5 至 YOLO11、YOLOX 等)往往分散在不同的代码库中,导致环境配置繁琐、代码风格不一,增加了学习和迁移成本。PaddleYOLO 解决了这一痛点,它将 PP-YOLOE+、RT-DETR、YOLOv5/v6/v7/v8/v10、YOLO11 等多个主流及前沿模型集中管理,提供了标准化的接口和一致的代码结构。这意味着用户无需在不同仓库间切换,即可轻松对比和切换各种 SOTA( state-of-the-art)模型。

该工具特别适合 AI 工程师、算法研究人员以及需要快速落地视觉应用的开发者使用。无论是进行学术研究中的模型对比,还是工业场景下的实际部署,PaddleYOLO 都能提供极大便利。其技术亮点在于不仅支持常规的模型训练、验证和预测,还深度优化了模型导出功能,支持 TensorRT 加速及多种后处理模式(如去除 NMS),显著提升了推理速度。此外,它对混合精度训练和多卡分布式训练的良好支持,进一步降低了高性能模型的开发门槛,帮助用户更高效地构建高精度的目标检测系统。

使用场景

某智能制造团队负责开发产线实时缺陷检测系统,需在高速传送带上精准识别微小划痕与异色斑点,对检测速度与精度要求极高。

没有 PaddleYOLO 时

  • 模型选型困难且分散:开发者需分别去 GitHub 查找 YOLOv5、v8 或 RT-DETR 等不同作者的仓库,代码风格迥异,环境依赖冲突频繁,整合维护成本极高。
  • 训练部署流程割裂:从训练到导出 ONNX 或 TensorRT 引擎缺乏统一标准接口,每次更换模型架构都需重新编写适配脚本,导致迭代周期长达数周。
  • 性能瓶颈难以突破:通用开源模型在特定工业场景下推理速度不足,且缺乏针对百度飞桨底层优化的最新算法(如 PP-YOLOE+),难以在保证高精度的同时满足毫秒级响应需求。

使用 PaddleYOLO 后

  • 一站式模型库管理:PaddleYOLO 集成了 YOLOv5 至 YOLO11、RT-DETR 等主流及前沿模型,统一基于 PaddleDetection 架构,开发者可通过修改配置文件轻松切换模型,无需处理杂乱的外部依赖。
  • 标准化全流程闭环:利用其内置的训练、评估、预测及导出脚本,团队实现了从数据输入到 TensorRT 加速部署的一键式流水线,模型迭代周期缩短至几天内。
  • 极致性能优化落地:直接调用经过深度优化的 PP-YOLOE+ 和 RT-DETR 模型,结合混合精度训练与 TensorRT FP16 推理加速,在保持高 mAP 的同时,单帧推理耗时降低 40%,完美匹配高速产线节拍。

核心价值在于 PaddleYOLO 通过统一架构与深度优化,消除了多模型管理的碎片化痛点,让工业视觉应用能以最低成本实现最前沿的检测性能与极速部署。

运行环境要求

操作系统
  • Linux
  • Windows
GPU

需要 GPU(支持 NVIDIA CUDA 或 昇腾 Ascend 910B),具体显存和 CUDA 版本未说明,但训练建议总 batch_size 至少大于 64

内存

未说明

依赖
notesWindows 平台请安装 paddle develop 版本;推荐使用 PaddlePaddle 2.4.2 以上版本;若需导出 ONNX 需安装 paddle2onnx;若需统计 FLOPs 和 Params 需安装 paddleslim;训练自定义数据集时建议加载 COCO 预训练权重。
python>=3.7.0
paddlepaddle>=2.4.2
paddle2onnx
paddleslim
PaddleYOLO hero image

快速开始

简体中文 | English

简介

PaddleYOLO是基于PaddleDetection的YOLO系列模型库,只包含YOLO系列模型的相关代码,支持YOLOv3PP-YOLOPP-YOLOv2PP-YOLOEPP-YOLOE+RT-DETRYOLOXYOLOv5YOLOv6YOLOv7YOLOv8YOLOv5uYOLOv7uYOLOv6LiteRTMDet等模型,COCO数据集模型库请参照 ModelZooconfigs

注意:

  • PaddleYOLO 代码库协议为 GPL 3.0YOLOv5YOLOv6YOLOv7YOLOv8这几类模型代码不合入PaddleDetection,其余YOLO模型推荐在PaddleDetection中使用,会最先发布PP-YOLO系列特色检测模型的最新进展
  • PaddleYOLO代码库推荐使用paddlepaddle-2.4.2以上的版本,请参考官网下载对应适合版本,Windows平台请安装paddle develop版本
  • PaddleYOLO 的Roadmap issue用于收集用户的需求,欢迎提出您的建议和需求;

教程

安装

Clone 代码库和安装 requirements.txt,环境需要在一个 Python>=3.7.0 下的环境,且需要安装 PaddlePaddle>=2.4.2

git clone https://github.com/PaddlePaddle/PaddleYOLO  # clone
cd PaddleYOLO
pip install -r requirements.txt  # install
训练/验证/预测/ 将以下命令写在一个脚本文件里如```run.sh```,一键运行命令为:```sh run.sh```,也可命令行一句句去运行。
model_name=ppyoloe # 可修改,如 yolov7
job_name=ppyoloe_plus_crn_s_80e_coco # 可修改,如 yolov7_tiny_300e_coco

config=configs/${model_name}/${job_name}.yml
log_dir=log_dir/${job_name}
# weights=https://bj.bcebos.com/v1/paddledet/models/${job_name}.pdparams
weights=output/${job_name}/model_final.pdparams

# 1.训练(单卡/多卡),加 --eval 表示边训边评估,加 --amp 表示混合精度训练
# CUDA_VISIBLE_DEVICES=0 python tools/train.py -c ${config} --eval --amp
python -m paddle.distributed.launch --log_dir=${log_dir} --gpus 0,1,2,3,4,5,6,7 tools/train.py -c ${config} --eval --amp

# 2.评估,加 --classwise 表示输出每一类mAP
CUDA_VISIBLE_DEVICES=0 python tools/eval.py -c ${config} -o weights=${weights} --classwise

# 3.预测 (单张图/图片文件夹)
CUDA_VISIBLE_DEVICES=0 python tools/infer.py -c ${config} -o weights=${weights} --infer_img=demo/000000014439_640x640.jpg --draw_threshold=0.5
# CUDA_VISIBLE_DEVICES=0 python tools/infer.py -c ${config} -o weights=${weights} --infer_dir=demo/ --draw_threshold=0.5
部署/测速

将以下命令写在一个脚本文件里如run.sh,一键运行命令为:sh run.sh,也可命令行一句句去运行。

model_name=ppyoloe # 可修改,如 yolov7
job_name=ppyoloe_plus_crn_s_80e_coco # 可修改,如 yolov7_tiny_300e_coco

config=configs/${model_name}/${job_name}.yml
log_dir=log_dir/${job_name}
# weights=https://bj.bcebos.com/v1/paddledet/models/${job_name}.pdparams
weights=output/${job_name}/model_final.pdparams

# 4.导出模型,以下3种模式选一种
## 普通导出,加trt表示用于trt加速,对NMS和silu激活函数提速明显
CUDA_VISIBLE_DEVICES=0 python tools/export_model.py -c ${config} -o weights=${weights} # trt=True

## exclude_post_process去除后处理导出,返回和YOLOv5导出ONNX时相同格式的concat后的1个Tensor,是未缩放回原图的坐标+分类置信度
# CUDA_VISIBLE_DEVICES=0 python tools/export_model.py -c ${config} -o weights=${weights} exclude_post_process=True # trt=True

## exclude_nms去除NMS导出,返回2个Tensor,是缩放回原图后的坐标和分类置信度
# CUDA_VISIBLE_DEVICES=0 python tools/export_model.py -c ${config} -o weights=${weights} exclude_nms=True # trt=True

# 5.部署预测,注意不能使用 去除后处理 或 去除NMS 导出后的模型去预测
CUDA_VISIBLE_DEVICES=0 python deploy/python/infer.py --model_dir=output_inference/${job_name} --image_file=demo/000000014439_640x640.jpg --device=GPU

# 6.部署测速,加 “--run_mode=trt_fp16” 表示在TensorRT FP16模式下测速,注意如需用到 trt_fp16 则必须为加 trt=True 导出的模型
CUDA_VISIBLE_DEVICES=0 python deploy/python/infer.py --model_dir=output_inference/${job_name} --image_file=demo/000000014439_640x640.jpg --device=GPU --run_benchmark=True # --run_mode=trt_fp16

# 7.onnx导出,一般结合 exclude_post_process去除后处理导出的模型
paddle2onnx --model_dir output_inference/${job_name} --model_filename model.pdmodel --params_filename model.pdiparams --opset_version 12 --save_file ${job_name}.onnx

# 8.onnx trt测速
/usr/local/TensorRT-8.0.3.4/bin/trtexec --onnx=${job_name}.onnx --workspace=4096 --avgRuns=10 --shapes=input:1x3x640x640 --fp16
/usr/local/TensorRT-8.0.3.4/bin/trtexec --onnx=${job_name}.onnx --workspace=4096 --avgRuns=10 --shapes=input:1x3x640x640 --fp32
  • 如果想切换模型,只要修改开头两行即可,如:
    model_name=yolov7
    job_name=yolov7_tiny_300e_coco
    
  • 导出onnx,首先安装Paddle2ONNXpip install paddle2onnx
  • 统计FLOPs(G)和Params(M),首先安装PaddleSlimpip install paddleslim,然后设置runtime.ymlprint_flops: Trueprint_params: True,并且注意确保是单尺度下如640x640,打印的是MACs,FLOPs=2*MACs
[训练自定义数据集](https://github.com/PaddlePaddle/PaddleYOLO/issues/43)
  • 请参照文档issue
  • PaddleDetection团队提供了基于PP-YOLOE的各种垂类检测模型的配置文件和权重,用户也可以作为参考去使用自定义数据集。请参考 PP-YOLOE applicationpphumanppvehiclevisdronesmalldet
  • PaddleDetection团队也提供了VOC数据集的各种YOLO模型的配置文件和权重,用户也可以作为参考去使用自定义数据集。请参考 voc
  • 训练自定义数据集之前请先确保加载了对应COCO权重作为预训练,将配置文件中的pretrain_weights: 设置为对应COCO模型训好的权重,一般会提示head分类层卷积的通道数没对应上,属于正常现象,是由于自定义数据集一般和COCO数据集种类数不一致;
  • YOLO检测模型建议batch_size至少大于64去训练,如果资源不够请换小模型减小模型的输入尺度,为了保障较高检测精度,尽量不要尝试单卡训和总batch_size小于64

更新日志

  • 【2024/07/10】新增昇腾910B硬件支持,支持的模型见 模型列表
  • 【2023/05/21】支持RT-DETRYOLOv8YOLOv5uYOLOv7u训练全流程,支持YOLOv6Lite预测和部署;
  • 【2023/03/13】支持YOLOv5uYOLOv7u预测和部署;
  • 【2023/01/10】支持YOLOv8预测和部署;
  • 【2022/09/29】支持RTMDet预测和部署;
  • 【2022/09/26】发布PaddleYOLO模型套件,请参照ModelZoo
  • 【2022/09/19】支持YOLOv6新版,包括n/t/s/m/l模型;
  • 【2022/08/23】发布YOLOSeries代码库: 支持YOLOv3,PP-YOLOE,PP-YOLOE+,YOLOX,YOLOv5,YOLOv6,YOLOv7等YOLO模型,支持ConvNeXt骨干网络高精度版PP-YOLOE,YOLOXYOLOv5等模型,支持PaddleSlim无损加速量化训练PP-YOLOE,YOLOv5,YOLOv6YOLOv7等模型,详情可阅读此文章

产品动态

  • 🔥 2023.3.14:PaddleYOLO发布release/2.6版本

    • 💡 模型套件:
      • 支持YOLOv8,YOLOv5u,YOLOv7u等YOLO模型预测和部署;
      • 支持Swin-TransformerViTFocalNet骨干网络高精度版PP-YOLOE+等模型;
      • 支持YOLOv8FastDeploy中多硬件快速部署;
  • 🔥 2022.9.26:PaddleYOLO发布release/2.5版本

    • 💡 模型套件:
      • 发布PaddleYOLO模型套件: 支持YOLOv3,PP-YOLOE,PP-YOLOE+,YOLOX,YOLOv5,YOLOv6,YOLOv7等YOLO模型,支持ConvNeXt骨干网络高精度版PP-YOLOE,YOLOXYOLOv5等模型,支持PaddleSlim无损加速量化训练PP-YOLOE,YOLOv5,YOLOv6YOLOv7等模型;
  • 🔥 2022.8.26:PaddleDetection发布release/2.5版本

    • 🗳 特色模型:
      • 发布PP-YOLOE+,最高精度提升2.4% mAP,达到54.9% mAP,模型训练收敛速度提升3.75倍,端到端预测速度最高提升2.3倍;多个下游任务泛化性提升
      • 发布PicoDet-NPU模型,支持模型全量化部署;新增PicoDet版面分析模型
      • 发布PP-TinyPose升级版增强版,在健身、舞蹈等场景精度提升9.1% AP,支持侧身、卧躺、跳跃、高抬腿等非常规动作
    • 🔮 场景能力:
      • 发布行人分析工具PP-Human v2,新增打架、打电话、抽烟、闯入四大行为识别,底层算法性能升级,覆盖行人检测、跟踪、属性三类核心算法能力,提供保姆级全流程开发及模型优化策略,支持在线视频流输入
      • 首次发布PP-Vehicle,提供车牌识别、车辆属性分析(颜色、车型)、车流量统计以及违章检测四大功能,兼容图片、在线视频流、视频输入,提供完善的二次开发文档教程
    • 💡 前沿算法:
      • 全面覆盖的YOLO家族经典与最新模型: 包括YOLOv3,百度飞桨自研的实时高精度目标检测检测模型PP-YOLOE,以及前沿检测算法YOLOv4、YOLOv5、YOLOX,YOLOv6及YOLOv7
      • 新增基于ViT骨干网络高精度检测模型,COCO数据集精度达到55.7% mAP;新增OC-SORT多目标跟踪模型;新增ConvNeXt骨干网络
    • 📋 产业范例:新增智能健身打架识别来客分析、车辆结构化范例
  • 2022.3.24:PaddleDetection发布release/2.4版本

    • 发布高精度云边一体SOTA目标检测模型PP-YOLOE,提供s/m/l/x版本,l版本COCO test2017数据集精度51.6%,V100预测速度78.1 FPS,支持混合精度训练,训练较PP-YOLOv2加速33%,全系列多尺度模型,满足不同硬件算力需求,可适配服务器、边缘端GPU及其他服务器端AI加速卡。
    • 发布边缘端和CPU端超轻量SOTA目标检测模型PP-PicoDet增强版,精度提升2%左右,CPU预测速度提升63%,新增参数量0.7M的PicoDet-XS模型,提供模型稀疏化和量化功能,便于模型加速,各类硬件无需单独开发后处理模块,降低部署门槛。
    • 发布实时行人分析工具PP-Human,支持行人跟踪、人流量统计、人体属性识别与摔倒检测四大能力,基于真实场景数据特殊优化,精准识别各类摔倒姿势,适应不同环境背景、光线及摄像角度。
    • 新增YOLOX目标检测模型,支持nano/tiny/s/m/l/x版本,x版本COCO val2017数据集精度51.8%。
  • 更多版本发布

简介

PaddleDetection为基于飞桨PaddlePaddle的端到端目标检测套件,内置30+模型算法250+预训练模型,覆盖目标检测、实例分割、跟踪、关键点检测等方向,其中包括服务器端和移动端高精度、轻量级产业级SOTA模型、冠军方案和学术前沿算法,并提供配置化的网络模块组件、十余种数据增强策略和损失函数等高阶优化支持和多种部署方案,在打通数据处理、模型开发、训练、压缩、部署全流程的基础上,提供丰富的案例及教程,加速算法产业落地应用。

特性

  • 模型丰富: 包含目标检测实例分割人脸检测关键点检测多目标跟踪250+个预训练模型,涵盖多种全球竞赛冠军方案。
  • 使用简洁:模块化设计,解耦各个网络组件,开发者轻松搭建、试用各种检测模型及优化策略,快速得到高性能、定制化的算法。
  • 端到端打通: 从数据增强、组网、训练、压缩、部署端到端打通,并完备支持云端/边缘端多架构、多设备部署。
  • 高性能: 基于飞桨的高性能内核,模型训练速度及显存占用优势明显。支持FP16训练, 支持多机训练。

技术交流

  • 如果你发现任何PaddleDetection存在的问题或者是建议, 欢迎通过GitHub Issues给我们提issues。

  • 欢迎加入PaddleDetection 微信用户群(扫码填写问卷即可入群)

    • 入群福利 💎:获取PaddleDetection团队整理的重磅学习大礼包🎁
      • 📊 福利一:获取飞桨联合业界企业整理的开源数据集
      • 👨‍🏫 福利二:获取PaddleDetection历次发版直播视频与最新直播咨询
      • 🗳 福利三:获取垂类场景预训练模型集合,包括工业、安防、交通等5+行业场景
      • 🗂 福利四:获取10+全流程产业实操范例,覆盖火灾烟雾检测、人流量计数等产业高频场景

套件结构概览

架构 骨干网络 组件 数据增强
    目标检测
    • YOLOv3
    • YOLOv5
    • YOLOv6
    • YOLOv7
    • YOLOv8
    • PP-YOLOv1/v2
    • PP-YOLO-Tiny
    • PP-YOLOE
    • PP-YOLOE+
    • YOLOX
    • RTMDet
细节
  • ResNet(&vd)
  • CSPResNet
  • DarkNet
  • CSPDarkNet
  • ConvNeXt
  • EfficientRep
  • CSPBepBackbone
  • ELANNet
  • CSPNeXt
通用
  • Sync-BN
  • Group Norm
  • DCNv2
  • EMA
FPN
  • YOLOv3FPN
  • PPYOLOFPN
  • PPYOLOTinyFPN
  • PPYOLOPAN
  • YOLOCSPPAN
  • Custom-PAN
  • RepPAN
  • CSPRepPAN
  • ELANFPN
  • ELANFPNP6
  • CSPNeXtPAFPN
损失函数
  • Smooth-L1
  • GIoU/DIoU/CIoU
  • IoUAware
  • Focal Loss
  • VariFocal Loss
后处理
  • SoftNMS
  • MatrixNMS
加速
  • FP16训练
  • 多机训练
细节
  • Resize
  • Lighting
  • Flipping
  • Expand
  • Crop
  • Color Distort
  • Random Erasing
  • Mixup
  • AugmentHSV
  • Mosaic
  • Cutmix
  • Grid Mask
  • Auto Augment
  • Random Perspective

模型性能概览

云端模型性能对比

各模型结构和骨干网络的代表模型在COCO数据集上精度mAP和单卡Tesla V100上预测速度(FPS)对比图。

说明:

  • PP-YOLOE是对PP-YOLO v2模型的进一步优化,在COCO数据集精度51.6%,Tesla V100预测速度78.1FPS
  • PP-YOLOE+是对PPOLOE模型的进一步优化,在COCO数据集精度53.3%,Tesla V100预测速度78.1FPS
  • 图中模型均可在模型库中获取
移动端模型性能对比

各移动端模型在COCO数据集上精度mAP和高通骁龙865处理器上预测速度(FPS)对比图。

说明:

  • 测试数据均使用高通骁龙865(4*A77 + 4*A55)处理器batch size为1, 开启4线程测试,测试使用NCNN预测库,测试脚本见MobileDetBenchmark
  • PP-PicoDetPP-YOLO-Tiny为PaddleDetection自研模型,其余模型PaddleDetection暂未提供

模型库

1. 通用检测

PP-YOLOE+系列 推荐场景:Nvidia V100, T4等云端GPU和Jetson系列等边缘端设备

模型名称 COCO精度(mAP) V100 TensorRT FP16速度(FPS) 配置文件 模型下载
PP-YOLOE+_s 43.9 333.3 链接 下载地址
PP-YOLOE+_m 50.0 208.3 链接 下载地址
PP-YOLOE+_l 53.3 149.2 链接 下载地址
PP-YOLOE+_x 54.9 95.2 链接 下载地址

前沿检测算法

模型名称 COCO精度(mAP) V100 TensorRT FP16速度(FPS) 配置文件 模型下载
YOLOX-l 50.1 107.5 链接 下载地址
YOLOv5-l 48.6 136.0 链接 下载地址
YOLOv7-l 51.0 135.0 链接 下载地址

文档教程

入门教程

进阶教程

版本更新

版本更新内容请参考版本更新文档

许可证书

本项目的发布受GPL-3.0 license许可认证。

引用

@misc{ppdet2019,
title={PaddleDetection, Object detection and instance segmentation toolkit based on PaddlePaddle.},
author={PaddlePaddle Authors},
howpublished = {\url{https://github.com/PaddlePaddle/PaddleDetection}},
year={2019}
}

常见问题

相似工具推荐

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|今天
开发框架图像Agent

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.7k|★★☆☆☆|2天前
开发框架图像Agent

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|今天
图像数据工具视频

ragflow

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

77.1k|★★★☆☆|昨天
Agent图像开发框架

PaddleOCR

PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来,转换成计算机可读取的结构化数据,让机器真正“看懂”图文内容。 面对海量纸质或电子文档,PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域,它扮演着连接图像与大型语言模型(LLM)的桥梁角色,能将视觉信息直接转化为文本输入,助力智能问答、文档分析等应用场景落地。 PaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显:不仅支持全球 100 多种语言的识别,还能在 Windows、Linux、macOS 等多个系统上运行,并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目,PaddleOCR 既能满足快速集成的需求,也能支撑前沿的视觉语言研究,是处理文字识别任务的理想选择。

74.9k|★★★☆☆|今天
语言模型图像开发框架

tesseract

Tesseract 是一款历史悠久且备受推崇的开源光学字符识别(OCR)引擎,最初由惠普实验室开发,后由 Google 维护,目前由全球社区共同贡献。它的核心功能是将图片中的文字转化为可编辑、可搜索的文本数据,有效解决了从扫描件、照片或 PDF 文档中提取文字信息的难题,是数字化归档和信息自动化的重要基础工具。 在技术层面,Tesseract 展现了强大的适应能力。从版本 4 开始,它引入了基于长短期记忆网络(LSTM)的神经网络 OCR 引擎,显著提升了行识别的准确率;同时,为了兼顾旧有需求,它依然支持传统的字符模式识别引擎。Tesseract 原生支持 UTF-8 编码,开箱即用即可识别超过 100 种语言,并兼容 PNG、JPEG、TIFF 等多种常见图像格式。输出方面,它灵活支持纯文本、hOCR、PDF、TSV 等多种格式,方便后续数据处理。 Tesseract 主要面向开发者、研究人员以及需要构建文档处理流程的企业用户。由于它本身是一个命令行工具和库(libtesseract),不包含图形用户界面(GUI),因此最适合具备一定编程能力的技术人员集成到自动化脚本或应用程序中

73.3k|★★☆☆☆|3天前
开发框架图像