# @arizeai/openinference-instrumentation-openai 中文文档

规范地址：https://npmcn.com/package/%40arizeai/openinference-instrumentation-openai/

版本：4\.4\.3
npm 元数据更新时间：2026-11-04T17:25:00.571Z
中文译文更新时间：2026-11-06T19:21:13.336Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40arizeai/openinference-instrumentation-openai
原文对照：https://npmcn.com/package/%40arizeai/openinference-instrumentation-openai/?lang=original
项目主页：https://github.com/Arize-ai/openinference#readme
源码仓库：https://github.com/Arize-ai/openinference

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：1.1 MB，84 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：5 个
- 首次发布：2023-12-27T17:53:05.286Z
- 最新版本发布：2026-11-04T17:25:00.230Z
- 近 30 天下载量：217833（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：79（近 12 个月 29 个）

## 中文简介

OpenAI 的开放参考仪器

## 安装

```sh
npm install @arizeai/openinference-instrumentation-openai
```

也可以使用：`pnpm add @arizeai/openinference-instrumentation-openai`、`yarn add @arizeai/openinference-instrumentation-openai`、`bun add @arizeai/openinference-instrumentation-openai`

## README

# OpenAI 节点的 OpenInference 仪器

[![npm version](https://badge.fury.io/js/@arizeai%2Fopeninference-instrumentation-openai.svg)](https://badge.fury.io/js/@arizeai%2Fopeninference-instrumentation-openai)

本模块为下列人员提供自动仪器: [OpenAI 节点.js SDK](https://github.com/openai/openai-node) 可用于与 [@ opleteometry/ sdk- trace- 节点](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node)。 。 。 .

## 安装

```shell
npm install --save @arizeai/openinference-instrumentation-openai
```

## 使用量

要装入 OpenAI 仪器, 请在寄存器调用中指定它以及您想要启用的任何附加仪器 .

```typescript
const { NodeTracerProvider } = require("@opentelemetry/sdk-trace-node");
const { OpenAIInstrumentation } = require("@arizeai/openinference-instrumentation-openai");
const { registerInstrumentations } = require("@opentelemetry/instrumentation");

const provider = new NodeTracerProvider();
provider.register();

registerInstrumentations({
  instrumentations: [new OpenAIInstrumentation()],
});
```

## 支持的 APIs

| OpenAI API 软件 | 宽度 | 扩展名 |
| --- | --- | --- |
| 聊天补全( C)`chat.completions.create`,包括流线) | `LLM` | `OpenAI Chat Completions` |
| 完成(`completions.create`,包括流线) | `LLM` | `OpenAI Completions` |
| 嵌入( 相接)`embeddings.create`(中文(简体) ) | `EMBEDDING` | `OpenAI Embeddings` |
| 答复`responses.create`,包括流线) | `LLM` | `OpenAI Responses` |
| 决 定`decisions.create`时,需要 `openai` 页:1 | `DECISION` | `OpenAI Decisions` |

### 决定 API

要求 [决定 API](https://developers.openai.com/api/docs/guides/decisions) 记录为 [`DECISION` 间距](https://github.com/Arize-ai/openinference/blob/main/spec/decision_spans.md) 而不是说 `LLM` 跨度:模型对调用者提供的答案进行分数,而不是生成文本。 跨度带 `decision.system` 编号 : `decision.provider` (单位:千美元)`openai`, (中文(简体) ), `decision.request.model_name`, (中文(简体) ), `decision.response.model_name`, (中文(简体) ), `decision.model_name`, (中文(简体) ), `decision.token_count.input` 编号 : `decision.token_count.output`,以及作为 JSON 的原始请求和答复 `input.value` 编号 : `output.value`。无 `llm.*` 属性设定在决定跨度上.

## 实例

要运行示例, 请运行以下命令:

```shell
cd js/packages/openinference-instrumentation-openai
pnpm install
pnpm -r build
npx -y tsx examples/chat.ts # or responses.ts, embed.ts, etc
```

关于OpenTeleometry Node.js SDK的更多信息,请参见: [OpenTeleometry 节点.js SDK 文档](https://opentelemetry.io/docs/instrumentation/js/getting-started/nodejs/)。 。 。 .

## 使用自定义追踪提供者

您可以在创建 OpenAI 仪器时指定自定义的跟踪器提供者 。 当您想要使用非全局追踪器提供者或对追踪配置有更强的控制时,此功能是有用的.

```typescript
import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node";
import { Resource } from "@opentelemetry/resources";
import { SEMRESATTRS_PROJECT_NAME } from "@arizeai/openinference-semantic-conventions";
import { OpenAIInstrumentation } from "@arizeai/openinference-instrumentation-openai";
import { registerInstrumentations } from "@opentelemetry/instrumentation";

// Create a custom tracer provider
const customTracerProvider = new NodeTracerProvider({
  resource: new Resource({
    [SEMRESATTRS_PROJECT_NAME]: "my-openai-project",
  }),
});

// Pass the custom tracer provider to the instrumentation
const openaiInstrumentation = new OpenAIInstrumentation({
  tracerProvider: customTracerProvider,
});

// Register the instrumentation with the custom tracer provider
registerInstrumentations({
  instrumentations: [openaiInstrumentation],
  tracerProvider: customTracerProvider,
});
```

或者,您可以在创建仪器后设置跟踪提供者:

```typescript
const openaiInstrumentation = new OpenAIInstrumentation();
openaiInstrumentation.setTracerProvider(customTracerProvider);
```

## 兼容性

`@arizeai/openinference-instrumentation-openai` 与以下版本兼容 `openai` 软件包 :

| OpenAI 版本 | OpenInference 仪器版本 |
| --- | --- |
| ^7.0.0 (中文(简体) ) | ^ 4.4.0 (中文(简体) ) |
| ^ 6. 0 | ^ 4.0.0 (中文(简体) ) |
| ^ 5.0.0 (中文(简体) ) | ^ 3. 0.0 (韩语) |
| ^ 4.0.0 (中文(简体) ) | ^ 2. 0 |

## 快速缓存令牌计数

OpenAI 缓存读取( O)`cached_tokens`写作(`cache_write_tokens`)记录为 `llm.token_count.prompt_details.cache_read` 财务报告和审定财务报表 `cache_write`见 [语义公约](https://github.com/Arize-ai/openinference/blob/main/spec/semantic_conventions.md#token-count-details) 说明这些分项与及时总数的关系,以及 [缓存符号示例](https://github.com/Arize-ai/openinference/blob/main/python/instrumentation/openinference-instrumentation-openai/examples/cache_tokens.md) 凤凰城的往返旅行.

## 常见问题

### @arizeai/openinference-instrumentation-openai 是什么？

OpenAI 的开放参考仪器

### 如何安装 @arizeai/openinference-instrumentation-openai？

在项目目录运行 npm install @arizeai/openinference-instrumentation-openai，或使用 pnpm add / yarn add / bun add。

### @arizeai/openinference-instrumentation-openai 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @arizeai/openinference-instrumentation-openai 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @arizeai/openinference-instrumentation-openai 可以商用吗？

@arizeai/openinference-instrumentation-openai 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @arizeai/openinference-instrumentation-openai 的下载量有多少？

根据 npm 官方下载统计，@arizeai/openinference-instrumentation-openai 在 2026/10/07 – 2026/11/05 这 30 天内被下载 217,833 次，日均约 7,261 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @arizeai/openinference-instrumentation-openai 还在维护吗？

最新版本 4\.4\.3 发布于 2026/11/05（3 天前）；至今共发布 79 个版本，其中过去 12 个月发布了 29 个；首次发布于 2023/12/28。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

