Dify+RAGFLow:基于占位符的图片问答升级方案(最佳实践)

Dify与RAGFlow结合:智能应用开发与深度文档理解的优化 RAGFlow是一个专为深度文档理解和检索增强生成而设计的引擎,它结合了预训练的大型语言模型(LLMs)和高效的检索技术,为用户提供了一个强大的工具来处理复杂的问题和场景。RAGFlow的核心优势在于其混合检索能力,它能够从大规模知识库中检索相关文档,然后将这些信息与模型的生成能力相结合,生成更准确、更全面的答案。这种混合方法特别适用于处理需要深度理解和综合多个信息源的问题,如智能客服、搜索引擎和知识库应用。RAGFlow的工作流程包括两个主要部分:检索和生成。 阅读详情

 

知识库预览和引用文件部分是直接展示原始数据或进行简单渲染,它们能正确显示图片,证明原始上传的增强文本中的 URL 是正确的,并且图片服务器和网络配置是通的,问题出在聊天内容生成这个环节。

我当时提供了三种选择选择,分别是:更强的 prompt 指令、更强的 LLM 和”占位符+后处理“的方案,鉴于后续大家反馈前两种效果依然不够稳定,这篇我来系统的分享下如何实现第三种更符合实际生产场景的 RAG 富文本处理方案。

图片

这篇试图说清楚:

占位符方案如何将图片 URL 幻觉问题,从一个难以控制的“语义幻觉”转变为一个相对更容易处理的“格式遵循”问题,从而极大降低图片显示错误的概率。它不是银弹,但通常是处理富文本(图文混排)RAG 中最实用的工程方法之一。

以下,enjoy:

1

   

占位符方案的好处

LLM 的核心行为是生成文本,而非精确复制特定格式的字符串,尤其是当这些字符串看起来像可解释内容时。

   原始问题:

LLM 看到的是`<img src="http://{server_ip}:8000/images/..." alt="..." width="...">`这样的标签,它看起来像是有意义的 HTML 和 URL。LLM 尝试"理解"上下文,并可能基于文本内容(比如“燃油喷射器泄漏图”)重新生成一个它认为更合适的 src(例如改成 .../fuel_injector_leak.png),导致 URL 失效。 

  占位符方案:

LLM 看到的是 [IMG::page1_img1_uuid.png] 这样的特殊标记。这种格式更像是一个代码片段或元数据标签,而不是自然语言或标准 HTML。LLM 被明确指示(通过 Prompt)要将其视为特殊标记,如果需要引用就原样复制。它"创造性地"修改这种标记的动机和可能性都大大降低了。它不太可能去"理解" page1_img1_uuid.png 并把它改成 fuel_injector_leak.png。 

1.1

   

降低 LLM 修改风险

占位符通常是简单的、非描述性的文本字符串(如 [IMG::page1_img1_eef46633] 或类似的格式)。LLM 在生成回答时,更有可能将这些占位符视为需要原样保留的特殊标记或代码片段,而不是像 HTML <img> 标签那样容易被“理解”和“重构”的内容。

1.2

   

解耦内容与表示

将图片的存在(通过占位符表示)与其具体的网络位置(URL)分离。LLM 专注于基于文本内容(包括占位符)生成连贯的回答,而图片渲染的细节则由后续步骤处理。

1.3

   

更强的控制力

通过后处理步骤,我们可以精确地控制最终呈现给用户的 <img> 标签的格式,确保 URL 和其他属性(如 alt, width)的准确性。

2

   

后处理步骤是关键

这个方案的核心在于,在 LLM 从 RAGFlow 获得包含占位符的回答后,必须有一个后处理步骤。这个步骤负责查找回答中的所有占位符,并使用之前存储的映射关系将其替换回完整的 HTML <img> 标签。大致有以下两种实现方式:

2.1

   

直接使用 ragflow_sdk (不推荐)

优点是,我们可以完全控制整个流程,集成度高。在获取到 chat.answer() 的结果(包含占位符的文本)后,可以立即执行 Python 代码进行替换,然后再将最终结果呈现给用户或传递给下游系统。 

缺点也很明显,这种方式通常意味着我们需要自行构建用户界面 (UI) 或者将 RAG 逻辑嵌入到一个更大的后端应用中。标准的 RAGFlow Web UI 是与其自身后端紧密集成的,不太可能直接支持你在调用链中插入自定义的 Python 后处理步骤。而修改 RAGFlow UI 来支持这一点会非常复杂。

2.2

   

使用 Dify 工作流(推荐)

Dify 提供了强大的可视化工作流编排能力,我们可以清晰地看到数据流转。将 RAGFlow 作为知识库(通过其 API)接入,LLM 调用作为另一个节点,而后处理逻辑则封装在 Dify 的 "Code" 节点中,职责清晰。

图片

Dify+RAGFlow:1+1>2的混合架构,详细教程+实施案例

总结来说,通过 Dify 工作流中的 Code 节点实现后处理逻辑是完全可行的,并且可能是更灵活、更易于管理的方案,特别是如果你希望利用现成的或 Dify 提供的 UI 时。

3

   

映射关系的存储和访问

我们需要一种方便且稳定的方式来存储和检索占位符 -> URL 的映射。 存储环节,在处理 PDF 时,将生成的映射关系与增强文本一起保存,例如存为一个 JSON 文件,其名称与知识库或文档相关联。 检索环节,在进行聊天并需要进行后处理时,需要能够加载与当前知识库/助手相关的映射文件。具体实现上我试过如下三种方式,推荐最后一种。

3.1

   

映射关系作为知识库

这个做法是我最先想到的一种。就是将映射关系保存为 TXT 文件并上传到 RAGFlow 单独知识库,利用 RAGFlow 的 "One" 分块策略来确保整个映射文件作为一个单元被检索,避免了映射关系被分割的问题。

但仔细想了下意识到,实际测试在本地预处理脚本(如 process_pdf.py)运行时,我们无法知道 RAGFlow 将为即将上传的原始文档(例如,从 PDF 生成的增强文本文件)分配的 document_id。 document_id 是在调用 dataset.upload_documents() 之后由 RAGFlow 系统生成的。本地脚本在调用此 API 之前运行,因此无法预先获取这个 ID。

3.2

   

共享文件系统方案

这里需要先解释一个 Docker 卷挂载的概念,这是一种将宿主机(运行 Docker 的机器)上的目录或文件链接到 Docker 容器内部指定路径的机制。它允许容器访问宿主机上的文件,并且宿主机和容器之间的数据是实时同步的(在挂载的目录内)。

图片

当我们运行 process_pdf.py 脚本会生成映射文件 (.json) 并保存在宿主机的一个特定目录下(例如 ~/ragflow_project/mappings)。 Dify 应用在其工作流的 Code 节点里需要读取这些 .json 文件。 通过卷挂载,我们可以把宿主机上的 ~/ragflow_project/mappings 目录映射到 Dify 容器内部的一个路径(例如 /data/mappings)。 这样,Dify 容器内的 Code 节点就可以像访问本地文件一样,通过路径 /data/mappings/{unique_id}.json 来读取映射文件了。

但是这个方案我测试下来没有成功,docker exec 一直显示 "No such file or directory",这意味着在 docker-compose.yaml 中为 api 服务定义的 volume 挂载没有成功。可能是因为 Docker Desktop 正在使用 WSL 2 后端,WSL 2 有更原生的方式访问 Windows 文件系统(通常通过 /mnt/c, /mnt/d 等路径),不再依赖旧的 Hyper-V 文件共享设置。一时半会没研究明白,再加上这并不是一个适合在生产场景使用的方案,就果断弃了。

3.3

   

阿里云 OSS(或其他云对象存储)

在考虑技术方案时,必须充分考虑实际生产场景,尤其是多用户并发访问和部署架构带来的影响。OSS 方案更适合生产环境,原因有以下几点:

  • 解耦存储: 将映射文件存储在独立、高可用的云存储中,而不是依赖本地文件系统。

  • 避免本地环境问题: 不再受 Windows 路径、WSL 2 挂载、Docker Desktop 配置等本地复杂性的影响。 

  • 可扩展性好: OSS 可以轻松处理大量文件和高并发访问。 

  • 部署更简单: Dify 容器不再需要特殊的文件系统挂载,只需要配置好访问 OSS 的网络和凭证即可。

    阿里云OSS访问地址:https://oss.console.aliyun.com/overview

4

   

OSS 配置流程

4.1

   

获取 OSS 访问凭证

Access Key ID、Access Key Secret、Endpoint、Bucket Name (你用于存储映射文件的存储桶名称) ,以及一个用于存放映射文件的目录前缀 (例如 mappings/)

4.2

   

交互方式选择

关于 Dify 中 code 节点和 OSS 的交互方式,最初我是默认选择使用 OSS SDK 的方式,结果发现报错:ModuleNotFoundError: No module named 'oss2' ,这说明 Dify 为 Code 节点提供的沙箱环境没有包含阿里云 OSS 的 SDK。这和 Coze 一样是一个常见的限制,沙箱环境通常只包含一组有限的基础库。 

图片

所以使用 HTTP Request 节点是快速验证核心逻辑的好方法, 既然 Dify Code 节点无法直接与 OSS SDK 交互,我们可以让 Dify 的 HTTP Request 节点来负责获取映射文件的内容,然后将获取到的内容传递给 Code 节点进行处理。

图片

4.3

   

配置 Bucket 自定义域名

在确定了使用 http 节点访问映射文件后,我们还有个问题需要克服。就是阿里云 OSS 出于安全考虑,对于使用 OSS 默认域名 (如 xxx.oss-cn-shanghai.aliyuncs.com)或传输加速域名访问时,会强制在返回头中增加 x-oss-force-download: true 和 Content-Disposition: attachment。这会导致浏览器或 HTTP 客户端(如 Dify 的 HTTP 节点)强制下载,即使你设置了对象的 Content-Disposition: inline 元数据。

图片

因此 Dify HTTP 节点会将响应体识别为一个文件,因此 body 字段为空,而将文件信息放入了 files 数组中。它实际上已经成功下载了文件内容,只是没有直接放在 body 里。官方推荐的方法是为你的 OSS Bucket 绑定一个你自己的、已备案的域名(正好有一个刚做好 ICP 备案)。

图片

如果你没有备案过的域名,为了完成测试可以使用template节点中直接填写映射关系的内容,实测这样和http节点效果是一致的。

然后要修改 Dify HTTP 节点中的请求 URL,使用这个自定义域名来访问你的 JSON 文件,而不是使用 OSS 的默认域名。 访问通过自定义域名的文件时,OSS 通常会尊重你在对象元数据中设置的 Content-Disposition: inline,从而允许预览而不是强制下载。

图片

在OSS点击域名管理

图片

在域名控制台解析到OSS存储位置

5

   

工作流解析

图片

文档预处理: 提取 PDF 中的图片和文本。在生成的文本中,用唯一的占位符(例如 [IMG::page1_img1_uuid.png])标记图片的位置,而不是直接插入 <img> 标签。

映射关系存储: 将"占位符"到"实际图片访问 URL"(指向独立的图片服务器)的映射关系保存为一个 JSON 文件,并将其上传到阿里云 OSS 对象存储中,以便后续访问。

独立图片服务: 运行一个独立的 Docker 容器作为图片服务器,负责托管从 PDF 中提取的图片文件,并通过 HTTP 提供访问(例如 http://<your-server-ip>:8000/images/...)。

RAG 流程: RAGFlow 知识库仅存储包含占位符的纯文本。

图片

后端处理 (Dify): 使用 Dify 工作流编排 RAG 查询和 LLM 调用。在 LLM 生成包含占位符的回答后:

图片

使用 Dify 的 HTTP Request 节点从 OSS 获取对应的映射关系 JSON 文件(通过自定义域名访问)。

使用 Dify 的 Code 节点解析 JSON,查找回答中的占位符,并将其替换回完整的 <img> HTML 标签,其 src 指向图片服务器的 URL。

6

   

QA/故障排除

Q: Dify Code 节点报错 ModuleNotFoundError: No module named 'oss2 

A: Dify Code 节点的沙箱环境不包含 oss2 库。解决方案是改用 Dify 的 HTTP Request 节点来获取 OSS 上的映射文件内容(需要文件可公开访问或使用预签名 URL),然后将获取到的字符串内容传递给 Code 节点进行 JSON 解析和处理。

Q: Dify HTTP Request 节点访问 OSS URL 返回空 body,但在 files 数组中有内容

A: 这是因为 OSS 返回了 Content-Disposition: attachment 头,Dify 将其视为文件下载。解决方案是在上传映射文件到 OSS 时(在 process_pdf.py 中),明确设置 headers={'Content-Disposition': 'inline'}。

Q: 浏览器访问图片服务器 URL (http://:8000/images/...) 返回 "Not Found",但 curl http://localhost:8000 成功

A: 这通常是 Docker Volume 挂载问题 (尤其在 Windows/WSL2)。正在运行的 image-server 容器内的 /app/images 没有同步宿主机 ./images 目录的最新内容。解决方案:停止并删除旧的 image-server 容器 (docker stop/rm),然后使用正确的 -v <宿主机绝对路径>:/app/images 参数重新运行 docker run 命令启动新容器。

图片

7

   

写在最后

7.1

   

残余风险

占位符方案能否完全解决 LLM 幻觉?答案是不能完全保证,但是测试下来能极 大降低特定错误的概率。 需了解的残余风险包括:

  • 完全省略占位符: 如果它认为图片不重要或与回答关系不大。 

  • 轻微修改占位符: 比如不小心加了空格、改变了括号 [ IMG:: ... ],或者截断了文件名。这可能导致后续的 Code 节点正则匹配失败。 

  • 在错误的位置插入占位符。 

7.2

   

图片分页问题

如何确保图片链接与其所属页面的主要文本内容在同一个块中,并且最好位于该块的开头或明确关联的位置。这个问题我三天前在知识星球专门写过一篇回复,大致有两种方式:

图片

1、改变图片链接的插入时机和位置,图片链接紧随页面开始标记,与该页文本强关联。即使默认分块器在页面中间分割,图片链接也更有可能和页面开头的文本在一起。添加的 --- Page X Start/End --- 分隔符为后续更精细的分块(方案二)打下基础。

2、通过 paragraph_separator="\n--- Page ",强制分块器在页面边界(或你定义的分隔符)处进行切割,最大程度保证页面内容的完整性。

需要确保方案一中的分隔符 --- Page X Start/End --- 能够被 \n--- Page 这个模式匹配到并作为切割点。

7.3

   

正本清源

通过HTTP请求获取并展示图片(例如替换占位符)能够显著提高最终答案的可读性和用户体验,但这属于 RAG 流程末端(生成与呈现) 的优化。输出格式的优化(如加入图片)虽然重要,但属于锦上添花,必须建立在核心检索和生成能力达标的基础上。

而从构建一个高质量、高效率 RAG 项目的基础来看,数据预处理和分块策略优化,绝对是更早期、更核心、也往往是决定 RAG 系统性能上限的关键工作。

后续几篇我会回过头来,从数据预处理(例如 MinerU、Mistral OCR等横评)、动态分块策略进一步写些实践经验。


本篇中所提到的项目源码和Dify工作流YAML文件均在知识星球内,按需加入。

图片

 如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

继科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

基于此,我用做产品的心态来打磨这份大模型教程,深挖痛点并持续修改了近70次后,终于把整个AI大模型的学习门槛,降到了最低!

在这个版本当中:

第一您不需要具备任何算法和数学的基础
第二不要求准备高配置的电脑
第三不必懂Python等任何编程语言

您只需要听我讲,跟着我做即可,为了让学习的道路变得更简单,这份大模型教程已经给大家整理并打包,现在将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

​

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)
在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

五、AI产品经理大模型教程

在这里插入图片描述

LLM大模型学习路线 ↓

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容:

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容:

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容:

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容:

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

​

自然语言处理:第九十九章 私有化RAG封神组合:Dify+RagFlow知识库 我的解决方案是修改ragflow的默认端口,可以参考我的ragflow配置(如下:在docker-compose.yml里面把ragflow映射到主机的端口改掉,改成容器的80端口映射到主机的8000端口,433端口映射到主机的4333端口)PS:由于我的dify和ragflow都部署在同一个主机的docker中,所以dify可以通过主机的内网ip访问ragflow的知识库。首先我们需要解决一个问题,就是在本地的ragflow和dify的页面默认的访问端口是有冲突的(用的都是80和443端口)。 阅读详情

相关推荐

MinerU:RAG文档解析的语义级基础设施与六大框架集成指南

文档解析是RAG系统效果的底层基石,传统工具如PyMuPDF或pdftotext仅实现字符提取,缺乏对标题层级、表格结构、图片语义等关键信息的识别能力。MinerU通过多模态视觉语言模型(VLM)与三重解耦设计(格式/能力/部署),将PDF、DOCX、PPTX等异构文档统一映射为带结构化元数据的Markdown输出,本质是构建可信语义输入。其技术价值在于提升切片准确性、保障图文关联性、支撑跨格式一致检索,广泛应用于金融研报分析、医疗知识库构建、制造业手册问答等强结构化文档场景。本文聚焦MinerU作为RAG

weixin_33393017的博客 272

智能客服中的图片问答与占位符技术实践

在智能客服系统中,图片问答技术结合占位符技术正成为解决专业场景需求的关键方案。传统OCR技术虽能提取文字,但缺乏语义理解能力,而基于Dify和RAGFLow的组合方案通过占位符技术实现了上下文感知问答,显著提升了准确率。占位符技术不仅具备可逆性和可扩展性,还能通过多层设计优化检索速度。这种方案特别适用于医疗影像解读、工业图纸标注等专业领域,通过混合检索策略和冷启动解决方案,系统能够快速适应不同场景需求。

weixin_33860553的博客 420

公众号网页视频一体化知识库构建工作流

知识库建设的核心在于多源异构内容的统一结构化处理——从网页的HTML语义解析、公众号的动态渲染绕过,到视频的字幕提取与关键帧理解,本质是将非结构化信息转化为可检索、可关联、可演化的知识单元。其技术原理涵盖协议层劫持、视觉区块分割、跨模态对齐与轻量RAG编排,价值在于保障数据主权、提升检索精度、降低管理成本。典型应用场景包括技术文档归档、教学资源沉淀、AI训练语料构建等。本文聚焦微信公众号、网页、视频三类高价值但难采集的内容形态,提供一套基于Playwright、trafilatura、whisper.cpp

weixin_30628077的博客 382

Dify 通过 API 调用 RAGFlow 外部知识库

本文使用 Dify v0.10.0+ 和 RAGFlow v0.12.0+ 版本(源码运行)。Dify 中的 RAG 一直被诟病,现在 Dify 提供了外部知识库 API,这样就可以连接到 Dify 之外的知识库并从中检索知识。第一个问题是 API 规范,包括接口格式、输入和输出参数等。第二个问题是哪些外部知识库支持该 API 呢?理论上讲只要支持 API 规范都是可行的。

NLP工程化 9576

RAG+AI工作流+Agent:LLM框架该如何选择,全面对比MaxKB、Dify、FastGPT、RagFlow、Anything-LLM,以及更多推荐

RAG+AI工作流+Agent:LLM框架该如何选择,全面对比MaxKB、Dify、FastGPT、RagFlow、Anything-LLM,以及更多推荐

丨汀、的博客 3万+

AutoDL跑yolo

由于博主在AutoDL的JupyterLab的终端直接上传ZIp文件要么老是再上传中被中断,要么就是上传后使用unzip指令解压显示“找不到”,作为纯小白的我实在太难了!这个文件列出了一个 Python 项目所需的所有依赖包及其精确的版本号。这个文件是 Python 项目中常见的一种方式,用于确保项目在不同环境中都能以相同的依赖包配置运行。3.进入JupyterLab,在文件夹目录中找到上传的文件夹,右键点击“复制路径”。然后在终端中输入以下指令进行切换到该文件夹路径。9.安装成功后开始输入指令开跑!

m0_73804659的博客 1206

Dify案例解析:如何高效整合知识库与Ragflow?

关于ragflow 安装比较复杂,大家可以去开源github上查看它的安装,本次就不带大家安装了。项目开源地址:https://github.com/infiniflow/ragflow项目文档: https://ragflow.io/docs/dev/目前这个项目用到的组件比较多,用到Elasticsearch、Kibana、MySQL、MinIO、Redis、RAGFlow等,大家可以参考官方文档部署好应用程序。这里我们需要注意的几点。

2401_84204413的博客 4939

硬件基础(4):(7)ADC电压采集:软件校准(标定、拟合)

在实际项目中,**软件端校准**可以有效弥补硬件方面(分压电阻误差、放大器失调、参考源误差等)带来的系统性偏差,从而提高 ADC 测量精度。下面是一个常见的**多点实测校准**流程与思路,个人感觉传感器标定的原理也只这样。

FCZlll的博客 6243

基于MiniO存储的RAGFlow+Dify图片处理方案

这篇主要介绍基于MiniO存储的RAGFlow+Dify图片处理方案

韦东东的博客 471

Python气象雷达数据处理实战:用PyCINRAD从基数据到PPI图的完整流程

本文详细介绍了使用PyCINRAD库处理气象雷达基数据并生成PPI图的完整流程,涵盖环境配置、数据读取、反射率与速度数据提取、可视化优化等关键步骤。通过实战案例演示如何从原始雷达数据到专业级PPI图像生成,为气象研究和业务应用提供高效解决方案。

yog99的博客 758

2021秋招IC验证面经-ARM中国/中科芯/飞腾/地平线/中兴

中科芯 (央企福利待遇好,但是百分百不解决户口,适合当地人进去躺平。) 现场面试,三个面试官,时间大约40min 首先介绍一下自己,介绍一下项目。所做项目用到了FIFO吗,深度是多少,位宽是多少,仲裁算法是什么? 验证环境中的reference model是自己写的还是本身就有的,仲裁怎么在参考模型中实现,参考模型怎么获取寄存器的值? 怎么配置RTL寄存器,通过平台的寄存器模型进行寄存器配置,寄存器模型里边的方法,写一个寄存器或读一个寄存器怎么实现? 寄存器如何实现前门访问和后门访问,后门访问时

weixin_48014653的博客 6319

究极方案:油猴脚本实现RAG问答前端图片流式体验

这篇试图说清楚,三种 RAG 图片问答的方案迭代过程,油猴脚本 (Tampermonkey)的具体实现方式,以及项目架构梳理。

韦东东的博客 644

ransac拟合2D圆(三点定圆 c++详细版)

RANSAC(Random Sample Consensus,随机采样一致性)算法是一种基于随机采样的迭代算法,主要用于从一组包含大量噪声和异常值(外点)的数据中估计数学模型的参数。

twnkie的博客 1047

RAGFlow v0.19图文混排:详细拆解+预处理增强案例

RAGFlow在5/26 正式更新了v0.19版本,其中有两点值得关注。首当其冲的是在 Agent 模块(也就是工作流)新增了代码执行组件,这个被吐槽了很久了 RAGFlow工作流编排功能,终于可以处理更加复杂的任务了。

m0_59235245的博客 2908

2025必备:C#上位机自动更新方案,支持断点续传与版本回滚(附完整源码)

摘要:工业上位机自动更新方案解析 本文针对工业现场上位机更新效率低下、风险高的问题,提出了一套完整的自动更新解决方案。该方案包含四个核心模块:版本检测(后台比对版本)、断点下载(支持网络中断续传)、安装更新(自动备份旧版本)和版本回滚(更新失败快速恢复)。通过独立更新工具与主程序解耦的设计,实现了"不影响生产+有退路"的工业级更新要求。方案基于.NET Framework开发,采用HTTP协议通信,包含详细的代码实现和工业场景适配说明,解决了U盘更新效率低、网络不稳定导致下载失败、更新后

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 957

X电容与Y电容,看这一篇就够了

本文详细介绍了X电容与Y电容的定义、作用、位置、分类,以及它们在实际应用中的容值选取和计算方法。通过汽车电子应用和X电容放电电路的实例,帮助读者深入理解这两种安规电容的重要性。文章还探讨了电容放电电阻的计算,确保符合安全规范。

让你爱上电路设计 7018

技术小白如何用好 Dify:模型选型、平台对比与 Workflow 上手实战

> 导读:本文源自 [DSL/图文知识库/知识库内容/我是技术小白,如何用好DIFY.md](https://link.gitcode.com/i/0d381e179e016d74b7effac81c6ac96c),作者以多年接触 Dify 的一线从业者视角,回答了新手最关心的三个问题:选什么样的模型、为什么众多 AI 应用平台选择了 Dify、Dify 到底能做什么。文章将结合本仓库(Aweso

gitblog_00656的博客 1008

HyperLynx(十八)DDR(一)DDR简介和DDR的数据仿真

LVTTL电平为单端信号,而SSTL电平本质上是差分对,其实现机制是将信号与参考电平Vref组成差分对进行比较,如图所示,VIH和VIL各有一个交流参数AC和直流参数DC,信号第一次越过AC门限的时刻,作为时序计算的参考点,此后只要信号保持DC门限内,逻辑状态保持不变,这种设计减小了噪声、振铃等对于信号质量的影响。经过调整后,控制器在发送颗粒1的DQS后,延时1ns再发送颗粒2的DQS,则颗粒1在1ns后收到对齐的DQS和CLK,颗粒2在2ns后收到对齐的DQS和CLK,从而满足了时序关系。

小幽余生不加糖 7677

图文一体生成能力落地指南:在线服务与本地部署实战对比

图文一体生成是多模态AI的核心能力,指模型在统一架构下同步理解文本、生成图像并保持语义与逻辑严格对齐。其技术原理依赖多模态编码器、图文共享表征与协同解码机制,突破传统‘先写后画’的割裂流程。该能力显著提升内容生产效率与专业表达精度,广泛应用于营销图文、技术文档、教育课件及企业合规材料等场景。当前主流实现路径分为两类:一类是GPT-4o、Claude 3.5等闭源在线服务,强调开箱即用;另一类是以SenseNova U1、Qwen-VL-Max为代表的开源本地模型,支持私有部署、领域微调与深度工作流集成,契合

weixin_30394669的博客 330

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

AgentScope 2.0:1. 面向生产环境的智能体工程平台

阿里巴巴通义实验室推出AgentScope Java 2.0,升级为面向生产环境的智能体全生命周期平台。核心升级包括:1)Harness工程化,支持长期运行、分层记忆、子智能体和任务规划;2)企业级分布式部署,实现多租户隔离、安全沙箱和会话恢复;3)底层框架优化,简化消息模型并增强事件流支持。平台提供丰富生态集成,涵盖记忆、存储、RAG等模块,实现从开发到生产的跨越。新版本强调智能体的持续学习能力、安全性和稳定性,为复杂任务提供完整解决方案。

王小工小工历程 612

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

AMD-OLMo-1B-SFT-DPO vs OLMo基础版:SFT+DPO对齐到底给1B小模型带来了什么

本文带你拆解 **AMD-OLMo-1B-SFT-DPO_rai_1.9.0_m_1.0.1_npu** 模型:它以 OLMo-1B 为底座,经过 SFT(监督微调)+ DPO(直接偏好优化)两步对齐训练。相比 OLMo 基础版(仅预训练),对齐后的 1B 小模型在指令跟随、对话体验和安全可控性上有哪些真实提升?一篇讲清楚。 ## 先看名字:AMD-OLMo-1B-SFT-DPO 是什么? 这

gitblog_00932的博客 727

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

从零构建企业级 AI Agent 平台

本文介绍从零构建企业级AI Agent平台的架构全景与技术选型。因数据主权、治理深度、存量系统绑定及质量运营需求,选择自建而非SaaS。平台采用模块化单体,分渠道、API、服务、数据四层,核心模块包括知识采集、RAG、Agent运行时、Workflow、权限治理等。技术选型以Python+FastAPI为主,数据层复用MySQL、Doris、ES等,强调“模型不能决定授权”的架构纪律。

qq_33055075的博客 712

dify案例分享-知识库检索整合Ragflow

关于ragflow 安装比较复杂,大家可以去开源github上查看它的安装,本次就不带大家安装了。项目开源地址:https://github.com/infiniflow/ragflow项目文档: https://ragflow.io/docs/dev/目前这个项目用到的组件比较多,用到Elasticsearch、Kibana、MySQL、MinIO、Redis、RAGFlow等,大家可以参考官方文档部署好应用程序。这里我们需要注意的几点。

Python_cocola的博客 7041
上一篇: 还不知道怎么学大模型?别再闷头瞎学了,看我五分钟,顶你两小时(附教程)
下一篇: AI大模型领域最值得看的 5 本新书,找到了(附pdf)
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值