Skip to content

模型与尺寸

图像模型

模型常量特性
nai-diffusion-4-5-fullV4_5_FULL最新模型,支持角色参考
nai-diffusion-4-5-curatedV4_5_CURATEDV4.5 精选版,支持角色参考
nai-diffusion-4-fullV4_FULLV4 完整版
nai-diffusion-4-curatedV4_CURATEDV4 精选版
nai-diffusion-3V3V3 模型
nai-diffusion-3-furryV3_FURRYV3 furry 模型

使用模型常量

typescript
import { NovelAI, V4_5_FULL, V4_FULL, V3 } from 'novelai-sdk-unofficial';

const client = new NovelAI();

// 使用字符串
const images = await client.image.generate({
  prompt: '1girl',
  model: 'nai-diffusion-4-5-full',
});

// 使用常量
const images = await client.image.generate({
  prompt: '1girl',
  model: V4_5_FULL,
});

模型功能支持

功能V4.5V4V3
角色参考
多角色定位
ControlNet
图生图
流式生成

辅助函数

typescript
import { isV4_5Model, isV4Model } from 'novelai-sdk-unofficial';

isV4_5Model('nai-diffusion-4-5-full'); // true
isV4_5Model('nai-diffusion-4-full');   // false

isV4Model('nai-diffusion-4-5-full');   // true
isV4Model('nai-diffusion-4-full');     // true
isV4Model('nai-diffusion-3');          // false

尺寸预设

预设尺寸
portrait832 × 1216
landscape1216 × 832
square1024 × 1024
large_portrait1024 × 1536
large_landscape1536 × 1024

使用尺寸预设

typescript
// 使用预设名称
const images = await client.image.generate({
  prompt: '1girl',
  size: 'landscape',
});

// 使用自定义尺寸
const images = await client.image.generate({
  prompt: '1girl',
  size: [1024, 1024],
});

自定义尺寸要求

  • 宽度和高度必须是 64 的倍数
  • 范围:64 到 1600 像素
typescript
// 有效的自定义尺寸
size: [768, 1024]   // ✅
size: [1280, 768]   // ✅

// 无效的尺寸
size: [700, 1000]   // ❌ 不是 64 的倍数
size: [2048, 2048]  // ❌ 超过 1600

尺寸验证

typescript
import { validateSize } from 'novelai-sdk-unofficial';

try {
  validateSize([768, 1024]); // OK
  validateSize([700, 1000]); // 抛出错误
} catch (error) {
  console.error(error.message);
}

采样器

采样器常量描述
k_eulerK_EULEREuler 方法
k_euler_ancestralK_EULER_ANCESTRALEuler ancestral(默认)
k_dpm_2K_DPM_2DPM2
k_dpm_2_ancestralK_DPM_2_ANCESTRALDPM2 ancestral
k_dpmpp_2mK_DPMPP_2MDPM++ 2M
k_dpmpp_2s_ancestralK_DPMPP_2S_ANCESTRALDPM++ 2S ancestral
k_dpmpp_sdeK_DPMPP_SDEDPM++ SDE
ddimDDIMDDIM
typescript
import { NovelAI, K_DPMPP_2M } from 'novelai-sdk-unofficial';

const images = await client.image.generate({
  prompt: '1girl',
  sampler: K_DPMPP_2M,
});

噪声调度

噪声调度描述
karrasKarras 调度(默认)
exponential指数调度
polyexponential多项式指数调度
typescript
const images = await client.image.generate({
  prompt: '1girl',
  noiseSchedule: 'exponential',
});

基于 MIT 许可证发布