@picsart/ai-sdk 5.26.3 → 5.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.d.ts CHANGED
@@ -297,6 +297,11 @@ type ModelInputById = {
297
297
  imageUrls?: string[];
298
298
  thinking?: "off" | "low" | "medium" | "high";
299
299
  };
300
+ "gemini-3.8-flash": {
301
+ prompt: string;
302
+ imageUrls?: string[];
303
+ thinking?: "off" | "low" | "medium" | "high";
304
+ };
300
305
  "gemini-omni-1.1-flash-preview": {
301
306
  prompt: string;
302
307
  aspectRatio?: "16:9" | "9:16";
@@ -811,6 +816,17 @@ type ModelInputById = {
811
816
  seed?: number;
812
817
  enableSafetyChecker?: boolean;
813
818
  };
819
+ "minimax-h3-max-turbo": {
820
+ prompt: string;
821
+ startFrame?: string;
822
+ endFrame?: string;
823
+ resolution?: "480p" | "768p";
824
+ duration?: number;
825
+ aspectRatio?: "21:9" | "16:9" | "4:3" | "1:1" | "3:4" | "9:16";
826
+ promptExpansionMode?: "balanced" | "quality";
827
+ seed?: number;
828
+ enableSafetyChecker?: boolean;
829
+ };
814
830
  "minimax-music-v2": {
815
831
  prompt: string;
816
832
  lyricsPrompt?: string;
@@ -1603,7 +1619,7 @@ type ModelInputById = {
1603
1619
  type TypedModelId = keyof ModelInputById;
1604
1620
  type ModelInput<M extends TypedModelId> = ModelInputById[M];
1605
1621
  /** IDs of text-generation (LLM) models — narrows generateText(). */
1606
- type TextModelId = "claude-haiku-4-5" | "claude-opus-4-8" | "claude-sonnet-4-6" | "gemini-3-pro" | "gemini-3.5-flash-lite" | "gemini-3.6-flash" | "gemini-3.7-flash" | "gpt-5.5";
1622
+ type TextModelId = "claude-haiku-4-5" | "claude-opus-4-8" | "claude-sonnet-4-6" | "gemini-3-pro" | "gemini-3.5-flash-lite" | "gemini-3.6-flash" | "gemini-3.7-flash" | "gemini-3.8-flash" | "gpt-5.5";
1607
1623
  type TextModelInputById = Pick<ModelInputById, TextModelId>;
1608
1624
 
1609
1625
  /**
@@ -2586,6 +2602,7 @@ declare const Models: {
2586
2602
  readonly Gemini35FlashLite: "gemini-3.5-flash-lite";
2587
2603
  readonly Gemini36Flash: "gemini-3.6-flash";
2588
2604
  readonly Gemini37Flash: "gemini-3.7-flash";
2605
+ readonly Gemini38Flash: "gemini-3.8-flash";
2589
2606
  readonly GeminiOmni11FlashPreview: "gemini-omni-1.1-flash-preview";
2590
2607
  readonly GeminiOmniFlashPreview: "gemini-omni-flash-preview";
2591
2608
  readonly Gpt55: "gpt-5.5";
@@ -2655,6 +2672,7 @@ declare const Models: {
2655
2672
  readonly MinimaxH3: "minimax-h3";
2656
2673
  readonly MinimaxH3Max: "minimax-h3-max";
2657
2674
  readonly MinimaxH3MaxR2v: "minimax-h3-max-r2v";
2675
+ readonly MinimaxH3MaxTurbo: "minimax-h3-max-turbo";
2658
2676
  readonly MinimaxMusicV2: "minimax-music-v2";
2659
2677
  readonly MinimaxMusicV3: "minimax-music-v3";
2660
2678
  readonly MuseImage10: "muse-image-1.0";
package/index.js CHANGED
@@ -6663,6 +6663,54 @@ var { MODELS: MODELS26 } = defineModels("minimax", [
6663
6663
  } }
6664
6664
  ]
6665
6665
  },
6666
+ {
6667
+ // Turbo sibling of minimax-h3-max — same fal.ai worker, same wire shape,
6668
+ // tuned for speed (faster-than-realtime generation). The only schema
6669
+ // difference: prompt expansion has no 'disabled' mode on this endpoint.
6670
+ id: "minimax-h3-max-turbo",
6671
+ name: "MiniMax H3 Max Turbo",
6672
+ modelId: "fal-ai-h3-max-turbo",
6673
+ addedAt: "2026-09-03",
6674
+ workflow: "minimax/h3-max-turbo/text-to-video",
6675
+ editWorkflow: "minimax/h3-max-turbo/image-to-video",
6676
+ estimatedTime: 5,
6677
+ mode: "video",
6678
+ inputType: "t2v",
6679
+ description: "Faster-than-realtime MiniMax H3 Max Turbo video from text or a start/end frame, with prompt expansion. Up to 15s at 768p.",
6680
+ features: [
6681
+ feat("Fast", "characteristic"),
6682
+ feat("Image Input", "input"),
6683
+ feat("Start/End Frame", "frame"),
6684
+ feat("768p", "resolution"),
6685
+ feat("5-15 sec", "duration")
6686
+ ],
6687
+ paramConfig: {
6688
+ ...params.prompt(),
6689
+ ...params.startFrame(),
6690
+ ...params.endFrame(),
6691
+ // Lowercase on purpose: the worker uppercases for the fal wire ('768P')
6692
+ // and the pricing qualities are lowercase, so this casing serves both.
6693
+ ...params.resolution(["480p", "768p"], "768p"),
6694
+ ...params.durationRange(5, 15, 5),
6695
+ ...params.aspectRatio(["21:9", "16:9", "4:3", "1:1", "3:4", "9:16"], "16:9"),
6696
+ // Unlike minimax-h3-max, the turbo wire has no 'disabled' expansion mode.
6697
+ ...p.enum("promptExpansionMode", ["balanced", "quality"], "balanced", { label: "Prompt Expansion" }),
6698
+ // -1 (sentinel) means "pick a random seed"; the builder drops it.
6699
+ ...p.range("seed", -1, 2147483647, -1),
6700
+ ...p.boolean("enableSafetyChecker", true, "Safety Checker")
6701
+ },
6702
+ constraints: [
6703
+ // The T2V wire has no end_image_url — an end frame only reaches the
6704
+ // vendor on the I2V route, which needs a start frame to trigger.
6705
+ { when: { startFrame: { exists: false } }, then: {
6706
+ endFrame: { disabled: true, reason: "An end frame requires a start frame." }
6707
+ } },
6708
+ // I2V derives the ratio from the input image (no aspect_ratio on that wire).
6709
+ { when: { startFrame: { exists: true } }, then: {
6710
+ aspectRatio: { disabled: true, reason: "Aspect ratio follows the start frame image." }
6711
+ } }
6712
+ ]
6713
+ },
6666
6714
  {
6667
6715
  // Reference-to-video sibling of minimax-h3-max (same fal.ai worker).
6668
6716
  // The prompt addresses references by modality and order — Image 1,
@@ -6736,6 +6784,19 @@ var buildMinimaxH3MaxPayload = (input) => ({
6736
6784
  ...input.seed != null && input.seed !== -1 ? { seed: input.seed } : {},
6737
6785
  enable_safety_checker: input.enableSafetyChecker ?? true
6738
6786
  });
6787
+ var buildMinimaxH3MaxTurboPayload = (input) => ({
6788
+ prompt: input.prompt,
6789
+ prompt_expansion_mode: input.promptExpansionMode ?? "balanced",
6790
+ duration: input.duration ?? 5,
6791
+ resolution: input.resolution ?? "768p",
6792
+ ...input.startFrame ? {
6793
+ image_url: input.startFrame,
6794
+ ...input.endFrame ? { end_image_url: input.endFrame } : {}
6795
+ } : { aspect_ratio: input.aspectRatio ?? "16:9" },
6796
+ // -1 is the paramConfig sentinel for "random seed" — omit it on the wire.
6797
+ ...input.seed != null && input.seed !== -1 ? { seed: input.seed } : {},
6798
+ enable_safety_checker: input.enableSafetyChecker ?? true
6799
+ });
6739
6800
  var buildMinimaxH3MaxR2VPayload = (input) => ({
6740
6801
  prompt: input.prompt,
6741
6802
  prompt_expansion_mode: input.promptExpansionMode ?? "balanced",
@@ -6752,10 +6813,12 @@ var buildMinimaxH3MaxR2VPayload = (input) => ({
6752
6813
  registerPayloads(MODELS26, {
6753
6814
  "minimax-music-v3": buildMinimaxMusicV3Payload,
6754
6815
  "minimax-h3-max": buildMinimaxH3MaxPayload,
6816
+ "minimax-h3-max-turbo": buildMinimaxH3MaxTurboPayload,
6755
6817
  "minimax-h3-max-r2v": buildMinimaxH3MaxR2VPayload
6756
6818
  });
6757
6819
  registerEditPayloads(MODELS26, {
6758
- "minimax-h3-max": buildMinimaxH3MaxPayload
6820
+ "minimax-h3-max": buildMinimaxH3MaxPayload,
6821
+ "minimax-h3-max-turbo": buildMinimaxH3MaxTurboPayload
6759
6822
  });
6760
6823
 
6761
6824
  // src/vendors/catalog/ideogram.ts
@@ -8640,6 +8703,23 @@ var { MODELS: GEMINI_LLM } = defineModels("google", [
8640
8703
  ...thinkingParam(["low", "high"])
8641
8704
  }
8642
8705
  },
8706
+ {
8707
+ id: "gemini-3.8-flash",
8708
+ name: "Gemini 3.8 Flash",
8709
+ workflow: "chat-completions",
8710
+ addedAt: "2026-09-03",
8711
+ estimatedTime: 5,
8712
+ mode: "text",
8713
+ inputType: "i2t",
8714
+ badge: ["fast"],
8715
+ description: "Latest fast Gemini model \u2014 low-latency multimodal text generation.",
8716
+ features: [feat("Vision", "input"), feat("Thinking", "characteristic")],
8717
+ paramConfig: {
8718
+ ...params.prompt(),
8719
+ ...params.imageInput(8, "Images"),
8720
+ ...thinkingParam(["low", "medium", "high"])
8721
+ }
8722
+ },
8643
8723
  {
8644
8724
  id: "gemini-3.7-flash",
8645
8725
  name: "Gemini 3.7 Flash",
@@ -8649,7 +8729,7 @@ var { MODELS: GEMINI_LLM } = defineModels("google", [
8649
8729
  mode: "text",
8650
8730
  inputType: "i2t",
8651
8731
  badge: ["fast"],
8652
- description: "Latest fast Gemini model \u2014 low-latency multimodal text generation.",
8732
+ description: "Fast Gemini model \u2014 low-latency multimodal text generation.",
8653
8733
  features: [feat("Vision", "input"), feat("Thinking", "characteristic")],
8654
8734
  paramConfig: {
8655
8735
  ...params.prompt(),
@@ -8750,6 +8830,7 @@ registerPayloads(MODELS36, {
8750
8830
  "gemini-3-pro": buildGeminiPayload("gemini-3-pro-preview"),
8751
8831
  // Flash models route through chat-completions (OpenAI-shaped), not the
8752
8832
  // native `gemini` workflow. flash-lite has no thinking param → reasoning_effort omitted.
8833
+ "gemini-3.8-flash": buildOpenAiPayload("gemini-3.8-flash"),
8753
8834
  "gemini-3.7-flash": buildOpenAiPayload("gemini-3.7-flash"),
8754
8835
  "gemini-3.6-flash": buildOpenAiPayload("gemini-3.6-flash"),
8755
8836
  "gemini-3.5-flash-lite": buildOpenAiPayload("gemini-3.5-flash-lite")
@@ -11096,6 +11177,7 @@ var Gemini31FlashLiteImage = "gemini-3.1-flash-lite-image";
11096
11177
  var Gemini35FlashLite = "gemini-3.5-flash-lite";
11097
11178
  var Gemini36Flash = "gemini-3.6-flash";
11098
11179
  var Gemini37Flash = "gemini-3.7-flash";
11180
+ var Gemini38Flash = "gemini-3.8-flash";
11099
11181
  var GeminiOmni11FlashPreview = "gemini-omni-1.1-flash-preview";
11100
11182
  var GeminiOmniFlashPreview = "gemini-omni-flash-preview";
11101
11183
  var Gpt55 = "gpt-5.5";
@@ -11165,6 +11247,7 @@ var Minimax02Hd = "minimax-02-hd";
11165
11247
  var MinimaxH3 = "minimax-h3";
11166
11248
  var MinimaxH3Max = "minimax-h3-max";
11167
11249
  var MinimaxH3MaxR2v = "minimax-h3-max-r2v";
11250
+ var MinimaxH3MaxTurbo = "minimax-h3-max-turbo";
11168
11251
  var MinimaxMusicV2 = "minimax-music-v2";
11169
11252
  var MinimaxMusicV3 = "minimax-music-v3";
11170
11253
  var MuseImage10 = "muse-image-1.0";
@@ -11310,6 +11393,7 @@ var Models = {
11310
11393
  Gemini35FlashLite,
11311
11394
  Gemini36Flash,
11312
11395
  Gemini37Flash,
11396
+ Gemini38Flash,
11313
11397
  GeminiOmni11FlashPreview,
11314
11398
  GeminiOmniFlashPreview,
11315
11399
  Gpt55,
@@ -11379,6 +11463,7 @@ var Models = {
11379
11463
  MinimaxH3,
11380
11464
  MinimaxH3Max,
11381
11465
  MinimaxH3MaxR2v,
11466
+ MinimaxH3MaxTurbo,
11382
11467
  MinimaxMusicV2,
11383
11468
  MinimaxMusicV3,
11384
11469
  MuseImage10,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@picsart/ai-sdk",
3
- "version": "5.26.3",
3
+ "version": "5.28.0",
4
4
  "type": "module",
5
5
  "description": "Type-safe SDK for 100+ AI models — image, video, audio, and text generation with Picsart",
6
6
  "license": "MIT",