微信扫码
与创始人交个朋友
我要投稿
在构建知识库时,一个常见的挑战是将所有内容转换为纯文本。在处理幻灯片、PDF、图像等媒体源时,这可能会有限制。
那么,我们如何充分利用非纯文本的数据呢?
得益于最近的AI进展,现在变得比以往任何时候都更容易和便宜。通过使用具有视觉能力的大型语言模型(LLMs),我们可以转录成千上万的图像,不仅捕捉文本,还理解内容之间的关系。这些模型甚至可以在需要时描述图像中的视觉对象,提供比OCR更丰富、更详细的转录。
我们将通过以下三个简单步骤开始:
收集数据:收集你计划使用的图像,确保它们组织良好且信息不过载。
上传数据:设置一个AWS S3存储桶来存储你的图像,确保基于云的AI模型可以在稍后访问它们。
转录数据:配置OpenAI API(或任何其他LLM API)来处理你的图像转录。
在设置好这些组件后,我们将讨论如何自动化整个过程,使在几分钟内转录数百张图像变得高效。
首先,收集您将用作数据源的图像。
这些图像可以来自照片、幻灯片、PDF等。
尽量避免在单个图像中塞入大量信息——无论其来源是什么。这主要是为了避免给LLM带来负担,并减少出错或遗漏信息的可能性。
虽然自动化过程主要是为了处理如 .png、.jpg 和 .jpeg 等图像文件,但也可以适应其他文件类型。
由于我们将使用基于云的 LLM,如 GPT-4o 进行转录 (您也可以使用其他模型),我们需要将所有图像上传到服务器。
最简单的方法之一是使用 AWS S3 存储桶,这允许我们几乎无限制地上传图像——与 Imgur 等提供商不同。
您使用哪个提供商并不重要,只需确保图像可以通过其链接公开访问。否则,基于云的 LLM 将无法访问它们。
步骤 1:登录到 AWS 管理控制台
访问 AWS 管理控制台。
使用您的 AWS 凭证登录。
在 AWS 管理控制台中,在搜索栏中输入“S3”,并从服务列表中选择 S3。
步骤 2:创建一个新存储桶
点击 创建存储桶 按钮。
输入一个唯一的 存储桶名称 — 必须是全球唯一并符合 AWS 命名规范。
取消选中“阻止所有公共访问”复选框。
点击页面底部的 创建存储桶。
步骤 4:配置存储桶以允许公共访问
转到新存储桶的 权限 标签。
点击 存储桶策略,并输入以下 JSON 策略以允许公共读取访问:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::{enter_bucket_name}/*"
}
]
}
重要!确保用您自己的存储桶名称替换 {enter_bucket_name}。
存储桶设置完成!
这将在转录过程中发挥关键作用,您稍后会看到所有内容是如何结合在一起的。
如前所述,我们将通过 OpenAI 的 API 使用 GPT-4o 进行此示例。
为了做到这一点,请确保您已遵循以下步骤:
访问 OpenAI 网站: 前往 OpenAI 的 API 密钥 部分。
注册: 点击 注册 按钮并创建一个新账户。如果您已经有账户,请直接登录。
注册API访问权限: 按照说明注册API访问权限。您可能需要提供一些账单信息。
进入API密钥部分: 一旦您的帐户设置并获得批准,请返回到OpenAI仪表板中的API密钥部分(上面提供的链接)。
生成API密钥: 点击创建API密钥按钮以生成新的API密钥。确保安全存储此密钥,因为稍后您将需要它。
太好了!现在我们有了自己的API密钥,稍后我们将用它来处理我们的图像。
注意:如果您刚创建了帐户,您可能无法访问诸如GPT-4o的模型。在这种情况下,您可以选择使用GPT-4o Mini或通过Azure的API访问OpenAI的模型。
现在设置过程已经完成,我们可以进入有趣的部分——节省数百小时的时间,并在此过程中使您的知识库提高十倍!
我花了相当长的时间来完善这个脚本,但现在我希望能为您节省大量的时间和精力。
您可以通过这个 GitHub 仓库 完全免费地 访问脚本、提示模板 和 示例 ‘.env’ 文件。
https://github.com/MarcosSan4/ImageKB/tree/main
在深入脚本之前,请确保您已:
在‘.env’中设置 环境变量 (GitHub 仓库中有示例文件)。
安装所有 要求 (可在‘requirements.txt’中找到)。
脚本的核心功能围绕处理图像、将其上传到 AWS S3 存储桶,然后将图像发送到 GPT-4o 进行转录。其工作原理如下:
上传图像到 S3:脚本遍历指定的 'folder_path' 中的所有文件夹,将每个图像从指定文件夹上传到 AWS S3 存储桶。它还确保图像可公开访问。
使用 GPT-4o 转录图像:一旦图像上传到 S3,其 URL 将与预定义提示一起发送到 OpenAI 的 GPT-4o 模型。GPT-4o 处理图像并返回其内容的详细转录。
存储转录:接收到的转录被附加到各自图像文件夹中的 'transcriptions.txt' 文件中。该文件累积所有处理图像的转录,以分隔符分隔以便清晰,并在文件夹之间进行划分。
除了主要的图像处理工作流程外,该脚本还包含几个附加功能,以增强其实用性:
总结和向量化:在收集转录内容后,脚本可以将内容总结为总体概念,并创建新的向量,以确保最大程度地覆盖内容。这些向量对于将数据集成到知识库中至关重要。
文件夹处理:脚本递归处理指定目录内的所有子文件夹,确保每个图像都被处理。这使得组织和管理大型数据集变得容易。
更新转录文件名:为了跟踪每个转录文件中的向量数量,脚本可以更新文件名以包含此信息。
合并转录:它提供选项将文件夹内的所有转录合并为一个文件,可以选择保留在各自的主文件夹中或合并到根目录中的一个文件。
计数向量:脚本统计每个主文件夹中的向量数量,提供数据量的快速概览,并确保完整性。
上传向量到Qdrant:最后,脚本将所有向量上传到Qdrant向量存储。通过修改代码,可以自由使用其他数据库提供商。
在一个知识就是力量的世界里,不要让您的数据仅限于纯文本。利用 AI 无缝转录并将图像整合到您的知识库中,将数小时的手动工作转变为高效的自动化流程。
无论您拥有一小部分图像还是庞大的集合,这种方法都将增强您数据的价值和可用性。
请记住,关键步骤是:
收集数据:收集您的图像。
上传数据:将其存储在云服务中。
转录数据:使用 AI 生成详细描述。
组织和向量化:确保您的知识库全面且高效。
那么… 就到这里吧!
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-11-23
FastRAG半结构化RAG实现思路及OpenAI O1-long COT蒸馏路线思考
2024-11-23
检索增强生成(RAG):解密AI如何融合记忆与搜索
2024-11-23
如何提高RAG系统准确率?12大常见痛点及巧妙解!
2024-11-23
RAG 2.0性能提升:优化索引与召回机制的策略与实践
2024-11-22
RAG技术在实际应用中的挑战与解决方案
2024-11-22
从普通RAG到RAPTOR,10个最新的RAG框架
2024-11-22
如何使用 RAG 提高 LLM 成绩
2024-11-21
提升RAG性能的全攻略:优化检索增强生成系统的策略大揭秘 | 深度好文
2024-07-18
2024-05-05
2024-07-09
2024-05-19
2024-07-09
2024-06-20
2024-07-07
2024-07-07
2024-07-08
2024-07-09
2024-11-06
2024-11-06
2024-11-05
2024-11-04
2024-10-27
2024-10-25
2024-10-21
2024-10-21