文档

快速开始

在几分钟内开始使用 AI 图片描述 API。本指南将带您完成将 AI 驱动的图片描述集成到应用程序中的基本步骤。

前提条件

在开始之前,请确保您拥有:

  • 账户: 在 aidescribepicture.com 注册
  • API 密钥: 在设置中创建 API 密钥
  • 积分: 购买图片描述积分
  • 图片 URL: 用于测试的公开可访问图片 URL

第 1 步:获取您的 API 密钥

  1. 访问 aidescribepicture.com
  2. 使用您的 Google 账户登录
  3. 导航到设置 > API 密钥
  4. 点击"创建新 API 密钥"按钮
  5. 输入密钥名称(例如,"我的应用")
  6. 创建密钥后,复制完整的密钥值(请妥善保管!)

API 密钥格式

  • sk- 开头
  • 包含随机生成的字符
  • 示例:sk-abc123def456ghi789...

第 2 步:进行您的第一次 API 调用

使用 cURL

curl -X POST https://aidescribepicture.com/api/api-call/describe-picture \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
    "imageUrl": "https://example.com/image.jpg",
    "prompt": "详细描述这张图片"
  }'

使用 JavaScript

async function describeImage(imageUrl, apiKey, prompt = null) {
  try {
    const response = await fetch('https://aidescribepicture.com/api/api-call/describe-picture', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
        'Authorization': `Bearer ${apiKey}`
      },
      body: JSON.stringify({
        imageUrl: imageUrl,
        prompt: prompt
      })
    });
 
    if (!response.ok) {
      const error = await response.text();
      throw new Error(`API 错误: ${response.status} - ${error}`);
    }
 
    const result = await response.json();
    
    // 提取描述内容
    const description = result.choices[0].message.content;
    return description;
  } catch (error) {
    console.error('描述图片时出错:', error);
    throw error;
  }
}
 
// 使用示例
const description = await describeImage(
  'https://example.com/image.jpg',
  'your-api-key-here',
  '详细描述这张图片'
);
console.log('图片描述:', description);

第 3 步:处理响应

API 返回包含图片描述的 JSON 响应:

{
  "choices": [
    {
      "message": {
        "content": "这张图片显示了一只红狐狸的特写,它正对着镜头。狐狸有蓬松的橘色和白色毛发,以及竖立的耳朵和炯炯有神的棕色眼睛。背景是模糊的,可能是在雪地里或一个明亮的环境中。"
      }
    }
  ]
}

choices[0].message.content 字段包含实际的图片描述文本。

第 4 步:显示结果

在 HTML 中

<div id="description">
  <p id="image-description"></p>
</div>

在 JavaScript 中

// 显示描述
const descriptionElement = document.getElementById('image-description');
descriptionElement.textContent = description;

第 5 步:错误处理

始终实现适当的错误处理:

try {
  const description = await describeImage(imageUrl, apiKey, prompt);
  // 处理成功
  console.log('描述:', description);
} catch (error) {
  if (error.message.includes('401')) {
    console.error('无效的 API 密钥');
  } else if (error.message.includes('402')) {
    console.error('积分不足');
  } else if (error.message.includes('429')) {
    console.error('超出速率限制');
  } else {
    console.error('API 错误:', error.message);
  }
}

API 密钥管理

在设置中管理密钥

  • 查看所有 API 密钥列表
  • 查看密钥使用统计
  • 停用或删除未使用的密钥
  • 查看密钥的最后使用时间

安全最佳实践

  • 永远不要在客户端代码中硬编码 API 密钥
  • 使用环境变量存储密钥
  • 定期轮换 API 密钥
  • 为不同环境使用不同的密钥

环境变量示例

# .env 文件
IMAGE_DESCRIPTION_API_KEY=sk-your-api-key-here
// 在代码中使用
const apiKey = process.env.IMAGE_DESCRIPTION_API_KEY;