使用MiniMax模型从PDF文件中提取文本和图片。当用户需要处理PDF内容、从PDF中提取信息或分析PDF文档时调用此技能。
本技能使用MiniMax AI模型处理PDF文件并提取内容(文本和图片)。
在以下情况下调用此技能:
使用此技能前,请确保:
使用PyMuPDF(fitz)打开并读取PDF:
python
import fitz # PyMuPDF
def extractpdfcontent(pdf_path):
从PDF中提取文本和图片。
doc = fitz.open(pdf_path)
content = {
text: [],
images: []
}
for page_num in range(len(doc)):
page = doc[page_num]
# 提取文本
text = page.get_text()
if text.strip():
content[text].append({
page: page_num + 1,
text: text
})
# 提取图片
images = page.get_images()
for img_index, img in enumerate(images):
xref = img[0]
baseimage = doc.extractimage(xref)
imagebytes = baseimage[image]
# 保存或处理图片
content[images].append({
page: page_num + 1,
index: img_index,
bytes: image_bytes,
ext: base_image[ext]
})
doc.close()
return content
使用MiniMax的视觉模型分析提取的内容:
python
import base64
from minimax import MiniMax
def analyzewithminimax(text=None, image_bytes=None, prompt=None):
使用MiniMax模型分析内容。
messages = []
# 准备内容
content = []
if text:
content.append({type: text, text: text})
if image_bytes:
# 将图片转换为base64
base64image = base64.b64encode(imagebytes).decode(utf-8)
content.append({
type: image_url,
image_url: {
url: fdata:image/jpeg;base64,{base64_image}
}
})
if prompt:
content.insert(0, {type: text, text: prompt})
messages.append({
role: user,
content: content
})
# 调用MiniMax API
response = client.chat.completions.create(
model=abab6.5s-chat, # 或适当的视觉模型
messages=messages
)
return response.choices[0].message.content
结合提取和分析:
python
def processpdf(pdfpath, analysis_prompt=请分析这个PDF的内容):
完整的PDF处理工作流程。
# 步骤1:提取内容
content = extractpdfcontent(pdf_path)
results = {
text_analysis: [],
image_analysis: []
}
# 步骤2:分析文本
for text_item in content[text]:
analysis = analyzewithminimax(
text=text_item[text],
prompt=f{analysisprompt}\n\n文本内容:\n{textitem[text]}
)
results[text_analysis].append({
page: text_item[page],
analysis: analysis
})
# 步骤3:分析图片
for img_item in content[images]:
analysis = analyzewithminimax(
imagebytes=imgitem[bytes],
prompt=请描述这张图片的内容
)
results[image_analysis].append({
page: img_item[page],
analysis: analysis
})
return results
python
for item in results[image_analysis]:
print(f第{item[page]}页图片:{item[analysis]})
MiniMax提供不同的模型。根据您的需求选择:
该技能支持在以下平台通过对话安装:
帮我安装 SkillHub 和 pdf-processor-for-minimax-1776026489 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 pdf-processor-for-minimax-1776026489 技能
skillhub install pdf-processor-for-minimax-1776026489
文件大小: 2.99 KB | 发布时间: 2026-4-13 11:26