> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 将 CometAPI 与 OpenAI SDK 搭配使用

> 通过设置 CometAPI API key 和 base URL，为 CometAPI 配置 OpenAI Python 与 Node.js SDK。

通过修改两个客户端设置即可将 OpenAI SDK 与 CometAPI 搭配使用：API key 和 base URL。保留你现有的 OpenAI 兼容请求代码，然后将 model ID 替换为可用的 CometAPI model ID。

## 安装 SDK

以下命令用于安装 OpenAI Python SDK：

```bash theme={null}
pip install openai
```

以下命令用于安装 OpenAI Node.js SDK：

```bash theme={null}
npm install openai
```

## Python 客户端

以下 Python 示例创建一个 CometAPI 客户端并发送聊天请求：

```python theme={null}
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["COMETAPI_KEY"],
    base_url="https://api.cometapi.com/v1",
)

completion = client.chat.completions.create(
    model="your-model-id",
    messages=[
        {
            "role": "user",
            "content": "Answer in one short sentence: What is CometAPI?",
        }
    ],
)

print(completion.choices[0].message.content)
```

响应对象包含 assistant 消息：

```json theme={null}
{
  "choices": [
    {
      "message": {
        "role": "assistant",
        "content": "CometAPI provides API access to models from multiple providers."
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 16,
    "completion_tokens": 12,
    "total_tokens": 28
  }
}
```

## Node.js 客户端

以下 Node.js 示例在 OpenAI SDK 中使用 `baseURL`：

```javascript theme={null}
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.COMETAPI_KEY,
  baseURL: "https://api.cometapi.com/v1",
});

const completion = await client.chat.completions.create({
  model: "your-model-id",
  messages: [
    {
      role: "user",
      content: "Answer in one short sentence: What is CometAPI?",
    },
  ],
});

console.log(completion.choices[0].message.content);
```

响应结构与 OpenAI 兼容的聊天补全结构相同：

```json theme={null}
{
  "id": "chatcmpl_example",
  "object": "chat.completion",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "CometAPI provides API access to models from multiple providers."
      }
    }
  ]
}
```

## 常见错误

| 错误              | 修复方法                                                |
| --------------- | --------------------------------------------------- |
| `401`           | 确认已设置 `COMETAPI_KEY`，并且请求使用 `Bearer` 认证。            |
| SDK 仍然调用 OpenAI | 在 Python 中设置 `base_url`，或在 Node.js 中设置 `baseURL`。   |
| model ID 无效     | 从[模型页面](/zh-Hans/overview/models)中选择一个 model ID。    |
| 缺少 `/v1`        | 对于 OpenAI 兼容 SDK，请使用 `https://api.cometapi.com/v1`。 |

## 相关链接

* [CometAPI 快速开始](/zh-Hans/overview/quick-start)
* [聊天补全](/api/text/chat)
* [响应](/api/text/responses)
* [模型页面](/zh-Hans/overview/models)
* [模型目录](https://www.cometapi.com/models/)
* [定价](https://www.cometapi.com/pricing/)
* [OpenAI Python SDK](https://github.com/openai/openai-python)
* [OpenAI Node.js SDK](https://github.com/openai/openai-node)

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "TechArticle",
        "@id": "https://apidoc.cometapi.com/guides/use-cometapi-with-openai-sdk",
        "headline": "如何将 CometAPI 与 OpenAI SDK 一起使用？",
        "description": "通过设置 CometAPI API 密钥和 base URL，将 CometAPI 与 OpenAI Python 和 Node.js SDK 一起使用。",
        "url": "https://apidoc.cometapi.com/guides/use-cometapi-with-openai-sdk",
        "author": {
          "@type": "Organization",
          "name": "CometAPI"
        },
        "publisher": {
          "@type": "Organization",
          "name": "CometAPI",
          "url": "https://www.cometapi.com"
        }
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "CometAPI 文档",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "指南",
            "item": "https://apidoc.cometapi.com/guides/use-cometapi-with-openai-sdk"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "如何将 CometAPI 与 OpenAI SDK 一起使用？",
            "item": "https://apidoc.cometapi.com/guides/use-cometapi-with-openai-sdk"
          }
        ]
      }
    ]
    }
    `}
</script>
