Skip to main content

概览

Kira 的模型选择系统覆盖四个层面:LLM 对话模型图片生成模型视频生成 Provider音乐生成 Provider。每个层面有独立的选择逻辑,但都与用户的订阅方案绑定。

一、LLM 对话模型

Kira 模式

用户在前端选择 Kira 模式,决定对话使用的 LLM:
模式LLMProviderSystem Prompt所需方案
Litepa/grok-4-1-fast-reasoningNovita标准 Kira 人设免费
Novapa/grok-4-1-fast-reasoningNovita标准 Kira 人设Pro / Max
Crazypa/grok-4-1-fast-reasoningNovita疯狂/毒舌人设Pro / Max
Ultrapa/grok-4-1-fast-reasoningNovita标准 Kira 人设Max

模式选择流程

Plan 降级规则

// 后端 Plan 校验逻辑
const isMaxPlan = profile.plan?.startsWith("max");
const isPremium = profile.plan?.startsWith("pro") || isMaxPlan;

if (model === "ultra") {
  effectiveModel = isMaxPlan ? "ultra" : "lite";
} else {
  effectiveModel = isPremium ? model : "lite";
}
用户 Plan可用模式
freeLite
basic / basic_yearLite
pro / pro_yearLite, Nova, Crazy
max / max_yearLite, Nova, Crazy, Ultra

Crazy 模式

Crazy 模式使用与 Lite 相同的 LLM(pa/grok-4-1-fast-reasoning),但替换了 System Prompt:
  • 标准 Prompt:专业、友好的 AI 艺术助手人设
  • Crazy Prompt:毒舌、讽刺、黑色幽默的人设,但仍遵守工具调用规范

前端实现

模式选择状态存储在 Zustand Store 中,持久化到 localStorage:
// store/poisson.ts
type KiraModel = "lite" | "nova" | "crazy" | "ultra";

interface PoissonState {
  model: KiraModel;
  setModel: (model: KiraModel) => void;
}
前端在 chat-input 组件中展示模式选择器,点击需要付费模式时会弹出 billing dialog。

二、图片生成模型

当前模型

图片生成目前固定使用 Seedream (BytePlus)
// workflow/generate/filter.ts
const chooseModel = "seedream";  // 当前为静态选择

可用模型列表

系统已集成以下模型,可通过修改 filter 逻辑切换:
模型Provider说明
seedreamBytePlus当前默认,2K 分辨率
seedream-editBytePlus图片编辑模式
gpt-image-1OpenAIGPT-4 Vision 图片生成
kontextFALFlux Pro Kontext
FLUX.1-devFALFlux.1 Dev
illustriousIllustrious独立服务
imagenGoogleGoogle Imagen
waveWaveWave 图片生成
google-gemini-flash-imageGoogleGemini Flash 图片理解
google-gemini-flash-image-genGoogleGemini Flash 图片生成

图片生成计费

每次图片生成固定消耗 5 Credits,与模型无关。

图片编辑计费

imageEdit Credits 因模型而异:
模型Credits
标准(Seedream / Flux)5
Nano Banana Pro20

图片编辑

图片编辑工具(inpaint、expand、remove-bg 等)使用多 Provider 路由:
  • NSFW 内容 → Seedream
  • 非 NSFW 风格调整 → Seedream
  • Ultra 模式非风格编辑 → Nano Banana Pro (gemini-3-pro-image-edit)(检查 model === "ultra",非用户 Plan)
  • 其他情况 → FAL Flux 2 Pro Edit
  • Fallback → Seedream
// tools/imageEdit.ts - 简化示意
if (isNsfw || isStyleAdjustment) {
  model = "seedream";
} else if (isUltraModel && !isStyleAdjustment) {  // model === "ultra", not user plan
  model = "nano-banana-pro";  // gemini-3-pro-image-edit via Novita
} else {
  model = "fal-flux-2-pro-edit";  // fallback: seedream
}

尺寸映射

Seedream 的比例到像素映射:
比例像素尺寸
1:12048 × 2048
16:92560 × 1440
9:161440 × 2560
4:32304 × 1728
3:41728 × 2304

三、视频生成 Provider

Provider 选择

视频 Provider 选择基于 NSFW 内容检测
// tools/generateVideo.ts
const isNsfw = await detectNsfw({
  text: input.prompt,
  imageId: input.sourceImageId,
});

let provider: "seedance" | "grok" | "veo";
if (isNsfw) {
  provider = "seedance";  // NSFW 内容始终用 Seedance
} else {
  provider = "grok";      // 安全内容默认用 Grok
}

Provider 详情

ProviderAPI模型 ID特点
SeedanceBytePlusseedance-1-5-proNSFW 兜底,稳定
GrokxAIgrok-imagine-video默认选择,质量好
VeoGoogleveo-3.1-fast-generate-preview最高质量,当前禁用
kira-be 中使用 seedance-1-5-pro 作为模型名。ep-20260106141447-dxlcl 是 BytePlus 端点 ID,在 kira-video-worker 中使用。

Plan 校验

视频生成需要 Pro 及以上方案:
const PRO_PLANS = ["pro", "pro_year", "max", "max_year"];

// 免费用户无法生成视频
if (!PRO_PLANS.includes(profile.plan ?? "")) {
  return { status: "insufficient_plan" };
}

Credits 成本

视频按秒计费,不同 Provider 单价不同:
Provider每秒价格5 秒10 秒
Grok / Seedance$0.05/秒50 credits100 credits
Veo (禁用中)$0.15/秒150 credits300 credits

四、音乐生成 Provider

Provider 选择

音乐生成使用固定 Provider,按工具类型区分:
工具Provider说明
generateMusicsuno_unofficial完整歌曲生成(含歌词)
generateInstrumentalsuno_instrumental纯器乐生成
addVocalssuno_add_vocals为器乐添加人声

Plan 校验

音乐生成需要 Pro 及以上方案:
const PRO_PLANS = ["pro", "pro_year", "max", "max_year"];

Credits 成本

工具Credits
generateMusic25
generateInstrumental25
addVocals25

五、完整路由总览

六、关键源码文件

文件说明
kira-be/src/ai/agents/index.tsLLM 模型选择和 Agent 创建
kira-be/src/hono/agent/index.tsPlan 校验和模式降级
kira-be/src/ai/workflow/generate/filter.ts图片模型选择(当前静态)
kira-be/src/ai/workflow/generate/workflow.ts图片生成工作流
kira-be/src/ai/tools/generateVideo.ts视频 Provider 选择 + NSFW 路由
kira-be/src/ai/tools/generateMusic.ts歌曲生成工具
kira-be/src/ai/tools/generateInstrumental.ts器乐生成工具
kira-be/src/ai/tools/addVocals.ts添加人声工具
kira-video-worker/src/providers/视频 Provider 实现
kira-web/store/poisson.ts前端模式状态管理
kira-web/components/feature/common/chat/chat-input.tsx模式选择 UI