@just-every/ensemble 0.2.159 → 0.2.161

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.
Files changed (132) hide show
  1. package/README.md +37 -1
  2. package/dist/cjs/core/ensemble_image.cjs +92 -6
  3. package/dist/cjs/core/ensemble_image.d.ts +2 -2
  4. package/dist/cjs/core/ensemble_image.d.ts.map +1 -1
  5. package/dist/cjs/core/ensemble_image.js.map +1 -1
  6. package/dist/cjs/data/model_data.cjs +185 -1
  7. package/dist/cjs/data/model_data.d.ts.map +1 -1
  8. package/dist/cjs/data/model_data.js.map +1 -1
  9. package/dist/cjs/model_providers/bytedance.cjs +202 -0
  10. package/dist/cjs/model_providers/bytedance.d.ts +9 -0
  11. package/dist/cjs/model_providers/bytedance.d.ts.map +1 -0
  12. package/dist/cjs/model_providers/bytedance.js.map +1 -0
  13. package/dist/cjs/model_providers/fal.cjs +97 -0
  14. package/dist/cjs/model_providers/fal.d.ts +10 -0
  15. package/dist/cjs/model_providers/fal.d.ts.map +1 -0
  16. package/dist/cjs/model_providers/fal.js.map +1 -0
  17. package/dist/cjs/model_providers/fireworks.cjs +193 -0
  18. package/dist/cjs/model_providers/fireworks.d.ts +12 -0
  19. package/dist/cjs/model_providers/fireworks.d.ts.map +1 -0
  20. package/dist/cjs/model_providers/fireworks.js.map +1 -0
  21. package/dist/cjs/model_providers/gemini.cjs +136 -5
  22. package/dist/cjs/model_providers/gemini.d.ts.map +1 -1
  23. package/dist/cjs/model_providers/gemini.js.map +1 -1
  24. package/dist/cjs/model_providers/ideogram.cjs +136 -0
  25. package/dist/cjs/model_providers/ideogram.d.ts +9 -0
  26. package/dist/cjs/model_providers/ideogram.d.ts.map +1 -0
  27. package/dist/cjs/model_providers/ideogram.js.map +1 -0
  28. package/dist/cjs/model_providers/luma.cjs +150 -0
  29. package/dist/cjs/model_providers/luma.d.ts +9 -0
  30. package/dist/cjs/model_providers/luma.d.ts.map +1 -0
  31. package/dist/cjs/model_providers/luma.js.map +1 -0
  32. package/dist/cjs/model_providers/midjourney.cjs +134 -0
  33. package/dist/cjs/model_providers/midjourney.d.ts +9 -0
  34. package/dist/cjs/model_providers/midjourney.d.ts.map +1 -0
  35. package/dist/cjs/model_providers/midjourney.js.map +1 -0
  36. package/dist/cjs/model_providers/model_provider.cjs +60 -0
  37. package/dist/cjs/model_providers/model_provider.d.ts.map +1 -1
  38. package/dist/cjs/model_providers/model_provider.js.map +1 -1
  39. package/dist/cjs/model_providers/openai.cjs +24 -14
  40. package/dist/cjs/model_providers/openai.d.ts.map +1 -1
  41. package/dist/cjs/model_providers/openai.js.map +1 -1
  42. package/dist/cjs/model_providers/runway.cjs +145 -0
  43. package/dist/cjs/model_providers/runway.d.ts +9 -0
  44. package/dist/cjs/model_providers/runway.d.ts.map +1 -0
  45. package/dist/cjs/model_providers/runway.js.map +1 -0
  46. package/dist/cjs/model_providers/stability.cjs +130 -0
  47. package/dist/cjs/model_providers/stability.d.ts +10 -0
  48. package/dist/cjs/model_providers/stability.d.ts.map +1 -0
  49. package/dist/cjs/model_providers/stability.js.map +1 -0
  50. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  51. package/dist/cjs/types/types.d.ts +11 -3
  52. package/dist/cjs/types/types.d.ts.map +1 -1
  53. package/dist/cjs/utils/cost_tracker.cjs +3 -0
  54. package/dist/cjs/utils/cost_tracker.d.ts +1 -0
  55. package/dist/cjs/utils/cost_tracker.d.ts.map +1 -1
  56. package/dist/cjs/utils/cost_tracker.js.map +1 -1
  57. package/dist/cjs/utils/ensemble_result.d.ts +1 -1
  58. package/dist/cjs/utils/ensemble_result.d.ts.map +1 -1
  59. package/dist/cjs/utils/fetch_with_timeout.cjs +28 -0
  60. package/dist/cjs/utils/fetch_with_timeout.d.ts +2 -0
  61. package/dist/cjs/utils/fetch_with_timeout.d.ts.map +1 -0
  62. package/dist/cjs/utils/fetch_with_timeout.js.map +1 -0
  63. package/dist/cjs/utils/image_utils.cjs +23 -0
  64. package/dist/cjs/utils/image_utils.d.ts +5 -0
  65. package/dist/cjs/utils/image_utils.d.ts.map +1 -1
  66. package/dist/cjs/utils/image_utils.js.map +1 -1
  67. package/dist/core/ensemble_image.d.ts +2 -2
  68. package/dist/core/ensemble_image.d.ts.map +1 -1
  69. package/dist/core/ensemble_image.js +59 -6
  70. package/dist/core/ensemble_image.js.map +1 -1
  71. package/dist/data/model_data.d.ts.map +1 -1
  72. package/dist/data/model_data.js +185 -1
  73. package/dist/data/model_data.js.map +1 -1
  74. package/dist/model_providers/bytedance.d.ts +9 -0
  75. package/dist/model_providers/bytedance.d.ts.map +1 -0
  76. package/dist/model_providers/bytedance.js +198 -0
  77. package/dist/model_providers/bytedance.js.map +1 -0
  78. package/dist/model_providers/fal.d.ts +10 -0
  79. package/dist/model_providers/fal.d.ts.map +1 -0
  80. package/dist/model_providers/fal.js +93 -0
  81. package/dist/model_providers/fal.js.map +1 -0
  82. package/dist/model_providers/fireworks.d.ts +12 -0
  83. package/dist/model_providers/fireworks.d.ts.map +1 -0
  84. package/dist/model_providers/fireworks.js +189 -0
  85. package/dist/model_providers/fireworks.js.map +1 -0
  86. package/dist/model_providers/gemini.d.ts.map +1 -1
  87. package/dist/model_providers/gemini.js +136 -5
  88. package/dist/model_providers/gemini.js.map +1 -1
  89. package/dist/model_providers/ideogram.d.ts +9 -0
  90. package/dist/model_providers/ideogram.d.ts.map +1 -0
  91. package/dist/model_providers/ideogram.js +132 -0
  92. package/dist/model_providers/ideogram.js.map +1 -0
  93. package/dist/model_providers/luma.d.ts +9 -0
  94. package/dist/model_providers/luma.d.ts.map +1 -0
  95. package/dist/model_providers/luma.js +146 -0
  96. package/dist/model_providers/luma.js.map +1 -0
  97. package/dist/model_providers/midjourney.d.ts +9 -0
  98. package/dist/model_providers/midjourney.d.ts.map +1 -0
  99. package/dist/model_providers/midjourney.js +130 -0
  100. package/dist/model_providers/midjourney.js.map +1 -0
  101. package/dist/model_providers/model_provider.d.ts.map +1 -1
  102. package/dist/model_providers/model_provider.js +60 -0
  103. package/dist/model_providers/model_provider.js.map +1 -1
  104. package/dist/model_providers/openai.d.ts.map +1 -1
  105. package/dist/model_providers/openai.js +24 -14
  106. package/dist/model_providers/openai.js.map +1 -1
  107. package/dist/model_providers/runway.d.ts +9 -0
  108. package/dist/model_providers/runway.d.ts.map +1 -0
  109. package/dist/model_providers/runway.js +141 -0
  110. package/dist/model_providers/runway.js.map +1 -0
  111. package/dist/model_providers/stability.d.ts +10 -0
  112. package/dist/model_providers/stability.d.ts.map +1 -0
  113. package/dist/model_providers/stability.js +126 -0
  114. package/dist/model_providers/stability.js.map +1 -0
  115. package/dist/tsconfig.tsbuildinfo +1 -1
  116. package/dist/types/types.d.ts +11 -3
  117. package/dist/types/types.d.ts.map +1 -1
  118. package/dist/utils/cost_tracker.d.ts +1 -0
  119. package/dist/utils/cost_tracker.d.ts.map +1 -1
  120. package/dist/utils/cost_tracker.js +3 -0
  121. package/dist/utils/cost_tracker.js.map +1 -1
  122. package/dist/utils/ensemble_result.d.ts +1 -1
  123. package/dist/utils/ensemble_result.d.ts.map +1 -1
  124. package/dist/utils/fetch_with_timeout.d.ts +2 -0
  125. package/dist/utils/fetch_with_timeout.d.ts.map +1 -0
  126. package/dist/utils/fetch_with_timeout.js +25 -0
  127. package/dist/utils/fetch_with_timeout.js.map +1 -0
  128. package/dist/utils/image_utils.d.ts +5 -0
  129. package/dist/utils/image_utils.d.ts.map +1 -1
  130. package/dist/utils/image_utils.js +22 -0
  131. package/dist/utils/image_utils.js.map +1 -1
  132. package/package.json +121 -114
@@ -0,0 +1,150 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.lumaProvider = exports.LumaProvider = void 0;
4
+ const base_provider_js_1 = require("./base_provider.cjs");
5
+ const cost_tracker_js_1 = require("../utils/cost_tracker.cjs");
6
+ const fetch_with_timeout_js_1 = require("../utils/fetch_with_timeout.cjs");
7
+ const llm_logger_js_1 = require("../utils/llm_logger.cjs");
8
+ const LUMA_BASE = 'https://api.lumalabs.ai/dream-machine/v1';
9
+ function mapAspect(size) {
10
+ if (!size)
11
+ return undefined;
12
+ const s = String(size);
13
+ if (s === 'square' || s === '1024x1024' || s === '512x512' || s === '256x256')
14
+ return '1:1';
15
+ if (s === 'landscape' || s === '1792x1024' || s === '1536x1024')
16
+ return '16:9';
17
+ if (s === 'portrait' || s === '1024x1792' || s === '1024x1536')
18
+ return '9:16';
19
+ return undefined;
20
+ }
21
+ class LumaProvider extends base_provider_js_1.BaseModelProvider {
22
+ constructor() {
23
+ super('luma');
24
+ }
25
+ async *createResponseStream() {
26
+ throw new Error('Luma provider does not support text streaming');
27
+ }
28
+ async createImage(prompt, model, agent, opts) {
29
+ const apiKey = process.env.LUMA_API_KEY;
30
+ if (!apiKey)
31
+ throw new Error('Luma provider: LUMA_API_KEY is not set');
32
+ const requestId = (0, llm_logger_js_1.log_llm_request)(agent.agent_id || 'default', 'luma', model, { prompt, opts }, new Date());
33
+ let success = false;
34
+ try {
35
+ const aspect = mapAspect(opts?.size);
36
+ const body = { prompt, model: model.replace('luma-', ''), format: 'png' };
37
+ if (aspect)
38
+ body.aspect_ratio = aspect;
39
+ const srcs = [];
40
+ if (opts?.source_images) {
41
+ const arr = Array.isArray(opts.source_images) ? opts.source_images : [opts.source_images];
42
+ for (const s of arr) {
43
+ const v = typeof s === 'string' ? s : s?.data || '';
44
+ if (typeof v === 'string' && /^https?:\/\//i.test(v))
45
+ srcs.push(v);
46
+ }
47
+ }
48
+ if (srcs.length)
49
+ body.image_ref = [{ image_url: srcs[0] }];
50
+ const shouldRetry = (error) => {
51
+ const message = String(error?.message || '').toLowerCase();
52
+ return error?.name === 'AbortError' || message.includes('timed out');
53
+ };
54
+ const withRetries = async (fn, attempts = 3) => {
55
+ let lastError;
56
+ for (let attempt = 1; attempt <= attempts; attempt++) {
57
+ try {
58
+ return await fn();
59
+ }
60
+ catch (error) {
61
+ lastError = error;
62
+ if (!shouldRetry(error) || attempt === attempts)
63
+ throw error;
64
+ await new Promise(r => setTimeout(r, attempt * 500));
65
+ }
66
+ }
67
+ throw lastError;
68
+ };
69
+ const createTimeout = 20000;
70
+ let res = await withRetries(() => (0, fetch_with_timeout_js_1.fetchWithTimeout)(`${LUMA_BASE}/generations/image`, {
71
+ method: 'POST',
72
+ headers: {
73
+ Authorization: `Bearer ${apiKey}`,
74
+ 'Content-Type': 'application/json',
75
+ },
76
+ body: JSON.stringify(body),
77
+ }, createTimeout), 3);
78
+ if (!res.ok) {
79
+ const text = await res.text();
80
+ if (srcs.length && (res.status === 400 || res.status === 422)) {
81
+ delete body.image_ref;
82
+ res = await withRetries(() => (0, fetch_with_timeout_js_1.fetchWithTimeout)(`${LUMA_BASE}/generations/image`, {
83
+ method: 'POST',
84
+ headers: {
85
+ Authorization: `Bearer ${apiKey}`,
86
+ 'Content-Type': 'application/json',
87
+ },
88
+ body: JSON.stringify(body),
89
+ }, 20000), 3);
90
+ }
91
+ if (!res.ok)
92
+ throw new Error(`Luma create failed: ${res.status} ${text}`);
93
+ }
94
+ const job = await res.json();
95
+ if (job?.state === 'completed' && (job?.assets?.image || job?.assets?.image_url)) {
96
+ const url = job.assets?.image || job.assets?.image_url;
97
+ if (url) {
98
+ cost_tracker_js_1.costTracker.addUsage({ model, image_count: 1, request_id: opts?.request_id, metadata: { source: 'luma', mode: 'sync' } });
99
+ success = true;
100
+ return [url];
101
+ }
102
+ }
103
+ const id = job.id || job.generation_id || job.data?.id;
104
+ if (!id)
105
+ throw new Error('Luma: missing generation id in response');
106
+ const started = Date.now();
107
+ const timeoutMs = 120000;
108
+ const intervalMs = 1500;
109
+ while (true) {
110
+ let r;
111
+ try {
112
+ r = await withRetries(() => (0, fetch_with_timeout_js_1.fetchWithTimeout)(`${LUMA_BASE}/generations/${id}`, {
113
+ headers: { Authorization: `Bearer ${apiKey}` },
114
+ }, 15000), 2);
115
+ }
116
+ catch (error) {
117
+ throw new Error(`Luma poll failed for ${id}: ${error?.message || error}`);
118
+ }
119
+ if (!r.ok)
120
+ throw new Error(`Luma poll failed: ${r.status} ${await r.text()}`);
121
+ const data = await r.json();
122
+ const state = data.state || data.status;
123
+ if (state === 'completed' || state === 'succeeded' || state === 'success') {
124
+ const url = data.assets?.image || data.output?.image_url || data.url;
125
+ if (!url)
126
+ throw new Error('Luma: completed without image url');
127
+ cost_tracker_js_1.costTracker.addUsage({ model, image_count: 1, request_id: opts?.request_id, metadata: { source: 'luma' } });
128
+ success = true;
129
+ return [url];
130
+ }
131
+ if (state === 'failed' || state === 'error' || state === 'canceled') {
132
+ throw new Error(`Luma generation failed: ${state}`);
133
+ }
134
+ if (Date.now() - started > timeoutMs)
135
+ throw new Error('Luma generation timed out');
136
+ await new Promise(r => setTimeout(r, intervalMs));
137
+ }
138
+ }
139
+ catch (err) {
140
+ (0, llm_logger_js_1.log_llm_error)(requestId, err);
141
+ throw err;
142
+ }
143
+ finally {
144
+ (0, llm_logger_js_1.log_llm_response)(requestId, { ok: success });
145
+ }
146
+ }
147
+ }
148
+ exports.LumaProvider = LumaProvider;
149
+ exports.lumaProvider = new LumaProvider();
150
+ //# sourceMappingURL=luma.js.map
@@ -0,0 +1,9 @@
1
+ import { BaseModelProvider } from "./base_provider.cjs";
2
+ import type { AgentDefinition, ImageGenerationOpts, ProviderStreamEvent } from "../types/types.cjs";
3
+ export declare class LumaProvider extends BaseModelProvider {
4
+ constructor();
5
+ createResponseStream(): AsyncGenerator<ProviderStreamEvent>;
6
+ createImage(prompt: string, model: string, agent: AgentDefinition, opts?: ImageGenerationOpts): Promise<string[]>;
7
+ }
8
+ export declare const lumaProvider: LumaProvider;
9
+ //# sourceMappingURL=luma.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"luma.d.ts","sourceRoot":"","sources":["../../../model_providers/luma.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,mBAAmB,EAAiB,MAAM,mBAAmB,CAAC;AAgBlH,qBAAa,YAAa,SAAQ,iBAAiB;;IAMxC,oBAAoB,IAAI,cAAc,CAAC,mBAAmB,CAAC;IAI5D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAuH1H;AAED,eAAO,MAAM,YAAY,cAAqB,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"luma.js","sourceRoot":"","sources":["../../../model_providers/luma.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.midjourneyProvider = exports.MidjourneyProvider = void 0;
4
+ const base_provider_js_1 = require("./base_provider.cjs");
5
+ const cost_tracker_js_1 = require("../utils/cost_tracker.cjs");
6
+ const fetch_with_timeout_js_1 = require("../utils/fetch_with_timeout.cjs");
7
+ const llm_logger_js_1 = require("../utils/llm_logger.cjs");
8
+ const KIE_BASE = process.env.MJ_API_BASE || 'https://api.kie.ai';
9
+ function mapMJAspect(size) {
10
+ if (!size)
11
+ return undefined;
12
+ const s = String(size);
13
+ if (s === 'square' || s === '1024x1024' || s === '512x512' || s === '256x256')
14
+ return '1:1';
15
+ if (s === 'landscape' || s === '1792x1024' || s === '1536x1024')
16
+ return '16:9';
17
+ if (s === 'portrait' || s === '1024x1792' || s === '1024x1536')
18
+ return '9:16';
19
+ return undefined;
20
+ }
21
+ class MidjourneyProvider extends base_provider_js_1.BaseModelProvider {
22
+ constructor() {
23
+ super('midjourney');
24
+ }
25
+ async *createResponseStream() {
26
+ throw new Error('Midjourney provider does not support text streaming');
27
+ }
28
+ async createImage(prompt, model, agent, opts) {
29
+ const apiKey = process.env.MIDJOURNEY_API_KEY || process.env.MJ_API_KEY || process.env.KIE_API_KEY;
30
+ if (!apiKey)
31
+ throw new Error('Midjourney provider: MIDJOURNEY_API_KEY (or KIE_API_KEY) is not set');
32
+ if (!process.env.MIDJOURNEY_API_KEY && process.env.MJ_API_KEY) {
33
+ console.warn('[Midjourney] MJ_API_KEY is deprecated. Please set MIDJOURNEY_API_KEY instead.');
34
+ }
35
+ const requestId = (0, llm_logger_js_1.log_llm_request)(agent.agent_id || 'default', 'midjourney', model, { prompt, opts }, new Date());
36
+ try {
37
+ const aspect = mapMJAspect(opts?.size) || '1:1';
38
+ const n = Math.max(1, Math.min(4, opts?.n || 1));
39
+ let taskType = 'mj_txt2img';
40
+ const fileUrls = [];
41
+ if (opts?.source_images) {
42
+ const srcs = Array.isArray(opts.source_images) ? opts.source_images : [opts.source_images];
43
+ for (const si of srcs) {
44
+ const s = typeof si === 'string' ? si : si?.data || '';
45
+ if (typeof s === 'string' && /^https?:\/\//i.test(s))
46
+ fileUrls.push(s);
47
+ }
48
+ if (fileUrls.length > 0)
49
+ taskType = 'mj_img2img';
50
+ }
51
+ const body = {
52
+ taskType,
53
+ version: '7',
54
+ prompt,
55
+ aspectRatio: aspect,
56
+ speed: 'fast',
57
+ stylization: 100,
58
+ weirdness: 0,
59
+ variety: 0,
60
+ };
61
+ if (taskType === 'mj_img2img' && fileUrls.length > 0) {
62
+ body.fileUrls = fileUrls;
63
+ }
64
+ const headers = {
65
+ 'Content-Type': 'application/json',
66
+ Authorization: `Bearer ${apiKey}`,
67
+ };
68
+ const res = await (0, fetch_with_timeout_js_1.fetchWithTimeout)(`${KIE_BASE}/api/v1/mj/generate`, {
69
+ method: 'POST',
70
+ headers,
71
+ body: JSON.stringify(body),
72
+ }, 20000);
73
+ const data = await res.json().catch(async () => ({ code: res.status, msg: await res.text() }));
74
+ if (!res.ok || data?.code && data.code !== 200) {
75
+ throw new Error(`MJ create failed: code=${data?.code ?? res.status} msg=${data?.msg ?? ''}`);
76
+ }
77
+ const taskId = data?.data?.taskId || data?.taskId || data?.id;
78
+ if (!taskId)
79
+ throw new Error('Midjourney: missing taskId');
80
+ const timeoutMs = 300000;
81
+ const started = Date.now();
82
+ let images = [];
83
+ let notFoundCount = 0;
84
+ while (true) {
85
+ const r = await (0, fetch_with_timeout_js_1.fetchWithTimeout)(`${KIE_BASE}/api/v1/mj/record-info?taskId=${encodeURIComponent(taskId)}`, {
86
+ headers: { Authorization: `Bearer ${apiKey}` },
87
+ }, 15000);
88
+ const info = await r.json().catch(async () => ({ code: r.status, msg: await r.text() }));
89
+ const code = info?.code ?? r.status;
90
+ const status = info?.data?.status || info?.status;
91
+ if (code && code !== 200) {
92
+ if (code === 404) {
93
+ notFoundCount++;
94
+ if (notFoundCount > 5)
95
+ throw new Error(`Midjourney record not found for task ${taskId}`);
96
+ }
97
+ else {
98
+ throw new Error(`Midjourney poll error: code=${code} msg=${info?.msg ?? ''}`);
99
+ }
100
+ }
101
+ const list = info?.data?.resultInfoJson?.resultUrls || info?.data?.resultUrls || info?.resultInfoJson?.resultUrls || info?.resultUrls || [];
102
+ const urls = (list || [])
103
+ .map((u) => (typeof u === 'string' ? u : u?.resultUrl))
104
+ .filter(Boolean);
105
+ if (status === 'SUCCESS' || info?.successFlag === 1 || urls.length > 0) {
106
+ const urls = list
107
+ .map((u) => (typeof u === 'string' ? u : u?.resultUrl))
108
+ .filter(Boolean);
109
+ if (!urls.length)
110
+ throw new Error('Midjourney: no result URLs');
111
+ images = urls.slice(0, n);
112
+ break;
113
+ }
114
+ if (info?.successFlag === 2 || status === 'FAILED')
115
+ throw new Error('Midjourney generation failed');
116
+ if (Date.now() - started > timeoutMs)
117
+ throw new Error('Midjourney generation timed out');
118
+ await new Promise(r2 => setTimeout(r2, 1000));
119
+ }
120
+ cost_tracker_js_1.costTracker.addUsage({ model, image_count: images.length, request_id: opts?.request_id, metadata: { source: 'kie' } });
121
+ return images;
122
+ }
123
+ catch (err) {
124
+ (0, llm_logger_js_1.log_llm_error)(requestId, err);
125
+ throw err;
126
+ }
127
+ finally {
128
+ (0, llm_logger_js_1.log_llm_response)(requestId, { ok: true });
129
+ }
130
+ }
131
+ }
132
+ exports.MidjourneyProvider = MidjourneyProvider;
133
+ exports.midjourneyProvider = new MidjourneyProvider();
134
+ //# sourceMappingURL=midjourney.js.map
@@ -0,0 +1,9 @@
1
+ import { BaseModelProvider } from "./base_provider.cjs";
2
+ import type { AgentDefinition, ImageGenerationOpts, ProviderStreamEvent } from "../types/types.cjs";
3
+ export declare class MidjourneyProvider extends BaseModelProvider {
4
+ constructor();
5
+ createResponseStream(): AsyncGenerator<ProviderStreamEvent>;
6
+ createImage(prompt: string, model: string, agent: AgentDefinition, opts?: ImageGenerationOpts): Promise<string[]>;
7
+ }
8
+ export declare const midjourneyProvider: MidjourneyProvider;
9
+ //# sourceMappingURL=midjourney.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"midjourney.d.ts","sourceRoot":"","sources":["../../../model_providers/midjourney.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,mBAAmB,EAAiB,MAAM,mBAAmB,CAAC;AAiBlH,qBAAa,kBAAmB,SAAQ,iBAAiB;;IAK9C,oBAAoB,IAAI,cAAc,CAAC,mBAAmB,CAAC;IAI5D,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CA0G1H;AAED,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"midjourney.js","sourceRoot":"","sources":["../../../model_providers/midjourney.ts"],"names":[],"mappings":"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"}
@@ -48,6 +48,14 @@ const deepseek_js_1 = require("./deepseek.cjs");
48
48
  const test_provider_js_1 = require("./test_provider.cjs");
49
49
  const openrouter_js_1 = require("./openrouter.cjs");
50
50
  const elevenlabs_js_1 = require("./elevenlabs.cjs");
51
+ const luma_js_1 = require("./luma.cjs");
52
+ const ideogram_js_1 = require("./ideogram.cjs");
53
+ const midjourney_js_1 = require("./midjourney.cjs");
54
+ const fireworks_js_1 = require("./fireworks.cjs");
55
+ const stability_js_1 = require("./stability.cjs");
56
+ const fal_js_1 = require("./fal.cjs");
57
+ const runway_js_1 = require("./runway.cjs");
58
+ const bytedance_js_1 = require("./bytedance.cjs");
51
59
  const model_data_js_1 = require("../data/model_data.cjs");
52
60
  const MODEL_PROVIDER_MAP = {
53
61
  'gpt-oss-': openrouter_js_1.openRouterProvider,
@@ -64,6 +72,20 @@ const MODEL_PROVIDER_MAP = {
64
72
  'claude-': claude_js_1.claudeProvider,
65
73
  'gemini-': gemini_js_1.geminiProvider,
66
74
  'imagen-': gemini_js_1.geminiProvider,
75
+ 'luma-': luma_js_1.lumaProvider,
76
+ 'ideogram-': ideogram_js_1.ideogramProvider,
77
+ 'midjourney-': midjourney_js_1.midjourneyProvider,
78
+ 'flux-': fireworks_js_1.fireworksProvider,
79
+ 'fireworks-': fireworks_js_1.fireworksProvider,
80
+ 'stability-': stability_js_1.stabilityProvider,
81
+ 'sdxl-': stability_js_1.stabilityProvider,
82
+ sd3: stability_js_1.stabilityProvider,
83
+ 'runway-': runway_js_1.runwayProvider,
84
+ 'recraft-': fal_js_1.falProvider,
85
+ 'fal-': fal_js_1.falProvider,
86
+ 'seedream-': bytedance_js_1.bytedanceProvider,
87
+ 'bytedance-': bytedance_js_1.bytedanceProvider,
88
+ 'byteplus-': bytedance_js_1.bytedanceProvider,
67
89
  'grok-': grok_js_1.grokProvider,
68
90
  'deepseek-': deepseek_js_1.deepSeekProvider,
69
91
  eleven_: elevenlabs_js_1.elevenLabsProvider,
@@ -88,6 +110,16 @@ function isProviderKeyValid(provider) {
88
110
  return !!process.env.ELEVENLABS_API_KEY;
89
111
  case 'test':
90
112
  return true;
113
+ case 'stability':
114
+ return !!process.env.STABILITY_API_KEY;
115
+ case 'fireworks':
116
+ return !!process.env.FIREWORKS_API_KEY;
117
+ case 'fal':
118
+ return !!process.env.FAL_KEY;
119
+ case 'bytedance':
120
+ return !!(process.env.ARK_API_KEY || process.env.BYTEPLUS_API_KEY || process.env.BYTEDANCE_API_KEY);
121
+ case 'runway':
122
+ return !!process.env.RUNWAY_API_KEY && process.env.RUNWAY_API_KEY.startsWith('key_');
91
123
  default: {
92
124
  const externalProvider = (0, external_models_js_1.getExternalProvider)(provider);
93
125
  if (externalProvider) {
@@ -124,6 +156,31 @@ function getProviderFromModel(model) {
124
156
  else if (model.startsWith('gemini-') || model.startsWith('imagen-')) {
125
157
  return 'google';
126
158
  }
159
+ else if (model.startsWith('firefly-')) {
160
+ return 'openrouter';
161
+ }
162
+ else if (model.startsWith('replicate-')) {
163
+ return 'runway';
164
+ }
165
+ else if (model.startsWith('flux-') || model.startsWith('fireworks-')) {
166
+ return 'fireworks';
167
+ }
168
+ else if (model.startsWith('stability-') || model.startsWith('sdxl-') || model.startsWith('sd3')) {
169
+ return 'stability';
170
+ }
171
+ else if (model.startsWith('runway-')) {
172
+ return 'runway';
173
+ }
174
+ else if (model.startsWith('runwayml-')) {
175
+ return 'runway';
176
+ }
177
+ else if (model.startsWith('seedream-') || model.startsWith('bytedance-') || model.startsWith('byteplus-')) {
178
+ return 'bytedance';
179
+ }
180
+ else if (model.startsWith('recraft-') ||
181
+ model.startsWith('fal-')) {
182
+ return 'fal';
183
+ }
127
184
  else if (model.startsWith('grok-')) {
128
185
  return 'xai';
129
186
  }
@@ -309,6 +366,9 @@ function getModelProvider(model) {
309
366
  }
310
367
  }
311
368
  }
369
+ if (isProviderKeyValid('fal')) {
370
+ return fal_js_1.falProvider;
371
+ }
312
372
  if (!isProviderKeyValid(getProviderFromModel('openrouter'))) {
313
373
  throw new Error(`No valid provider found for the model ${model}. Please check your API keys.`);
314
374
  }
@@ -1 +1 @@
1
- {"version":3,"file":"model_provider.d.ts","sourceRoot":"","sources":["../../../model_providers/model_provider.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGnG,YAAY,EAAE,SAAS,EAAE,CAAC;AAG1B,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAkB9C,OAAO,EAAiB,YAAY,EAAE,eAAe,EAAa,MAAM,uBAAuB,CAAC;AA2ChG,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CA4BrE;AAKD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CAwCnE;AA+FD,wBAAsB,iBAAiB,CACnC,KAAK,EAAE,eAAe,EACtB,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,MAAM,EAAE,GACzB,OAAO,CAAC,MAAM,CAAC,CAoCjB;AAKD,wBAAsB,iBAAiB,CACnC,UAAU,CAAC,EAAE,YAAY,EACzB,aAAa,CAAC,EAAE,MAAM,EAAE,EACxB,cAAc,CAAC,EAAE,MAAM,EAAE,EACzB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACrC,OAAO,CAAC,MAAM,CAAC,CAmHjB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAgC9D;AAyBD,wBAAsB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC,CAiED"}
1
+ {"version":3,"file":"model_provider.d.ts","sourceRoot":"","sources":["../../../model_providers/model_provider.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGnG,YAAY,EAAE,SAAS,EAAE,CAAC;AAG1B,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AA0B9C,OAAO,EAAiB,YAAY,EAAE,eAAe,EAAa,MAAM,uBAAuB,CAAC;AA4EhG,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAuCrE;AAKD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CA+DnE;AA+FD,wBAAsB,iBAAiB,CACnC,KAAK,EAAE,eAAe,EACtB,YAAY,CAAC,EAAE,YAAY,EAC3B,aAAa,CAAC,EAAE,MAAM,EAAE,GACzB,OAAO,CAAC,MAAM,CAAC,CAoCjB;AAKD,wBAAsB,iBAAiB,CACnC,UAAU,CAAC,EAAE,YAAY,EACzB,aAAa,CAAC,EAAE,MAAM,EAAE,EACxB,cAAc,CAAC,EAAE,MAAM,EAAE,EACzB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACrC,OAAO,CAAC,MAAM,CAAC,CAmHjB;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,aAAa,CAmC9D;AAyBD,wBAAsB,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC,CAiED"}
@@ -1 +1 @@
1
- {"version":3,"file":"model_provider.js","sourceRoot":"","sources":["../../../model_providers/model_provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model_provider.js","sourceRoot":"","sources":["../../../model_providers/model_provider.ts"],"names":[],"mappings":"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"}
@@ -388,18 +388,27 @@ class OpenAIProvider extends base_provider_js_1.BaseModelProvider {
388
388
  if (imageData.startsWith('http://') || imageData.startsWith('https://')) {
389
389
  const imageResponse = await fetch(imageData);
390
390
  const imageBuffer = await imageResponse.arrayBuffer();
391
+ const ct = imageResponse.headers.get('content-type') || 'image/png';
391
392
  imageFile = await (0, openai_1.toFile)(new Uint8Array(imageBuffer), filename, {
392
- type: 'image/png',
393
+ type: ct,
393
394
  });
394
395
  }
395
396
  else {
396
397
  let base64Data = imageData;
398
+ let mime = 'image/png';
397
399
  if (imageData.startsWith('data:')) {
398
- base64Data = imageData.split(',')[1];
400
+ const m = /^data:([^;]+);base64,(.+)$/i.exec(imageData);
401
+ if (m) {
402
+ mime = m[1] || 'image/png';
403
+ base64Data = m[2];
404
+ }
405
+ else {
406
+ base64Data = imageData.split(',')[1];
407
+ }
399
408
  }
400
409
  const binaryData = Buffer.from(base64Data, 'base64');
401
410
  imageFile = await (0, openai_1.toFile)(new Uint8Array(binaryData), filename, {
402
- type: 'image/png',
411
+ type: mime,
403
412
  });
404
413
  }
405
414
  imageFiles.push(imageFile);
@@ -423,6 +432,7 @@ class OpenAIProvider extends base_provider_js_1.BaseModelProvider {
423
432
  background,
424
433
  quality,
425
434
  size,
435
+ moderation: 'low',
426
436
  output_format: 'png',
427
437
  };
428
438
  if (input_fidelity) {
@@ -451,10 +461,13 @@ class OpenAIProvider extends base_provider_js_1.BaseModelProvider {
451
461
  response = await this.client.images.generate(generateParams);
452
462
  }
453
463
  if (response.data && response.data.length > 0) {
454
- const perImageCost = this.getImageCost(model, quality);
464
+ const perImageCost = this.getImageCost(model, quality, size);
465
+ const totalCost = perImageCost * response.data.length;
455
466
  cost_tracker_js_1.costTracker.addUsage({
456
467
  model,
457
468
  image_count: response.data.length,
469
+ cost: totalCost,
470
+ request_id: opts?.request_id,
458
471
  metadata: {
459
472
  quality,
460
473
  size,
@@ -482,17 +495,14 @@ class OpenAIProvider extends base_provider_js_1.BaseModelProvider {
482
495
  throw error;
483
496
  }
484
497
  }
485
- getImageCost(model, quality) {
498
+ getImageCost(model, quality, size) {
486
499
  if (model === 'gpt-image-1') {
487
- if (quality === 'high') {
488
- return 0.08;
489
- }
490
- else if (quality === 'medium' || quality === 'auto') {
491
- return 0.04;
492
- }
493
- else if (quality === 'low') {
494
- return 0.02;
495
- }
500
+ const isLarge = size === '1536x1024' || size === '1024x1536';
501
+ if (quality === 'high')
502
+ return isLarge ? 0.25 : 0.167;
503
+ if (quality === 'low')
504
+ return isLarge ? 0.016 : 0.011;
505
+ return isLarge ? 0.063 : 0.042;
496
506
  }
497
507
  return 0.04;
498
508
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../model_providers/openai.ts"],"names":[],"mappings":"AAOA,OAAO,EAGH,mBAAmB,EAEnB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,SAAS,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAqVvD,qBAAa,cAAe,SAAQ,iBAAiB;IACjD,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,MAAM,CAAC,EAAE,MAAM;IAU3B,OAAO,KAAK,MAAM,GAYjB;IASK,eAAe,CACjB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,IAAI,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;IAyE3B,WAAW,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,EAAE,CAAC;IAoOpB,OAAO,CAAC,YAAY;IAwBd,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;IAqG7C,oBAAoB,CACvB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,SAAS,CAAC,EAAE,MAAM,GACnB,cAAc,CAAC,mBAAmB,CAAC;IA+wB/B,mBAAmB,CACtB,KAAK,EAAE,wBAAwB,EAC/B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,iBAAiB,GACzB,cAAc,CAAC,kBAAkB,CAAC;CAmQxC;AA4BD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../model_providers/openai.ts"],"names":[],"mappings":"AAOA,OAAO,EAGH,mBAAmB,EAEnB,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,EACxB,iBAAiB,EACjB,SAAS,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAqVvD,qBAAa,cAAe,SAAQ,iBAAiB;IACjD,OAAO,CAAC,OAAO,CAAC,CAAS;IACzB,OAAO,CAAC,MAAM,CAAC,CAAS;gBAEZ,MAAM,CAAC,EAAE,MAAM;IAU3B,OAAO,KAAK,MAAM,GAYjB;IASK,eAAe,CACjB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,IAAI,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,EAAE,CAAC;IAyE3B,WAAW,CACb,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,MAAM,EAAE,CAAC;IAgPpB,OAAO,CAAC,YAAY;IAuBd,WAAW,CACb,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,IAAI,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC;IAqG7C,oBAAoB,CACvB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,eAAe,EACtB,SAAS,CAAC,EAAE,MAAM,GACnB,cAAc,CAAC,mBAAmB,CAAC;IAwxB/B,mBAAmB,CACtB,KAAK,EAAE,wBAAwB,EAC/B,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,iBAAiB,GACzB,cAAc,CAAC,kBAAkB,CAAC;CAmQxC;AA4BD,eAAO,MAAM,cAAc,gBAAuB,CAAC"}