ollama gemma3离线使用案例

参考:
https://ai.google.dev/gemma/docs/core?hl=zh-cn
支持图像文本输入,窗口12万8
在这里插入图片描述
在这里插入图片描述

下载:
ollama run gemma3 (4b默认) 首先升级ollama
在这里插入图片描述
在这里插入图片描述

使用

curl访问:

curl -X POST http://192.168.0.81:11434/api/generate -d "{\"model\":\"gemma3:latest\",\"prompt\":\"roses are red\"}"

在这里插入图片描述

  • requests
import requests
import json
import base64

# 打开图片文件并读取内容
with open(r"C:\Users\loong\Downloads\ea66c06c1e1c05fa9f1aa39d98dc5bc1.jpg", "rb") as image_file:
    # 读取图片文件的二进制内容
    image_data = image_file.read()

    # 将二进制内容编码为Base64字符串
    base64_image = base64.b64encode(image_data).decode('utf-8')


print(base64_image)

url = "http://192.168.0.81:11434/api/chat"

data = {
    
    
    "model": "gemma3",
    "messages": [
        {
    
    
            "role": "user",
            "content": "描述下图片内容?",
            "images": [base64_image]
        }
    ]
}

headers = {
    
    'Content-Type': 'application/json'}

response = requests.post(url, data=json.dumps(data), headers=headers, stream=True)

# 输出响应内容
# print(response.text)
# 处理流式数据
for chunk in response.iter_content(chunk_size=1024):
    if chunk:
        # print(chunk.decode("utf-8"))
        # 解析JSON数据
        response_data = json.loads(chunk.decode("utf-8"))
        # 打印结果或进行其他处理
        print(response_data["message"]["content"], end='', flush=True)


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述