Image Describer API 是一款强大的图像理解工具,它能够基于您提供的图像和问题,智能地生成准确、详细且富有洞察力的图像描述。这款 基于AI图像识别 API 能够理解和分析图像内容,并根据您的提示(prompt)生成相应的文本描述。它适用于各种图像理解、图像分析和图像内容生成场景,让您轻松实现图像问一问,图像到文本的转换。
Image Describer API 可以帮助您在以下领域高效地进行图像理解和内容生成:
要访问 Image Describer API,您必须首先获取一个有效的 API 密钥。密钥用于验证您的请求和确保 API 的安全访问。
复制您的密钥: 请注意,密钥只会完整显示一次。 点击复制图标将密钥复制到剪贴板,然后点击“确认”关闭对话框。
重要提示: 不要与他人共享您的 API 密钥,或将其暴露在浏览器或其他客户端代码中。妥善保管您的密钥以防止未经授权的访问。
POST https://api.imagedescriber.app/api/v1/generate_content
头部字段 | 类型 | 必填 | 描述 |
---|---|---|---|
content-type | string | 是 | application/json |
authorization | string | 是 | Bearer ${api_key},其中 ${api_key} 为您的 API 密钥 |
{
"image": "data:image/jpeg;base64,{image_base64_data}",
"prompt": "这是什么物体?描述它可能的用途。",
"lang": "zh"
}
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
image | string | 是 | 图片的 URL 或 Base64 编码数据。支持的图片格式请参考 图片格式说明。 |
prompt | string | 是 | 针对图像的提问或描述需求,例如:"这是什么?"、"描述一下这张图片。"。 |
lang | string | 否 | 返回描述的语言代码。默认为 en(英语)。支持的语言代码如下表所示。 |
代码 | 语言 |
---|---|
en | 英语 (默认) |
zh | 中文 |
fr | 法语 |
de | 德语 |
es | 西班牙语 |
ja | 日语 |
ko | 韩语 |
curl --location 'https://api.imagedescriber.app/api/v1/generate_content' \
--header 'content-type: application/json' \
--header 'authorization: Bearer your_api_key' \
--data '{
"image":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQE...",
"prompt":"这是什么物体?描述它可能的用途。",
"lang":"zh"
}'
import requests
import base64
def image_to_base64(image_path):
"""将图片转换为 Base64 编码"""
with open(image_path, "rb") as image_file:
encoded_string = base64.b64encode(image_file.read()).decode("utf-8")
return encoded_string
def generate_image_description(api_key, image_path, prompt, lang="zh"):
"""使用 Image Describer API 生成图像描述"""
url = "https://api.imagedescriber.app/api/v1/generate_content"
headers = {
"content-type": "application/json",
"authorization": f"Bearer {api_key}"
}
image_base64_data = image_to_base64(image_path)
payload = {
"image": f"data:image/jpeg;base64,{image_base64_data}",
"prompt": prompt,
"lang": lang
}
response = requests.post(url, headers=headers, json=payload, stream=True) # 使用 stream=True 处理流式响应
if response.status_code == 200:
for chunk in response.iter_content(chunk_size=None, decode_unicode=True): # 逐块处理响应内容
if chunk:
print(chunk, end='')
print() # 打印一个换行符以结束输出
else:
print(f"Error: {response.status_code}")
print(response.text)
# 示例用法
api_key = "your_api_key"
image_path = "your_image.jpg"
prompt = "这是什么物体?描述它可能的用途。"
generate_image_description(api_key, image_path, prompt)
import fs from 'fs';
// 服务端实现
const buffer = await fs.readFileSync("/temp/test.jpg");
const base64Image = buffer.toString('base64');
const imageData = `data:image/jpeg;base64,${base64Image}`;
// 客户端实现
const file:File = /* 来自 input 或 drop 事件的图片 */;
const arrayBuffer = await file.arrayBuffer();
const bytes = new Uint8Array(arrayBuffer);
const base64Image = btoa(String.fromCharCode.apply(null, bytes as any));
const imageData = `data:${file.type};base64,${base64Image}`;
const body = {
"image": imageData,
"prompt": "详细描述一下这张图片",
"lang": "zh"
};
const response = await fetch('https://api.imagedescriber.app/api/v1/generate_content', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer {your_api_key}'
},
body: JSON.stringify(body),
});
const result = await response.json();
console.log(result);
API 返回 JSON 格式的响应数据。data
对象中的 content
字段包含 Markdown 格式的生成图像描述。
{
"code": 0,
"message": "success",
"request_id": "unique_request_id_string",
"data": {
"content": "Markdown 格式的生成内容"
}
}
字段 | 类型 | 描述 |
---|---|---|
code | number | 状态码,0 表示成功,非 0 表示错误。 |
message | string | 状态消息,描述请求的状态。 |
request_id | string | 唯一请求 ID,用于追踪和排查问题。 |
data | object | 包含生成的内容。 |
content | string | 生成的**图像描述**文本。格式为 **Markdown**。 |
为了保证服务的稳定性和公平性,每个 API 密钥每分钟最多允许 5 个请求,相当于每小时 300 次请求。超出限制的请求将被拒绝,并返回错误码 1004
。
如何获取积分?
您可以访问 积分充值页面 购买积分,以支持更多 API 调用。我们提供多种套餐选择,以满足不同用户的需求。
以下表格列出了常见的错误码及其含义和解决方案:
错误码 | 描述 | 解决方案 |
---|---|---|
1002 | 未授权 | 请检查您的 authorization 头部是否正确设置。 |
1003 | 无效的 API 密钥 | 请检查您的 API 密钥是否正确,或重新获取 API 密钥。 |
1004 | 请求过多,超过频率限制 | 请降低您的请求频率,每分钟最多 5 个请求。 |
1005 | 参数无效 | 请检查您的请求参数是否符合规范。 |
2002 | 积分不足 | 请 充值积分。 |
2003 | 内容被安全过滤器阻止 | 请修改您的图片或提示词,确保内容符合规范。 |
2004 | 图片格式无效 | 请使用支持的图片格式,参考图片格式说明。 |
2005 | 图片上传失败 | 请检查您的图片 URL 是否有效,或稍后重试上传。 |
5050 | 内部服务器错误 | 请联系我们的技术支持团队,并提供 request_id。 |
目前支持的图片格式包括:JPEG
、PNG
、WebP
。图片大小不超过 4MB
如果您有任何问题或建议,请随时通过以下方式联系我们:
立即开始使用 Image Describer API,解锁图像理解的无限可能!