开发文档

Codeable API 文档

快速集成 AI 能力,为您的应用赋能。

快速开始

1. 获取 API Key

首先,您需要注册账户并在控制台创建 API Key:

  1. 注册账户登录
  2. 进入控制台的 API Key 管理 页面
  3. 点击"创建新密钥"按钮
  4. 复制并安全保存您的 API Key

2. 发送第一个请求

使用 cURL 发送一个简单的请求:

curl https://api.codeable.cn/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-3-haiku",
    "messages": [
      {"role": "user", "content": "Hello, world!"}
    ]
  }'

3. 使用 SDK

我们的 API 与 OpenAI SDK 兼容,只需更改 base URL:

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.codeable.cn/v1"
)

response = client.chat.completions.create(
    model="claude-3-haiku",
    messages=[
        {"role": "user", "content": "Hello, world!"}
    ]
)

print(response.choices[0].message.content)

认证方式

所有 API 请求都需要在 HTTP Header 中携带 API Key:

Authorization: Bearer sk_your_api_key_here

安全提示:请勿在客户端代码中暴露 API Key。 建议在服务端调用 API,或使用环境变量存储密钥。

API 参考

POST/v1/chat/completions

创建聊天对话。这是最常用的 API 端点。

请求参数

参数类型必填说明
modelstring模型 ID,如 "claude-3-haiku"
messagesarray对话消息列表
temperaturenumber采样温度,0-2,默认 1
max_tokensnumber最大生成 token 数
streamboolean是否流式返回,默认 false

响应示例

{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1703980800,
  "model": "claude-3-haiku",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! How can I help you today?"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 12,
    "total_tokens": 22
  }
}

支持的模型

模型 ID提供商最大 Token特点
claude-3-opusAnthropic200K最强能力,复杂任务
claude-3-sonnetAnthropic200K平衡性能与成本
claude-3-haikuAnthropic200K快速响应,经济实惠
gpt-4oOpenAI128K多模态,强大推理
gpt-4-turboOpenAI128K高性能,长上下文
gpt-3.5-turboOpenAI16K快速经济,日常任务

速率限制

为确保服务稳定性,我们对 API 请求实施速率限制:

套餐请求/分钟并发请求Token/分钟
体验版10110K
专业版6010100K
企业版无限制无限制无限制

超过速率限制时,API 将返回 429 Too Many Requests 错误。 请实现指数退避重试机制。

错误处理

API 使用标准 HTTP 状态码表示请求结果:

状态码说明处理建议
200成功正常处理响应
400请求参数错误检查请求参数格式
401认证失败检查 API Key 是否正确
403权限不足检查账户权限或配额
429请求过多实现指数退避重试
500服务器错误稍后重试或联系支持

错误响应格式

{
  "error": {
    "type": "invalid_request_error",
    "code": "invalid_api_key",
    "message": "Incorrect API key provided",
    "param": null
  }
}

SDK 和工具