在 Botpress 中接入 Fireworks AI:LLM 内容生成与语音转写集成指南

发布时间:2026/10/7 8:40:32
在 Botpress 中接入 Fireworks AI:LLM 内容生成与语音转写集成指南
AI 应用后端【免费下载链接】botpressThe open-source hub to build deploy GPT/LLM Agents ⚡️项目地址https://gitcode.com/gh_mirrors/bo/botpress点击查看免费下载导读本文以仓库内 fireworks-ai 集成文档 为主线结合其 integration.definition.ts、实现代码 与 schema 定义完整讲解如何在 Botpress 中接入 Fireworks AI为你的 Agent 提供一份经过筛选的 LLM 模型清单用于内容生成 / 聊天补全并支持 Whisper V3 语音转写speech-to-text。阅读本文后你将掌握该集成的能力边界、安装与密钥配置、全部内置模型的规格与价格、generateContent与transcribeAudio的完整调用参数以及它在 Botpress 计费体系中的成本核算方式。一、集成能力概览一个连接器两类能力根据 hub.mdFireworks AI 集成允许你的 Bot 从一份经过筛选的模型清单中选用 Fireworks AI 的模型用于两类任务内容生成与聊天补全LLM通过generateContent动作调用音频转写speech-to-text通过transcribeAudio动作调用。集成定义文件 integration.definition.ts 明确了它的边界export default new IntegrationDefinition({ name: fireworks-ai, title: Fireworks AI, description: Choose from curated Fireworks AI models for content generation, chat completions, and audio transcription., version: 12.0.0, readme: hub.md, icon: icon.svg, // ... }) .extend(llm, ({ entities: { modelRef } }) ({ entities: { modelRef } })) .extend(stt, ({ entities: { speechToTextModelRef } }) ({ entities: { speechToTextModelRef } }))关键信息该集成通过extend方式复用了两个 Botpress 标准接口llminterfaces/llm/interface.definition.ts和speech-to-textinterfaces/speech-to-text/interface.definition.ts因此暴露的动作generateContent、transcribeAudio、listLanguageModels、listSpeechToTextModels与所有实现了这两个接口的 LLM / 语音集成保持一致Bot 可以无差别切换提供商。集成当前没有暴露任何聊天通道channels: {}它是一个纯能力型集成供 Bot 在节点、Agent 卡片或代码中直接调用其动作。需要的唯一密钥是FIREWORKS_AI_API_KEYFireworks AI API key。注意虽然 schemas.ts 中定义了imageModelId枚举包含 stable-diffusion-xl、sd3 等文生图模型 id但从当前源码结构看集成并未暴露任何图像生成动作可用的动作仅有内容生成与语音转写两类。二、安装与配置密钥与 workspace AI Spend 计费2.1 配置密钥集成通过 Botpress 的 secret 机制注入密钥在 index.ts 中const fireworksAIClient new OpenAI({ baseURL: https://api.fireworks.ai/inference/v1, apiKey: bp.secrets.FIREWORKS_AI_API_KEY, })也就是说集成底层复用了OpenAI SDK依赖声明见 package.jsonopenai: ^5.12.1仅将baseURL指向 Fireworks AI 的推理网关https://api.fireworks.ai/inference/v1。只要在 Botpress Cloud 中为工作区配置FIREWORKS_AI_API_KEY集成即完成注册register/unregister为空实现无需额外握手流程。2.2 计费归属hub.md 明确指出Usage is charged to the AI Spend of your workspace in Botpress Cloud at the same pricing (at cost) as directly with Fireworks AI.即所有调用费用计入 Botpress Cloud 工作区的 AI SpendAI 支出额度且按 Fireworks AI 官方定价**原价at cost**结算不存在加成。实现层面每次动作调用结束都会调用metadata.setCost(output.botpress.cost)见 index.ts把本次调用成本上报给 Botpress 计费系统。同时llm与speech-to-text两个接口定义中generateContent与transcribeAudio动作均声明了billable: true与cacheable: true见 interfaces/llm/interface.definition.ts说明它们属于可计费、可缓存的能力。三、LLM 内容生成内置模型目录与完整调用参数3.1 可用模型清单来自源码languageModels表集成内置了一份静态模型注册表index.tslistLanguageModels动作将其原样返回。下表完整列出当前版本v12.0.0全部 10 个模型价格单位为每 1M tokens 美元costPer1MTokens模型 ID名称标签输入价格 / 输入上限输出价格 / 输出上限accounts/fireworks/models/gpt-oss-20bGPT-OSS 20Bgeneral-purpose, reasoning, low-cost$0.07 / 128,000$0.30 / 16,000accounts/fireworks/models/gpt-oss-120bGPT-OSS 120Bgeneral-purpose, reasoning$0.15 / 128,000$0.60 / 16,000accounts/fireworks/models/llama4-maverick-instruct-basicLlama 4 Maverick Instruct (Basic)general-purpose, vision$0.22 / 1,000,000$0.88 / 16,384accounts/fireworks/models/llama4-scout-instruct-basicLlama 4 Scout Instruct (Basic)general-purpose, vision$0.15 / 1,048,576$0.60 / 16,384accounts/fireworks/models/llama-v3p3-70b-instructLlama 3.3 70B Instructgeneral-purpose$0.90 / 131,072$0.90 / 16,384accounts/fireworks/models/llama-v3p1-70b-instructLlama 3.1 70B Instructdeprecated, general-purpose$0.90 / 131,072$0.90 / 131,072accounts/fireworks/models/llama-v3p1-8b-instructLlama 3.1 8B Instructlow-cost, general-purpose$0.20 / 131,072$0.20 / 131,072accounts/fireworks/models/mixtral-8x22b-instructMixtral MoE 8x22B Instructgeneral-purpose$1.20 / 65,536$1.20 / 65,536accounts/fireworks/models/mythomax-l2-13bMythoMax L2 13broleplay, storytelling, low-cost$0.20 / 4,096$0.20 / 4,096accounts/fireworks/models/gemma2-9b-itGemma 2 9B Instructdeprecated, low-cost, general-purpose$0.20 / 8,192$0.20 / 8,192补充说明均以源码注释/描述为准默认模型为accounts/fireworks/models/llama-v3p1-70b-instructDEFAULT_LANGUAGE_MODEL_ID调用时若不指定model.id则自动使用该模型。Llama 3.1 70B 与 Gemma 2 9B 被标记为deprecated但仍在枚举与注册表中可用选择模型时可优先考虑无废弃标记的新模型。Llama 4 Maverick / Scout为多模态 MoE 模型支持文本 图像输入与多语言输出上下文窗口高达 1M tokens适合长上下文与视觉理解场景。GPT-OSS 系列为开源权重推理模型支持可配置的 reasoning effort详见下一节。模型 ID 由 schemas.ts 中的languageModelIdz.enum 严格约束传入枚举之外的 ID 会被 schema 校验拒绝。3.2generateContent动作参数与返回值generateContent的入参由 packages/common/src/llm/schemas.ts 的GenerateContentInputSchema定义复用modelRef实体后生成完整字段如下字段类型 / 默认值说明model.idstring枚举使用的 LLM 模型 ID不传则用默认模型reasoningEffortlow/medium/high/dynamic/none推理强度仅支持推理的模型生效更高的 effort 会产生更高的输出 token 费用systemPromptstring可选的系统提示词用于引导模型行为messages数组消息数组每条含roleuser/assistant、typetext/tool_calls/tool_result/multipart、content等responseFormattext/json_object期望的响应格式选json_object时必须通过系统提示或用户消息指示模型输出 JSONmaxTokensnumber生成响应的最大 token 数temperaturenumber默认1采样温度0–2越高越随机topPnumber默认1核采样阈值0–1stopSequencesstring[]最多 4 个遇到这些序列即停止生成tools数组函数调用工具列表name / description / argumentsSchematoolChoiceauto/specific/any/none工具选择策略specific时需提供functionNameuserIdstring发起提示的用户唯一标识debugboolean隐藏字段为true时向 Bot 日志输出调试信息meta对象隐藏字段提示来源等元数据用于用量归因返回值GenerateContentOutputSchema包含id提供商响应 ID、provider、model、choices[]每条含role: assistant、index、stopReasonstop/max_tokens/tool_calls/content_filter/other、usageinputTokens/inputCost/outputTokens/outputCost以及botpress.cost本次生成总成本美元。一个典型的调用参数结构示例{ model: { id: accounts/fireworks/models/llama-v3p3-70b-instruct }, systemPrompt: You are a helpful assistant., messages: [ { role: user, type: text, content: 用三句话总结这段产品文档 } ], responseFormat: text, temperature: 0.7, maxTokens: 1024 }3.3 GPT-OSS 模型的特殊请求处理当选择的模型是gpt-oss-20b或gpt-oss-120b时index.ts 中的overrideRequest钩子会做三件事调用validateGptOssReasoningEffort校验reasoningEffort并写入请求的reasoning_effort字段删除stop停止序列源码注释说明 GPT-OSS 模型与 stop sequence 配合不佳删除temperature推理模型不支持温度参数。其中validateGptOssReasoningEffort的语义定义在 packages/common/src/llm/openai.ts只接受low/medium/high三种取值若传入none显式关闭推理会直接抛出InvalidPayloadError提示改为low/medium/high或切换非推理模型若传入其他不支持的值则回退到medium并通过logger.forBot().info(...)记录一条提示日志。四、语音转写Whisper V34.1 模型与定价语音转写目前只内置一个模型index.ts 的speechToTextModels模型 ID名称价格costPerMinute美元/分钟whisper-v3Whisper V3$0.0044.2transcribeAudio动作参数与返回值入参由 packages/common/src/speech-to-text/schemas.ts 的TranscribeAudioInputSchema定义字段类型 / 默认值说明model.idstring转写模型 ID不传则用默认模型whisper-v3fileUrlstring必填URL音频文件 URL需返回 content-type 头以识别格式支持 mp3、mp4、mpeg、mpga、m4a、wav、webmlanguagestring可选音频语言ISO-639-1 格式提供可提升准确率与延迟表现promptstring可选引导模型风格或衔接上一段音频的提示文本应与音频语言一致temperaturenumber默认0采样温度 0–10 表示自动越高输出越随机返回值TranscribeAudioOutputSchema包含language检测到的语言、duration音频时长秒、segments[]分段明细含text、id、start/end、tokens、temperature、avg_logprob、compression_ratio、no_speech_prob等以及model、cost与botpress.cost。其中avg_logprob -1表示 logprob 可能失败、compression_ratio 2.4表示压缩可能失败、no_speech_prob 1.0且avg_logprob -1表示该段可能为静音——这些字段可用于质量诊断。五、底层实现原理一次调用如何被路由与计费Fireworks AI 集成之所以代码量很小是因为它把通用逻辑全部下沉到了botpress/common包generateContent→ packages/common/src/llm/openai.ts 中的generateContentM()泛型函数。它会解析模型 ID未指定则用props.defaultModel→ 校验模型是否在props.models注册表内不在则抛出InvalidPayloadError→ 将统一输入映射为 OpenAI 风格的ChatCompletionCreateParamsNonStreaming含 tools 映射→ 调用overrideRequest钩子调整请求 → 执行补全 → 汇总 token 用量与成本。transcribeAudio→ packages/common/src/speech-to-text/openai.ts 中的transcribeAudioM()泛型函数逻辑相同校验模型 → 走 OpenAI 转写端点 → 按costPerMinute与时长核算成本。由此可以推断两个工程要点模型目录与 SDK 解耦模型规格价格、上下文窗口、标签全部集中在集成本身的注册表里公共层只负责按注册表执行与计费新增模型只需在注册表和languageModelId枚举中扩展。计费链路统一成本在公共层算出output.botpress.cost随后由集成metadata.setCost(...)上报最终计入工作区 AI Spend——这正对应 hub.md 中按 Fireworks AI 官方价格原价计费的承诺。六、使用场景与选型建议基于上文事实可以给出如下实践建议通用对话 / 内容生成优先考虑 Llama 3.3 70B性价比与指令跟随均衡或 Llama 4 Maverick / Scout若需要 1M 长上下文或图像输入低成本高频场景gpt-oss-20b输入 $0.07 / 1M tokens与 Llama 3.1 8B$0.20 / 1M tokens都是 low-cost 标签模型需要可控推理强度选择 GPT-OSS 系列通过reasoningEffortlow/medium/high平衡推理深度与输出 token 费用角色扮演 / 故事创作mythomax-l2-13b是内置清单中明确带 roleplay、storytelling 标签的模型语音场景whisper-v3以 $0.004/分钟的价格提供转写能力配合language参数提升准确率。最后提醒集成版本与模型清单以当前仓库fireworks-aiv12.0.0为准Fireworks AI 侧的新模型需要通过更新集成注册表与languageModelId枚举才能被 Bot 使用选择模型时也请留意deprecated标签当前为 Llama 3.1 70B 与 Gemma 2 9B长期使用时建议迁移到新模型。赞分享AI 应用后端【免费下载链接】botpressThe open-source hub to build deploy GPT/LLM Agents ⚡️项目地址https://gitcode.com/gh_mirrors/bo/botpress点击查看免费下载相关推荐Botpress OpenAI 集成深度指南为 GPT/LLM Agent 接入文本生成、图像生成、语音转写与语音合成Botpress OpenAI 集成深度指南为 GPT/LLM Agent 接入文本生成、图像生成、语音转写与语音合成 导读 本文围绕 Botpress 开源AI 应用后端Botpress Google AI (Gemini) 集成实战指南接入 Gemini 模型实现 LLM 内容生成Botpress Google AI Gemini 集成实战指南接入 Gemini 模型实现 LLM 内容生成 本文以 Botpress 开源仓库中的 intAI 应用后端Blaze STT Python 扩展接入指南在 TEN Framework 中集成语音转写能力Blaze STT Python 扩展接入指南在 TEN Framework 中集成语音转写能力 本篇技术指南围绕 TEN Framework 仓库中的 bl人工智能AI Agent多模态语音AI 应用创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考