ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

RocketRide 中集成 Landing.ai ADE 实现文档解析与结构化抽取的完整指南

RocketRide 中集成 Landing.ai ADE 实现文档解析与结构化抽取的完整指南 【免费下载链接】rocketride-serverHigh-performance AI pipeline engine with a C core and 50 Python-extensible nodes. Build, debug, and scale LLM workflows with 13 model providers, 8 vector databases, and agent orchestration, all from your IDE. Includes VS Code extension, TypeScript/Python SDKs, and Docker deployment.项目地址https://gitcode.com/gh_mirrors/ro/rocketride-server点击查看免费下载本文以 RocketRide 开源仓库中的 Landing.ai 节点文档nodes/src/nodes/landing_ai/doc.md为核心系统讲解如何通过Landing.ai Parse与Landing.ai Extract两个子节点把 PDF、图片、电子表格等非结构化文档转换为干净的 Markdown、表格以及符合 JSON Schema 的结构化字段。读完本文你将掌握两个子节点的数据通道Lane接线方式、全部配置参数的含义与默认值、API Key 的解析与校验机制并能独立在 RocketRide 管道中搭建Parse → Extract的文档处理链路。一、功能概览一次 ADE 集成两个子节点Landing.ai 提供Agentic Document ExtractionADE云端文档处理 APIDPT-2 模型。RocketRide 的landing_ai节点包位于 nodes/src/nodes/landing_ai将 ADE 封装为两个职责单一的 Python 子节点Landing.ai Parse—— 文档 → 干净的 Markdown 表格Landing.ai Extract—— 解析后的 Markdown 用户上传的 JSON Schema → 结构化字段。Extract 消费的是 Parse 产出的 Markdown因此两者最典型的接线方式是Parse → Extract。如果只需要可读的文本与表格可以只使用 Parse只有需要把文档内容规整为特定字段时才需要串联 Extract。两个子节点的服务元数据定义在 services.parse.json 与 services.extract.json 中均注册为classType: data、register: filter的 Python 节点协议分别为landing_ai_parse://与landing_ai_extract://。二、Landing.ai Parse文档转 Markdown 与表格2.1 支持的数据类型与数据通道Parse 支持解析PDF、图片以及电子表格XLSX/CSV将其转换为 Markdown 与表格。它从tags通道接收文档字节向两个输出通道写数据Lane inLane outDescriptiontagstext抽取出的文本以 Markdown 形式输出tagstable抽取出的表格在实例实现parse/IInstance.py中节点通过writeTag处理SBGN/SDAT/SEND等标签流累积文档字节在对象关闭close或流结束时调用_process_document触发解析随后根据text/table通道是否有监听者分别调用writeText与writeTable写出结果。2.2 配置参数字段说明默认值API KeyADE API Key留空时回退到环境变量ROCKETRIDE_LANDING_AI_KEY无Model解析模型dpt-2-latestRegion部署区域US (production)或EU (eu-west-1)production关于Region有一个容易踩坑的实现细节在 parse/parse.py 中构造函数会对 region 做归一化——只有production与eu两个值会被保留任何其他配置值都会被静默重置为production。因此 UI 上请务必选择下拉中提供的两个值之一。关于Model该节点当前只提供dpt-2-latest一个取值见 services.parse.json 的 profile 定义源码中self._model config.get(model) or dpt-2-latest也印证了这一默认值除非扩展节点配置以支持 ADE 其他模型否则建议保持默认。2.3 底层调用与响应映射核心调用发生在 parse/parse.py 的Parser.parse()方法中未配置 API Key 或文档为空字节流时直接返回(, [])不发远程请求ADE 依赖文件名推断文档类型因此当文件名缺失时会用guess_filename(file_data, pdf)从字节内容嗅探通过build_client()构建LandingAIADE客户端landing_ai_base.py调用client.parse(document(file_name, file_data), modelself._model)_map_response从响应中取出markdown字段并遍历chunks把type table且内容非空的块收集为表格列表响应元数据中的credit_usage会写入 debug 日志failed_pages会以 warning 形式提示“部分页解析失败”任何 ADE 请求异常都会被记录日志后重新抛出而不是静默返回空结果以保证失败不被掩盖。三、Landing.ai Extract按 JSON Schema 抽取结构化字段3.1 数据通道与职责Extract运行在 Parse 下游消费text通道上的 MarkdownLane inLane outDescriptiontextanswers抽取出的字段以 JSON Answer 形式输出textdocuments抽取出的字段以文档形式输出在 extract/IInstance.py 中节点通过writeText累积所有到达的 Markdown 片段在closing时用\n\n.join(...).strip()将它们合并再调用IGlobal.extractor.extract(markdown)。3.2 配置参数字段说明默认值API KeyADE API Key留空时回退到ROCKETRIDE_LANDING_AI_KEY无Extraction Schema上传的.jsonJSON Schema 文件支持format与x-alternativeNames关键字必填Strict当文档不符合 Schema 时是“失败”而非“部分抽取”falseRegion同 Parseproduction/eu其他值归一化为productionproduction值得注意的是Extraction Schema 是必填字段见 services.extract.json 的required: [landing_ai_extract.schema_file]UI 中仅接受.json文件ui:options:accept: .json。3.3 Schema 上传的校验链路Schema 文件的解码与校验集中在 landing_ai_base.py 的load_schema_from_data_url()中空值直接报错“no extraction schema uploaded”通过decode_data_url解码 base64>{ type: object, properties: { summary: { type: string } } }在 services.extract.json 中还内置了该节点的声明式测试块test block覆盖了端到端的 Lane 行为可作为行为基准。六、失败行为与边界处理综合 README.md 的 Notes 小节与两个子节点的源码实现可归纳出如下可预期的边界行为场景ParseExtract未配置 API Key返回空文本、无表格(, [])返回{}空抽取空文档 / 空 Markdown直接跳过不发远程请求直接跳过发空结果text/table或下游无监听者完全跳过 ADE 调用—ADE 请求失败记录日志并重新抛出记录日志并重新抛出Schema 非法 / 过大—保存期 warning运行时抛ValueError上游返回抽取 warnings—记录 warning但正常返回抽取结果其中“Parse 在text与table都没有监听者时跳过远程调用”的逻辑位于 parse/IInstance.py既能省额度又能避免无意义的云端请求而两个节点的失败“记录后重新抛出”策略确保了管道失败不会被静默吞掉便于在 RocketRide 的调试器中定位问题。七、额度与定价ADE 提供免费的Explore档位注册即可获得1,000 credits 起始额度额度按页消耗per page。Parse 与 Extract 的响应元数据中都会返回credit_usageRocketRide 会将其写入 debug 日志方便你在运行管道时观测单次调用的额度消耗。关于各档位的具体价格与额度规则可参考 Landing.ai 官方定价页面原文链接见 doc.md。八、参考节点服务元数据速查以下为文档自动生成的参数参考原文见 doc.md 的 ROCKETRIDE:GENERATED 区块由nodes:docs-generate生成请勿手工编辑。Service:extractPropertyValueClass typedataCapabilities无Protocollanding_ai_extract://InputProducestextanswers、documentsProfileTitleModeldefault——配置区段Landing.ai Extract→landing_ai_extract.default包含字段字段类型默认值landing_ai_extract.api_keystring无回退环境变量landing_ai_extract.regionstringproductionlanding_ai_extract.schema_filestringdata-url必填landing_ai_extract.strictbooleanfalseService:parsePropertyValueClass typedataCapabilities无Protocollanding_ai_parse://InputProducestagstext、tableProfileTitleModeldefault—dpt-2-latest配置区段Landing.ai Parse→landing_ai_parse.default包含字段字段类型默认值landing_ai_parse.api_keystring无回退环境变量landing_ai_parse.modelstringdpt-2-latestlanding_ai_parse.regionstringproduction依赖与源码指引运行时依赖landingai-ade见 requirements.txt由ensure_dependencies()通过depends机制按需安装共享工具层landing_ai_base.pyAPI Key 解析、客户端构建、凭据校验、Schema 解码解析实现parse/parse.py抽取实现extract/extract.py单元测试nodes/test/landing_ai/parse/test_parse.py 与 nodes/test/landing_ai/extract/test_extract.py覆盖 Schema 解码、响应映射、凭据解析与异常传播等关键路径可作行为基准与回归参考。赞分享【免费下载链接】rocketride-serverHigh-performance AI pipeline engine with a C core and 50 Python-extensible nodes. Build, debug, and scale LLM workflows with 13 model providers, 8 vector databases, and agent orchestration, all from your IDE. Includes VS Code extension, TypeScript/Python SDKs, and Docker deployment.项目地址https://gitcode.com/gh_mirrors/ro/rocketride-server点击查看免费下载相关推荐AmazonTextractConverter 实战指南在 Haystack 中用 AWS Textract 构建文档 OCR 与结构化抽取流水线AmazonTextractConverter 实战指南在 Haystack 中用 AWS Textract 构建文档 OCR 与结构化抽取流水线 本文是一份人工智能大模型RAGAI AgentNLP信息抽取完整指南从非结构化数据中提取结构化信息的终极方法信息抽取完整指南从非结构化数据中提取结构化信息的终极方法 信息抽取是机器学习和自然语言处理中的关键技术能够从海量非结构化数据中自动提取结构化信息。无论是从产文档知识库人工智能机器学习Spring AI JSoup Document Reader 实战指南HTML 文档解析与文本抽取的完整方案Spring AI JSoup Document Reader 实战指南HTML 文档解析与文本抽取的完整方案 本篇技术指南围绕 Spring AI 项目中的人工智能大模型AI AgentRAG后端工具调用MCP 服务MCP Clients上一篇vim-lastplace 屏幕优化技巧keepjumps 与 zz 命令组合让光标始终拥有最大上下文下一篇终极山水渲染指南Shan-Shui-Inf如何用代码绘制千年中国画意境创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表