月度归档:2026年01月

PDF扫描文件加入RAG

1 PDF分页为PNG输出 pdf2image

from pdf2image import convert_from_path
pages = convert_from_path(pdf_path, dpi=200, fmt='png')  # 逐页 PIL.Image
for i, page_img in enumerate(pages, 1):
        # 图片 → base64(不落地磁盘)
        import base64, io
        buffer = io.BytesIO()
        page_img.save(buffer, format='PNG')
        img_b64 = base64.b64encode(buffer.getvalue()).decode()

2调用OCR程序 ,可以使用ollama 直接将图片转为text 然后逐步添加为一个文本变量 添加文件信息的metadata

import ollama  # 需安装:pip install ollama
response = ollama.chat( model=model, messages=[ { "role": "user", "content": [ # 文本指令 {"type": "text", "text": "请识别这张图片中的所有文字,按原格式输出,不要解释。"}, # Base64 图片(type 需匹配格式:image/png 或 image/jpeg) {"type": "image/png", "data": img_b64} ] } ] )

3直接是将文本变量切分 然后向量化