将 @firebase/ai 从 2.x 升级到 3.x
根据 TypeScript 类型自动比较 @firebase/ai 2.16.0 与 3.0.0 的公开 API。签名变化表示可能存在不兼容变更,并非确定结论。
概要
| 已删除的导入路径 | 0 |
|---|---|
| 已删除的导出 | 2 |
| 已修改的签名 | 3 |
| 已删除的类或接口成员 | 53 |
| 已修改的类或接口成员 | 8 |
| 新增弃用 | 11 |
| 要求变化(engines、peer 依赖) | 1 |
| 新增导出 | 1 |
已删除的导出
| import | export | kind | 之前 |
|---|---|---|---|
@firebase/ai | ChatSessionBase | class | class |
@firebase/ai | VertexAIBackend | class | class |
已修改的签名
| export | 之前 | 之后 |
|---|---|---|
@firebase/ai · Tool | FunctionDeclarationsTool | CodeExecutionTool | GoogleMapsTool | GoogleSearchTool | URLContextTool | CodeExecutionTool | FunctionDeclarationsTool | GoogleMapsTool | GoogleSearchTool | URLContextTool |
@firebase/ai · BackendType | "AGENT_PLATFORM" | "VERTEX_AI" | "GOOGLE_AI" | "AGENT_PLATFORM" | "GOOGLE_AI" |
@firebase/ai · ChatSession | class | interface |
已删除的类或接口成员
| member | import | 之前 |
|---|---|---|
AI.location | @firebase/ai | string |
TextPart.inlineData | @firebase/ai | undefined |
TextPart.functionCall | @firebase/ai | undefined |
TextPart.executableCode | @firebase/ai | undefined |
TextPart.functionResponse | @firebase/ai | undefined |
TextPart.codeExecutionResult | @firebase/ai | undefined |
GoogleMaps.enableWidget | @firebase/ai | boolean | undefined |
ChatSession._history | @firebase/ai | Content[] |
ChatSession._apiSettings | @firebase/ai | ApiSettings |
ChatSession.chromeAdapter | @firebase/ai | any |
LiveSession.sendMediaChunks | @firebase/ai | (mediaChunks: GenerativeContentBlob[]): Promise<void> |
LiveSession.sendMediaStream | @firebase/ai | (mediaChunkStream: ReadableStream<GenerativeContentBlob>): Promise<void> |
FileDataPart.text | @firebase/ai | undefined |
FileDataPart.inlineData | @firebase/ai | undefined |
FileDataPart.functionCall | @firebase/ai | undefined |
FileDataPart.executableCode | @firebase/ai | undefined |
FileDataPart.functionResponse | @firebase/ai | undefined |
FileDataPart.codeExecutionResult | @firebase/ai | undefined |
InlineDataPart.text | @firebase/ai | undefined |
InlineDataPart.functionCall | @firebase/ai | undefined |
InlineDataPart.executableCode | @firebase/ai | undefined |
InlineDataPart.functionResponse | @firebase/ai | undefined |
InlineDataPart.codeExecutionResult | @firebase/ai | undefined |
FunctionCallPart.text | @firebase/ai | undefined |
FunctionCallPart.inlineData | @firebase/ai | undefined |
FunctionCallPart.executableCode | @firebase/ai | undefined |
FunctionCallPart.functionResponse | @firebase/ai | undefined |
FunctionCallPart.codeExecutionResult | @firebase/ai | undefined |
GroundingMetadata.retrievalQueries | @firebase/ai | string[] | undefined |
ExecutableCodePart.text | @firebase/ai | undefined |
ExecutableCodePart.thought | @firebase/ai | undefined |
ExecutableCodePart.fileData | @firebase/ai | never |
ExecutableCodePart.inlineData | @firebase/ai | undefined |
ExecutableCodePart.functionCall | @firebase/ai | undefined |
ExecutableCodePart.functionResponse | @firebase/ai | undefined |
ExecutableCodePart.codeExecutionResult | @firebase/ai | undefined |
CountTokensResponse.totalBillableCharacters | @firebase/ai | number | undefined |
FunctionResponsePart.text | @firebase/ai | undefined |
FunctionResponsePart.inlineData | @firebase/ai | undefined |
FunctionResponsePart.functionCall | @firebase/ai | undefined |
FunctionResponsePart.executableCode | @firebase/ai | undefined |
FunctionResponsePart.codeExecutionResult | @firebase/ai | undefined |
CodeExecutionResultPart.text | @firebase/ai | undefined |
CodeExecutionResultPart.thought | @firebase/ai | undefined |
CodeExecutionResultPart.fileData | @firebase/ai | never |
CodeExecutionResultPart.inlineData | @firebase/ai | undefined |
CodeExecutionResultPart.functionCall | @firebase/ai | undefined |
CodeExecutionResultPart.executableCode | @firebase/ai | undefined |
CodeExecutionResultPart.functionResponse | @firebase/ai | undefined |
LanguageModelCreateOptions.topK | @firebase/ai | number | undefined |
LanguageModelCreateOptions.temperature | @firebase/ai | number | undefined |
LanguageModelCreateCoreOptions.topK | @firebase/ai | number | undefined |
LanguageModelCreateCoreOptions.temperature | @firebase/ai | number | undefined |
已修改的类或接口成员
| member | 之前 | 之后 |
|---|---|---|
ChatSession.constructor | (apiSettings: ApiSettings, model: string, chromeAdapter?: ChromeAdapter | undefined, params?: StartChatParams | undefined, requestOptions?: RequestOptions | undefined): ChatSession | |
GenerativeModel.generateContent | (request: string | GenerateContentRequest | (string | Part)[], singleRequestOptions?: SingleRequestOptions | undefined): Promise<GenerateContentResult> | (request: string | (string | Part)[] | GenerateContentRequest, singleRequestOptions?: SingleRequestOptions | undefined): Promise<GenerateContentResult> |
GenerativeModel.generateContentStream | (request: string | GenerateContentRequest | (string | Part)[], singleRequestOptions?: SingleRequestOptions | undefined): Promise<GenerateContentStreamResult> | (request: string | (string | Part)[] | GenerateContentRequest, singleRequestOptions?: SingleRequestOptions | undefined): Promise<GenerateContentStreamResult> |
ExecutableCodePart.executableCode | ExecutableCode | undefined | ExecutableCode |
CodeExecutionResultPart.codeExecutionResult | CodeExecutionResult | undefined | CodeExecutionResult |
StartTemplateChatParams.templateVariables | Record<string, unknown> | undefined | Record<string, unknown> |
TemplateGenerativeModel.generateContent | (templateId: string, templateVariables: Record<string, unknown>, singleRequestOptions?: SingleRequestOptions | undefined, templateToolConfig?: TemplateToolConfig | undefined): Promise<GenerateContentResult> | (request: TemplateRequest, singleRequestOptions?: SingleRequestOptions | undefined): Promise<GenerateContentResult> |
TemplateGenerativeModel.generateContentStream | (templateId: string, templateVariables: Record<string, unknown>, singleRequestOptions?: SingleRequestOptions | undefined, templateToolConfig?: TemplateToolConfig | undefined): Promise<GenerateContentStreamResult> | (request: TemplateRequest, singleRequestOptions?: SingleRequestOptions | undefined): Promise<GenerateContentStreamResult> |
新增弃用
| export | @deprecated |
|---|---|
@firebase/ai · GenerationConfig.topK | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Omit this parameter and let the model manage sampling automatically. |
@firebase/ai · GenerationConfig.topP | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Omit this parameter and let the model manage sampling automatically. |
@firebase/ai · GenerationConfig.temperature | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Omit this parameter and let the model manage sampling automatically. |
@firebase/ai · GenerationConfig.candidateCount | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Make parallel requests instead. |
@firebase/ai · GenerationConfig.presencePenalty | Not supported in Gemini 3.x and later models. Requests that include this parameter will fail with a 400 error. Omit this parameter. |
@firebase/ai · GenerationConfig.frequencyPenalty | Not supported in Gemini 3.x and later models. Requests that include this parameter will fail with a 400 error. Omit this parameter. |
@firebase/ai · LiveGenerationConfig.topK | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Omit this parameter and let the model manage sampling automatically. |
@firebase/ai · LiveGenerationConfig.topP | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Omit this parameter and let the model manage sampling automatically. |
@firebase/ai · LiveGenerationConfig.temperature | Not supported in Gemini 3.x and later models. The model will ignore this parameter if it's included in a request. Omit this parameter and let the model manage sampling automatically. |
@firebase/ai · LiveGenerationConfig.presencePenalty | Not supported in Gemini 3.x and later models. Requests that include this parameter will fail with a 400 error. Omit this parameter. |
@firebase/ai · LiveGenerationConfig.frequencyPenalty | Not supported in Gemini 3.x and later models. Requests that include this parameter will fail with a 400 error. Omit this parameter. |
要求变化(engines、peer 依赖)
| 之前 | 之后 | |
|---|---|---|
engines.node | >=20.0.0 | >=24.12.0 |
新增导出 (1)
| import | export | kind |
|---|---|---|
@firebase/ai | TemplateRequest | interface |
把这些数据交给你的 AI 智能体
Vigia 是免费的 MCP 服务器:你的编程智能体在写代码之前就能检查版本、不兼容变更和安全漏洞。无需注册,无需 API 密钥。
claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp
添加到 Cursor添加到 VS Code★ 在 GitHub 上加星
任何其他 MCP 客户端
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }常见问题
将 @firebase/ai 从 2 升级到 3 有哪些不兼容变更?
在 @firebase/ai 2.16.0 与 3.0.0 之间,Vigia 发现 2 个已删除的导出、3 个已修改的签名,以及 61 个已删除或修改的类或接口成员。
@firebase/ai 3 中弃用了哪些内容?
@firebase/ai 3.0.0 中有 11 个导出或成员新被标记为弃用。
供智能体使用
GET https://vigia.coredls.cloud/v1/packages/npm/@firebase/ai/upgrade?from=2.16.0&to=3.0.0