ollama的python SDK使用大模型的OCR

# ollama_vl.py
import ollama

def qwen3_vl_chat(image_path: str, prompt: str) -> None:
    """
    调用本地 Ollama 服务,使用 qwen3-vl:2b 做视觉问答。
    参数:
        image_path: 本地图片路径
        prompt    : 提问文本
    打印:
        模型回复字符串
    """
    with open(image_path, "rb") as f:
        img_bytes = f.read()

    response = ollama.generate(
        model="qwen3-vl:2b-instruct",
        prompt=prompt,

        #format='json', #没有json 请不要使用这个,使用prompt中强制输出json也可以
        images=[img_bytes],   # ollama 库直接支持 bytes 列表
        stream=False,
        options={
            "temperature": 0,     # 最 deterministic
            "top_p": 0.5,         # 可再收紧,也可保留默认
            "top_k": 20,          # 默认即可
            "num_predict": 2048   # 按需限制最大 token 数,防瞎飘
        }
    )
    print(response["response"])


# 简单自测
if __name__ == "__main__":
    qwen3_vl_chat("a.png", "请描述这张图片里有什么")
#Ollama中查看模型是否支持JSON ,如果结果中有json 就可以使用 format='json',这个参数
ollama show qwen3-vl:2b --parameters

发表回复