跳到正文
北京时间
原文
LlamaIndex:产品、工程与评测·· 2025-11-25精选AI 评分65

LlamaIndex 发布 LlamaSheets Beta,将杂乱电子表格转为 AI 可用数据

Announcing LlamaSheets: Turn Messy Spreadsheets into AI-Ready Data (Beta)

AI 导读

LlamaIndex 发布 LlamaParse 新 API LlamaSheets(Beta,免费),把任意 .xlsx 电子表格语义化结构为 Parquet 文件,供 Agent 或下游应用使用。

推荐理由

原文介绍了将杂乱表格转为 Parquet 的多阶段处理方法与接入方式,读者可据此评估是否嵌入自己的表格自动化流程。

正文 · AI 翻译

今天,我们宣布推出首个专用于处理电子表格的 API,现已免费提供 Beta 版!

立即探索我们的免费和付费方案。

隆重推出 LlamaSheets

电子表格无处不在。从财务模型、产品目录到运营报告,电子表格以各种格式和不同组织程度存在。

与典型的非结构化文档不同,电子表格包含高度结构化的数值数据、复杂的格式以及传统文本解析无法捕捉的视觉层级。LLM 和智能体不仅需要理解原始单元格值,还需要理解这些文档中编码的语义关系、格式模式和层级结构。

挑战在于,“杂乱”的电子表格通常使用视觉格式(粗体标题、彩色单元格、合并区域)来传达含义,而非显式的数据结构。在任何 AI 自动化能够进行之前,这一规范化步骤——提取结构化数据同时保留语义上下文——至关重要。这就是为什么我们今天如此兴奋地宣布 LlamaParse 的最新产品:LlamaSheets!

LlamaSheets 是一个新的 LlamaParse API,它利用语义理解自动将复杂的电子表格结构化为 AI 就绪的数据。输入是任意 .xlsx 文件,输出是可在任何智能体或下游应用中使用的 parquet 文件。

技术方法

我们的处理算法实现了复杂的多阶段流水线:

  1. 特征提取与聚类 - 每个单元格提取 40 多个特征(位置、格式等),然后进行特征化以用于聚类
  2. 智能区域分类 - 然后使用传统机器学习技术和基于智能体的处理相结合的方式,将聚类分类为特定类型的区域
  3. 自适应表格分割 - 评分系统评估区域之间的边界质量,并迭代优化边界
  4. 层级结构保留 - ****在每个表格内应用智能提取,保留多级表头和复杂表格结构,并尽可能保留类型(日期、数字、布尔值、文本)

输出内容与格式

LlamaSheets 生成多种类型的输出,主要以 parquet 文件形式:

  • 表格数据:干净、带类型的数据框,保留数据类型(日期、数字、字符串、布尔值)。列名从表头行智能提取。
  • 额外数据:电子表格中不明确属于结构化数据表的数据(注释、标题等)
  • 单元格元数据:每个单元格 40 多个特征,包括格式(font_bold、background_color_rgb)、位置(row_number、coordinate)、数据类型(is_date_like、is_percentage)和布局(is_merged_cell、horizontal_alignment)
  • 工作表上下文:可选的 LLM 生成的工作表标题和描述,以及提取的表格区域

使用场景

LlamaSheets 可在各种电子表格工作流程中实现 AI 自动化。以下仅举几例:

  • 财务分析:从具有合并表头的复杂财务报告中提取季度收入表,并自动计算 KPI
  • 多区域数据整合:解析并合并来自数十个格式不一致的区域电子表格的销售数据
  • 带元数据的预算解析:利用背景颜色和粗体格式识别预算文件中的部门分组和类别层级
  • 自动化周报:构建端到端流水线,从定期上传的电子表格中提取、验证、分析并生成报告
  • 自定义 Agent 集成:将提取的 Parquet 文件加载到 AI Agent 框架(如 LlamaIndex)中,用于交互式数据探索、脚本生成等

示例:5 行代码完成提取与分析

from llama_cloud_services.beta.sheets import LlamaSheets

client = LlamaSheets(api_key="llx-...")
results = await client.aextract_regions("budget.xlsx")

# Download as pandas DataFrame
df = await client.adownload_region_as_dataframe(
  results.job_id,
  results.regions[0].region_id,
  result_type=regions[0].region_type
)

# Access rich cell metadata
metadata = await client.adownload_region_as_dataframe(
  results.job_id,
  results.regions[0].region_id,
  result_type="cell_metadata"
)

现已推出测试版

LlamaSheets 今日起以测试版形式 通过多种接口提供:

  • 🧩 Playground UI: 直接在浏览器中访问 cloud.llamaindex.ai 试用示例电子表格
  • 💻 Python SDK: llama-cloud-services 包提供异步/同步方法,用于上传文件、创建提取任务、轮询完成状态,以及将 Parquet 结果下载为 pandas DataFrame 或原始字节
  • 🌐 REST API: 通过 /api/v1/beta/sheets/ 端点实现 四步工作流:(1) 上传文件 → (2) 使用解析配置创建任务 → (3) 轮询完成状态 → (4) 通过预签名 URL 下载 Parquet 文件
  • 📘 构建 Agent 通过将提取的 Parquet 文件和单元格元数据加载到 Agent 的上下文中,与任何 Agent 框架(LlamaIndex、Claude Code、Cursor 等)集成

下一步计划

在测试期间,我们将专注于性能优化、提升准确性、增加输出格式,以及未来基于区域和表格提取的 API,以提供更端到端的体验。

我们鼓励用户试用 API,就提取质量提供反馈,并帮助我们确定正式发布时的功能优先级!

告诉我们你的想法:

来源:LlamaIndex:产品、工程与评测 · llamaindex.ai