本文へ移動
すべてのドキュメント

ガイド

画像

DeepSeekは1リクエストあたり最大10枚の画像を、OpenAIの image_url 形式でリンクまたはデータURLとして読めます。GLMはテキストのみを読みます。

2026年10月26日 確認

画像を送る

メッセージの content をパーツのリストにします。画像は image_url パーツ、質問は text パーツにします。

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://nokeep.ai/v1",
    api_key=os.environ["NOKEEP_API_KEY"],
)

reply = client.chat.completions.create(
    model="deepseek-v4.1-flash-uncensored",
    messages=[{
        "role": "user",
        "content": [
            {"type": "image_url", "image_url": {"url": "https://example.com/receipt.jpg"}},
            {"type": "text", "text": "What does this receipt add up to?"},
        ],
    }],
)
print(reply.choices[0].message.content)

パソコン内の画像

データURLとして送ります。ファイルのバイト列をbase64にし、data:image/jpeg;base64, の後ろにつなぎます。

Python
import base64

with open("receipt.jpg", "rb") as f:
    url = "data:image/jpeg;base64," + base64.b64encode(f.read()).decode()

part = {"type": "image_url", "image_url": {"url": url}}

リクエストは最大12 MBまでです。大きな画像を複数データURLで送ると、すぐに上限に達します。リンクならリクエストが小さく保てます。

上限

  • 1リクエストあたり最大10枚の画像で、すべてのメッセージの合計です。それを超えると 400 too_many_images になります。
  • glm-5.3-flash-uncensored に送った画像は 400 unsupported_input で拒否され、そのエラーはDeepSeekを使うよう案内します。黙って削除されることはありません。
  • 動画と音声のパーツも同様に拒否されます。どちらのモデルも読めません。
  • 画像は、モデルがそれを読んだ入力トークンとして課金されます。