DeepSeek-OCR
DeepSeek-OCR专用于文档识别与图像转文本场景,能将图像中的文档内容转换为可编辑文本。
该模型仅支持单轮、单张图像的独立识别任务。
权限说明
调用本文API,需使用API Key鉴权方式。使用API Key鉴权调用API流程,具体调用流程,请查看认证鉴权。
请求参数
大模型ID,固定值为 deepseek-ocr
聊天历史信息列表
- messages成员仅支持user
- 输入总长度不能超过对应model的输入字符限制和输入tokens限制
显示子属性
隐藏子属性
显示子属性
隐藏子属性
固定值为:user
message名
多选一,只需要符合下列任意一组子节点
- 不能为空
- 最后一个message对应的content不能为blank字符,如空格、"\n"、“\r”、“\f”等
显示子属性
隐藏子属性
显示子属性
隐藏子属性
显示子属性
隐藏子属性
当前支持以下类型:
- text:文本
- image_url:图像url
文本信息,当参数type为text时,必填
推荐的预设提示词,以获得最佳使用效果:
- 将文档内容转换为markdown格式:
Convert the document to markdown. - 对该图像进行文本识别:
OCR this image. - 不考虑版式,直接提取所有文本:
Free OCR. - 解析文档中的图形或表格内容:
Parse the figure. - 详细描述图片内容:
Describe this image in detail. - 在图像中定位 <|ref|>xxxx<|/ref|> 的位置:
Locate <|ref|>xxxx<|/ref|> in the image.
显示子属性
隐藏子属性
图像url
- 传入图片链接,输入为图像url时,url链接在UTF-8编码下最大不超过1024个字节,超出限制后图片无法下载
- 图片的Base64编码,传入Base64编码格式时,传入的格式需为:data:image/<图片格式>;base64,<Base64编码>
- 图像的大小不超过10MB,最短边长不小于5px
是否以流式接口的形式返回数据,默认false
流式响应的选项,当字段stream为true时,该字段生效
显示子属性
隐藏子属性
流式响应是否输出usage
- 设置为true时,在最后一个chunk会输出一个字段,这个chunk上的usage字段显示整个请求的token统计信息
- 设置为false时,流式响应默认不输出usage
生成停止标识,当模型生成结果以stop中某个元素结尾时,停止文本生成
- 每个元素长度不超过20字符
- 最多4个元素
显示子属性
隐藏子属性
停止标识,长度不超过20字符
表示最终用户的唯一标识符
POST /v2/chat/completions HTTP/1.1
Host: qianfan.baidubce.com
Authorization: Bearer <API Key>
Content-Type: application/json
{
"model": "deepseek-ocr",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Free OCR."
},
{
"type": "image_url",
"image_url": {
"url": "https://e*****le.com/image1.jpg"
}
}
]
}
]
}
示例代码
curl --location 'https://qianfan.baidubce.com/v2/chat/completions' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer bce-v3/ALTAK-*********/614fb**********' \
--data '{
"model": "deepseek-ocr",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "OCR this image."
},
{
"type": "image_url",
"image_url": {
"url": "https://e****le.com/image1.jpg"
}
}
]
}
]
}'
import requests
import json
def main():
url = "https://qianfan.baidubce.com/v2/chat/completions"
payload = json.dumps({
"model": "deepseek-ocr",
"messages": [
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,/9j/4AA*********AQAAAQABAAD/2wBDAA..."
}
},
{
"type": "text",
"text": "OCR this image."
}
]
}
]
})
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer bce-v3/ALTAK-*********/614fb**********'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
if __name__ == '__main__':
main()
返回响应
一分钟内允许的最大请求次数
一分钟内允许的最大输入tokens消耗
一分钟内允许的最大输出tokens消耗
达到TPM速率限制前,剩余可消耗的tokens数配额,如果配额用完,将会在0-60s后刷新
达到TPM速率限制前,剩余可消耗的输入tokens数配额,如果配额用完,将会在0-60s后刷新
达到TPM速率限制前,剩余可消耗的输出tokens数配额,如果配额用完,将会在0-60s后刷新
本次请求的唯一标识,可用于排查问题
回包类型:chat.completion
时间戳
返回模型ID:deepseek-ocr
多选一,只需要符合下列任意一组子节点
显示子属性
隐藏子属性
stream=false时,返回该内容
显示子属性
隐藏子属性
choices列表中的序号
响应信息,当stream=false时返回
显示子属性
隐藏子属性
role=assistant
message名
返回内容
输出内容标识
- stop:模型自然停止或命中提供的停止序列
- length:达到了最大的token数
- content_filter:输出内容被截断、兜底、替换等
安全细分类型,当stream=false,flag值含义如下
- 0或不返回:安全
- 1:低危不安全场景,可以继续对话
- 2:禁聊:不允许继续对话,但是可以展示内容
- 3:禁止上屏:不允许继续对话且不能上屏展示
- 4:撤屏
当flag不为0时,该字段会告知第几轮对话有敏感信息;如果是当前问题,ban_round = -1
stream=true时,返回该内容
显示子属性
隐藏子属性
choices列表中的序号
响应信息,当stream=true时返回
显示子属性
隐藏子属性
仅在流式第一帧返回
流式响应内容
输出内容标识
- stop:模型自然停止或命中提供的停止序列
- length:达到了最大的token数
- content_filter:输出内容被截断、兜底、替换等
安全细分类型,说明:当stream=true时,返回flag表示触发安全
当flag不为0时,该字段会告知第几轮对话有敏感信息;如果是当前问题,ban_round = -1
token统计信息
- 同步请求默认返回
- 流式请求默认不返回
显示子属性
隐藏子属性
问题tokens数,包含历史问答
回答tokens数
总tokens数
{
"id": "as-*****rpmh3",
"object": "chat.completion",
"created": 1762498170,
"model": "deepseek-ocr",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "\n电子发票(铁路电子客票)\n发票号码:2432916804000xxxxxx\n开票日期:2024年11月15日\n南京南站\nG1948\n郑州东站\nNanjingnan\nZhengzhoudong\n2024年11月14日 11:46开\n04车12A号\n二等座\n票价:¥337.50\n4107281991****5515 读小光\n电子客票号:1680489086111492054xxxxxxx\n换开 原发票号码:2432916804000xxxxxx\n购买方名称:读小光公司\n统一社会信用代码:91410728MA9Kxxxxxx\n买票请到12306 发货请到95306\n中国铁路祝您旅途愉快"
},
"finish_reason": "stop",
"flag": 0
}
],
"usage": {
"prompt_tokens": 898,
"completion_tokens": 169,
"total_tokens": 1067
}
}
错误码
如果请求错误,服务器返回的JSON文本包含以下参数。
| 名称 | 描述 |
|---|---|
| code | 错误码 |
| message | 错误描述信息,帮助理解和解决发生的错误 |
| type | 错误类型 |
更多相关错误码,请查看模型错误码说明。
