文档
CodeRabbit
Cloudflare
AG Grid
Netlify
Neon
WorkOS
Clerk
Convex
Electric
PowerSync
Sentry
Railway
Prisma
Strapi
Unkey
CodeRabbit
Cloudflare
AG Grid
Netlify
Neon
WorkOS
Clerk
Convex
Electric
PowerSync
Sentry
Railway
Prisma
Strapi
Unkey
类引用
函数引用
接口引用
类型别名引用
变量引用
接口引用

TextOptions

接口: TextOptions<TProviderOptionsSuperset, TProviderOptionsForModel>

定义于: types.ts:597

传递给 SDK 并进一步传递给 AI 提供商的选项。

类型参数

TProviderOptionsSuperset

TProviderOptionsSuperset 扩展自 Record<string, any> = Record<string, any>

TProviderOptionsForModel

TProviderOptionsForModel = TProviderOptionsSuperset

属性

abortController?

ts
optional abortController: AbortController;

定义于: types.ts:681

用于请求取消的 AbortController。

允许您使用 AbortController 取消正在进行的请求。对于实现超时或用户发起的取消很有用。

示例

ts
const abortController = new AbortController();
setTimeout(() => abortController.abort(), 5000); // Cancel after 5 seconds
await chat({ ..., abortController });

参见

https://mdn.org.cn/en-US/docs/Web/API/AbortController


agentLoopStrategy?

ts
optional agentLoopStrategy: AgentLoopStrategy;

定义于: types.ts:605


conversationId?

ts
optional conversationId: string;

定义于: types.ts:667

用于关联客户端和服务器端开发工具事件的对话 ID。当提供时,服务器端事件将在开发工具中与客户端对话相关联。


maxTokens?

ts
optional maxTokens: number;

定义于: types.ts:640

响应中生成的最大 token 数。

提供商用法

  • OpenAI: max_output_tokens (number) - 包括可见输出和推理 token
  • Anthropic: max_tokens (number, 必需) - 范围 x >= 1
  • Gemini: generationConfig.maxOutputTokens (number)

messages

ts
messages: ModelMessage<
  | string
  | ContentPart<unknown, unknown, unknown, unknown, unknown>[]
  | null>[];

定义于: types.ts:602


metadata?

ts
optional metadata: Record<string, any>;

定义于: types.ts:651

附加到请求的额外元数据。可用于跟踪、调试或传递自定义信息。结构和约束因提供商而异。

提供商用法

  • OpenAI: metadata (Record<string, string>) - 最大 16 个键值对,键最大 64 个字符,值最大 512 个字符
  • Anthropic: metadata (Record<string, any>) - 包括可选的 user_id (最大 256 个字符)
  • Gemini: 在 TextProviderOptions 中不可直接使用

model

ts
model: string;

定义于: types.ts:601


modelOptions?

ts
optional modelOptions: TProviderOptionsForModel;

定义于: types.ts:652


outputSchema?

ts
optional outputSchema: SchemaInput;

定义于: types.ts:662

结构化输出的模式。如果提供,适配器应使用提供商的本机结构化输出 API 以确保响应符合此模式。模式将在发送到提供商之前转换为 JSON Schema 格式。支持任何符合 Standard JSON Schema 的库 (Zod, ArkType, Valibot 等)。


request?

ts
optional request: Request | RequestInit;

定义于: types.ts:653


systemPrompts?

ts
optional systemPrompts: string[];

定义于: types.ts:604


temperature?

ts
optional temperature: number;

定义于: types.ts:618

控制输出的随机性。较高的值(例如,0.8)使输出更随机,较低的值(例如,0.2)使其更集中和确定性。范围:[0.0, 2.0]

注意:通常建议使用 temperature 或 topP,但不同时使用两者。

提供商用法

  • OpenAI: temperature (number) - 在 text.top_p 字段中
  • Anthropic: temperature (number) - 范围从 0.0 到 1.0,默认值为 1.0
  • Gemini: generationConfig.temperature (number) - 范围从 0.0 到 2.0

tools?

ts
optional tools: Tool<any, any, any>[];

定义于: types.ts:603


topP?

ts
optional topP: number;

定义于: types.ts:631

核采样参数。temperature 采样的替代方案。该模型考虑具有 topP 概率质量的 token 的结果。例如,0.1 表示仅考虑概率质量排名前 10% 的 token。

注意:通常建议使用 temperature 或 topP,但不同时使用两者。

提供商用法

  • OpenAI: text.top_p (number)
  • Anthropic: top_p (number | null)
  • Gemini: generationConfig.topP (number)