OpenAI
页面内容为机器翻译。查看英文原文

在 ChatGPT Enterprise 中优化文件上传

了解 ChatGPT Enterprise 功能如何根据文件类型、数量和大小处理文件。根据文件要求改进输出。

更新于:12 days ago

ChatGPT Enterprise 现已支持读取和理解提示中包含的 PDF 文件内嵌的视觉内容(图像、图表、示意图等)。用户可以上传 PDF,ChatGPT 可以解读该文件中的文本以及任何视觉元素。

有关详细信息,请参阅PDF 视觉检索常见问题

ChatGPT Enterprise 支持通过以下几种方式上传文件:

本指南介绍 ChatGPT Enterprise 功能如何根据文件类型、数量和大小处理文件,并探讨如何根据文件要求改进输出结果。

摘要

ChatGPT Enterprise 处理不同文件类型的方式差异很大:从 PDF、演示文稿和 Word 文件等文本文档中提取文本;使用 Python 代码分析电子表格中的结构化数据;以及通过 GPT-Vision 描述图像文件。了解每种文件类型会触发哪种工作流,是获得预期结果的关键。

对于文本文档,ChatGPT Enterprise 会尽可能将相关文本直接与提示词一同纳入上下文,并通过搜索系统获取更多信息。这种方法很适合回答具体问题。不过,在总结超大型文档或比较多个大型文件等复杂任务中,这种方法可能难以取得理想效果。请继续阅读,了解改进结果的策略。

根据类型处理文件

ChatGPT Enterprise 主要通过三种方式处理文件:文本提取、代码分析和图像解读。ChatGPT Enterprise 采用哪种工作流取决于文件类型

文本检索代码解释器图像处理视觉检索
文件类型示例pptx、docx、txt、md、json、xml、pdf*
* 作为

GPT 知识


项目文件
上传的 PDF
csv、xls、xlsx*
*注意:代码解释器可以处理任何文件类型,但对于电子表格,ChatGPT Enterprise 通常默认使用 CI
jpg、pngpdf*
* 用户提示词中包含的 PDF
处理方式从文件中提取文本——部分文本会直接“填充”到上下文窗口中,另有部分文本会存储起来供搜索使用代码解释器会将文件传递给 Python 进行处理图像由多模态模型直接解读,但存在一些

已知限制
文本检索与图像处理相结合。系统以数字方式提取文本,并由多模态模型直接解读视觉内容。

对于纯文本文件、图像文件或结构清晰的数据文件(例如包含交易记录的 Excel 表格),上述分类对应的是最佳处理方式。

但也存在一些不太明确的模糊情况,例如:

  • 系统不会处理 PDF 以外其他文件中嵌入的图像。如需处理这些图像,请在上传前将文件转换为 PDF。

  • ChatGPT Enterprise 始终会使用代码解释器来处理电子表格,即使文档中包含大量文本也是如此。例如,如果您让 ChatGPT Enterprise 翻译一个含有 10 行文本的 CSV 文件,它会尝试使用 Python 库进行翻译,其准确度不如由模型直接生成译文。为减轻这一问题,可尝试将电子表格导出为基于文本的格式(例如 PDF)。

  • 同样,如果您上传的 JSON 文件中包含结构化交易表,ChatGPT Enterprise 会将该文件解读为纯文本。如果您想分析 JSON 文件中的数据,请在提示词中指示模型使用代码解释器。

基于大小处理文件

ChatGPT Enterprise 使用的模型最大上下文窗口为 128k Token(约 200 页文本)。不过,并非所有 Token 都用于纳入上传文件中的文本。“填充”的 Token 数量因使用类型而异。

ChatGPT Enterprise 会“填充”一定量的文本,其余文本会发送到私有搜索索引(“向量存储”,这是一种用于高效存储和检索大量文本的数据库)。当你提问时,ChatGPT Enterprise 会引入已包含的文本,以及从私有搜索索引中检索到的相关片段。

如果你上传单个文档,ChatGPT Enterprise 会从文档开头开始纳入文本,直到达到其限制。如果你上传多个文档,ChatGPT Enterprise 会纳入每个文档的部分或全部内容。文档中的所有文本也会发送到私有搜索索引。

文本文档的上下文填充

此功能正在积极开发中。因此,以下详细信息可能会更改,恕不另行通知。

ChatGPT Enterprise 可在上下文窗口中处理上传文档中的最多 110k 个 Token。如果你上传的一个或多个文档合计少于 110k 个 Token,则会纳入完整内容。

对于超过 110k 个 Token 的单个文档,只会从开头开始纳入前 110k 个 Token。其余内容只会发送到私有搜索索引。

如果上传了多个文档,且其合计超过 110k 个 Token,ChatGPT Enterprise 会使用两步流程来平衡文档呈现:

  1. 提取最多 55k 个 Token,并在上传的文档之间平均分配。

  1. 对于第一步中未完全呈现的文档,根据每个文档剩余的 Token 数按比例分配剩余的 55k 个 Token。

  1. 任何剩余的 Token 只会发送到私有搜索索引。

你可以将文本文档的文本复制到 OpenAI Tokenizer 中,以估算其中的 Token 数量。

多媒体 PDF 的上下文填充

当用户上传同时包含文本和图像的 PDF 时,视觉检索使 ChatGPT 能够在处理数字化提取文本的同时,原生处理这些图像。以下步骤补充了我们针对多媒体 PDF 的标准上下文处理流程:

  • 图像提取和嵌入:图像会与其关联的数字文本一起被提取并嵌入。

  • 智能缩放:图像会自动缩放,以在信息质量和可用上下文窗口的高效使用之间保持平衡。

当上传的 PDF 超过 110k 个 Token 限制时,图像和文本都会嵌入到私有搜索索引中。文本嵌入会引用相关图像,使 ChatGPT 能够根据用户查询检索相应的文本-图像对。随后会使用 ChatGPT 的原生多模态能力处理检索到的图像。

准确估算多媒体 PDF 的 Token 需求具有挑战性。测试表明,约 350 页混合文本和图像会完全用尽 110k 个 Token 的上下文窗口。

基于模型类型的搜索策略

GPT 系列和 o 系列模型都支持文件上传,并使用相同的上下文填充和搜索嵌入逻辑。所有模型都会对私有搜索索引执行混合搜索,结合关键词和语义方法。在混合搜索中,模型会根据用户的提示生成搜索短语,私有搜索索引则据此检索相关文本和图像。

不过,这些模型在搜索超出上下文窗口的大型文档时方式有所不同:

GPT 系列模型

  • 每个提示词仅进行一次搜索:GPT 系列模型针对每个用户提示词执行一次搜索。

  • 适用场景:非常适合回答大量文档中包含的简单明确的问题。

查询示例:

  • “提前退休方面的人力资源政策是什么?”

  • process_order 函数有什么作用?”

o 系列模型

  • 每个提示词可进行多次搜索:针对每个用户提示词,可执行多次搜索(通常为 2~3 次),每次使用不同的搜索短语。搜索按顺序执行,模型可根据之前搜索到的信息调整搜索方法。

  • 适用场景:更适合回答需要在大量文档中进行多次定向搜索的复杂问题。

查询示例:

  • “提前退休、育儿假和海外调动方面的人力资源政策是什么?”

  • “说明 process_order 函数的作用,列出该函数调用的所有方法,并简要介绍每个被调用的方法。”

尽管 o 系列模型有这些优势,但当一项查询需要三次以上的搜索时,仍可能难以应对。

改进文件搜索结果的提示

  • 对于需要多次搜索的复杂问题,尝试使用 o 系列模型。

  • 请记住,响应可能会因你上传文档的类型、数量和大小而异。

  • 通常,加载更少且更聚焦的文档会带来更高的准确性。

  • 将包含多个问题的主题拆分为单个问题:

    • 如果你需要了解每个州的人力资源政策,请逐个询问。

    • 如果你需要总结许多文档,请一次请求总结一个文档。如果该文档有数百页,请考虑将其拆分为更小的部分。

      • 如果你提供的是多个摘要而不是完整文档,可以让 ChatGPT Enterprise 编写“摘要的摘要”。

    • 如果你有一个 RFP 的 CSV(每一行都是一个不同的问题),请逐个提出这些问题,而不是只加载 CSV 并请求单个响应。

  • 寻找审核模型响应的方法。示例 GPT 指令如下:

# 上下文 

你是理解文档的专家。用户将附加一个文档并提出问题。他们需要能够将你的回答关联回你从文本中获取答案的确切位置。

# 指令

1. 根据用户附加的文档回答用户的问题,并使用以下提供的确切格式

# 格式

- 问题:{ 重复用户的问题 }
- 回答:{ 提供对用户问题的回答 }
来源:
- - 章节编号:{ 提供你从中提取答案的章节编号 }
- - 章节标题:{ 提供你从中提取答案的章节标题 }
- - 原文:{ 提供你从中提取答案的确切文本 }

# 规则

- 回答要清晰简洁
- 仅提供文档中给出的信息
- 如果你无法在文档中找到答案,请只回复“未找到信息。”

这篇文章对你有帮助吗?