AI 替代文本生成器 API 是一项功能强大的服务,旨在自动为图片生成描述性的替代文本。通过利用先进的 AI 技术,该 API 能够分析您的图片并创建有意义、与上下文相关的 alt 文本,这对于网站可访问性(Accessibility)和 SEO 至关重要。使用像这样的图片 alt 文本生成器,可以帮助确保您的视觉内容能被搜索引擎理解。它还能为您节省数小时的人工编写时间,显著提升生产力。
AI 替代文本生成器 API 非常适用于各种需要为图片生成替代文本的关键应用场景:
要访问 AI 替代文本生成器 API,您必须首先获取一个有效的 API 密钥。该密钥用于验证您的请求身份,确保对 API 的安全访问。
重要提示: 请勿与他人分享密钥,或将其暴露在浏览器、客户端代码或任何其他不安全的位置。请妥善保管您的密钥以防未经授权的访问。
POST https://api.imagedescriber.app/api/v1/generate_alt_text
Header | 类型 | 是否必须 | 描述 |
---|---|---|---|
content-type | string | 是 | `application/json` |
authorization | string | 是 | `Bearer ${api_key}`,其中 `${api_key}` 是您的 API 密钥。 |
AI 替代文本生成器 API 接受以下请求结构:
{
"image": "data:image/jpeg;base64,{image_base64_data}",
"lang": "zh"
}
参数 | 类型 | 是否必须 | 描述 |
---|---|---|---|
image | string | 是 | 图片的 Base64 编码数据。支持的图片格式请参见图片格式详情。 |
lang | string | 否 | 返回的替代文本的语言代码。默认为 `en` (英语)。支持的语言代码列表见下文。 |
代码 | 语言 |
---|---|
en | 英语 (默认) |
de | 德语 |
zh | 简体中文 |
fr | 法语 |
es | 西班牙语 |
ja | 日语 |
ko | 韩语 |
it | 意大利语 |
pt | 葡萄牙语 |
ar | 阿拉伯语 |
nl | 荷兰语 |
pl | 波兰语 |
curl --location 'https://api.imagedescriber.app/api/v1/generate_alt_text' \
--header 'content-type: application/json' \
--header 'authorization: Bearer your_api_key' \
--data '{
"image":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQE...",
"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_alt_text(api_key, image_path, lang="zh"):
"""使用 AI 替代文本生成器 API 为图片生成替代文本"""
url = "https://api.imagedescriber.app/api/v1/generate_alt_text"
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}",
"lang": lang
}
response = requests.post(url, headers=headers, json=payload)
if response.status_code == 200:
result = response.json()
alt_text_data = result["data"]["alt_text"]
print("生成的描述:", alt_text_data["description"])
print("生成的替代文本:", alt_text_data["alt"])
print("剩余积分:", result["data"]["credits"]["remaining"])
else:
print(f"错误: {response.status_code}")
print(response.text)
# 使用示例
api_key = "your_api_key"
image_path = "your_image.jpg"
generate_alt_text(api_key, image_path)
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 或拖放事件的文件 */;
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,
"lang": "zh"
};
const response = await fetch('https://api.imagedescriber.app/api/v1/generate_alt_text', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer {your_api_key}'
},
body: JSON.stringify(body),
});
const result = await response.json();
console.log('生成的描述:', result.data.alt_text.description);
console.log('生成的替代文本:', result.data.alt_text.alt);
图片 alt 文本生成器 返回的响应中包含详细的描述和一个替代文本选项数组。
{
"code": 0,
"message": "success",
"request_id": "unique_request_id_string",
"data": {
"alt_text": {
"description": "详细的图片描述",
"alt": [
"alt1",
"alt2",
"..."
]
},
"credits": {
"amount": "本次调用消耗的积分",
"remaining": "本次调用后剩余的总积分"
}
}
}
字段 | 类型 | 描述 |
---|---|---|
code | number | 状态码,`0` 表示成功,非 `0` 表示错误。 |
message | string | 状态消息,描述请求的状态。 |
request_id | string | 唯一的请求 ID,用于追踪和问题排查。 |
data | object | 包含响应数据。 |
data.alt_text | object | 包含生成的描述和替代文本。 |
data.alt_text.description | string | 对图片内容的详细描述。 |
data.alt_text.alt | array | 为图片生成的替代文本字符串数组。 |
data.credits | object | 关于积分消耗和剩余余额的信息。 |
data.credits.amount | number | 本次 API 调用消耗的积分数量。 |
data.credits.remaining | number | 本次调用后您账户中剩余的总积分。 |
为保证服务的稳定和公平,每个 API 密钥的请求频率限制为每分钟 30 次(每小时 1800 次)。超过此限制的请求将被拒绝,并返回错误码 1004
。
如何获取更多积分?
您可以访问积分充值页面购买积分包,以支持更多的 API 调用。我们提供多种套餐以满足不同用户的需求。
下表列出了常见的错误码、其含义及解决方案:
错误码 | 描述 | 解决方案 |
---|---|---|
1002 | 未授权 | 请检查您的 `authorization` 请求头是否设置正确。 |
1003 | 无效的 API 密钥 | 请检查您的 API 密钥是否正确,或获取一个新的密钥。 |
1004 | 请求过于频繁 | 请降低您的请求频率,最大为每分钟 30 次。 |
1005 | 无效的参数 | 请检查您的请求参数是否符合规范。 |
2002 | 积分不足 | 请充值您的积分。 |
2003 | 内容被安全过滤器拦截 | 请修改您的图片,确保内容符合规定。 |
2004 | 无效的图片格式 | 请使用支持的图片格式,参考图片格式详情。 |
2005 | 图片上传失败 | 请检查您的图片数据是否有效,或稍后重试。 |
2006 | 无法将 AI 响应解析为预期的 JSON 格式。 | |
5050 | 内部服务器错误 | 请联系我们的技术支持团队,并提供 `request_id`。 |
目前支持的图片格式包括:JPG
、JPEG
、PNG
、WebP
。最大图片大小为 4MB。
使用 AI 替代文本生成器 API 自动为您的网站图片生成替代文本:
// 使用 AI 生成的替代文本增强图片 SEO
const enhanceImageSEO = async (imageElement, apiKey) => {
const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
canvas.width = imageElement.width;
canvas.height = imageElement.height;
ctx.drawImage(imageElement, 0, 0);
const base64Image = canvas.toDataURL('image/jpeg');
const response = await fetch('/api/v1/generate_alt_text', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${apiKey}`
},
body: JSON.stringify({ image: base64Image })
});
const result = await response.json();
const { alt } = result.data.alt_text;
// 更新图片的 alt 属性以优化 SEO 和可访问性
if (alt && alt.length > 0) {
imageElement.alt = alt[0];
}
};
将图片 alt 文本生成器集成到您的 CMS 工作流中:
# 在内容管理系统中批量处理图片
import os
import requests
from pathlib import Path
def bulk_generate_alt_text(directory_path, api_key):
"""处理目录中的所有图片以生成替代文本"""
image_extensions = ['.jpg', '.jpeg', '.png', '.webp']
for image_path in Path(directory_path).iterdir():
if image_path.suffix.lower() in image_extensions:
try:
# 为每张图片生成替代文本
result = generate_alt_text(api_key, str(image_path))
# 将元数据保存到附属文件中
metadata_path = image_path.with_suffix('.json')
with open(metadata_path, 'w') as f:
json.dump(result['data']['alt_text'], f, indent=2)
print(f"已处理: {image_path.name}")
except Exception as e:
print(f"处理 {image_path.name} 时出错: {e}")
# 用法
bulk_generate_alt_text("/path/to/images", "your_api_key")
如果您对我们的 AI 替代文本生成器 API 有任何疑问或建议,请随时通过以下方式与我们联系:
立即开始使用 AI 替代文本生成器 API,释放自动化图片可访问性与 SEO 的强大力量!