comfyui-node 1.6.4 → 1.6.6

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/dist/index.js CHANGED
@@ -5,6 +5,8 @@ export { WorkflowPool, MemoryQueueAdapter, SmartFailoverStrategy } from "./pool/
5
5
  export { PromptBuilder } from "./prompt-builder.js";
6
6
  export { Workflow, WorkflowJob } from "./workflow.js";
7
7
  export { seed } from "./tools.js";
8
+ // Model loading detection utilities
9
+ export { isModelLoadingNode, workflowContainsModelLoading, getModelLoadingNodes, estimateModelLoadingTime, estimateWorkflowModelLoadingTime, getTimeoutMultiplierForModelLoading, MODEL_LOADING_NODE_TYPES, MODEL_LOADING_TIME_ESTIMATES } from "./utils/model-loading.js";
8
10
  // MultiWorkflowPool exports
9
11
  export { MultiWorkflowPool } from "./multipool/index.js";
10
12
  export { Workflow as MultiWorkflow } from "./multipool/workflow.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAoBtD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,4BAA4B;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAiCtD,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAElC,oCAAoC;AACpC,OAAO,EACL,kBAAkB,EAClB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EACxB,gCAAgC,EAChC,mCAAmC,EACnC,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,0BAA0B,CAAC;AAGlC,4BAA4B;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,aAAa,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,75 +1,75 @@
1
- /**
2
- * Logging utility for MultiWorkflowPool
3
- * Provides structured logging with configurable log levels
4
- */
5
- const LOG_LEVELS = {
6
- debug: 0,
7
- info: 1,
8
- warn: 2,
9
- error: 3,
10
- silent: 4
11
- };
12
- export class Logger {
13
- level;
14
- context;
15
- constructor(context, level = "info") {
16
- this.context = context;
17
- this.level = level;
18
- }
19
- setLevel(level) {
20
- this.level = level;
21
- }
22
- shouldLog(level) {
23
- return LOG_LEVELS[level] >= LOG_LEVELS[this.level];
24
- }
25
- formatMessage(level, message, ...args) {
26
- const timestamp = new Date().toISOString();
27
- const prefix = `[${timestamp}] [${level.toUpperCase()}] [${this.context}]`;
28
- return args.length > 0 ? `${prefix} ${message}` : `${prefix} ${message}`;
29
- }
30
- debug(message, ...args) {
31
- if (this.shouldLog("debug")) {
32
- console.debug(this.formatMessage("debug", message), ...args);
33
- }
34
- }
35
- info(message, ...args) {
36
- if (this.shouldLog("info")) {
37
- console.info(this.formatMessage("info", message), ...args);
38
- }
39
- }
40
- warn(message, ...args) {
41
- if (this.shouldLog("warn")) {
42
- console.warn(this.formatMessage("warn", message), ...args);
43
- }
44
- }
45
- error(message, ...args) {
46
- if (this.shouldLog("error")) {
47
- console.error(this.formatMessage("error", message), ...args);
48
- }
49
- }
50
- /**
51
- * Special log for queue operations (always uses timestamp format)
52
- */
53
- queue(workflowHash, message, ...args) {
54
- if (this.shouldLog("debug")) {
55
- const timestamp = new Date().toISOString();
56
- const hashPrefix = workflowHash.substring(0, 16);
57
- console.log(`[${timestamp}] [queue::${hashPrefix}] ${message}`, ...args);
58
- }
59
- }
60
- /**
61
- * Special log for client events
62
- */
63
- client(clientName, event, message, ...args) {
64
- if (this.shouldLog("debug")) {
65
- console.log(`[${event}@${clientName}] ${message}`, ...args);
66
- }
67
- }
68
- }
69
- /**
70
- * Create a logger instance for a specific context
71
- */
72
- export function createLogger(context, level = "info") {
73
- return new Logger(context, level);
74
- }
1
+ /**
2
+ * Logging utility for MultiWorkflowPool
3
+ * Provides structured logging with configurable log levels
4
+ */
5
+ const LOG_LEVELS = {
6
+ debug: 0,
7
+ info: 1,
8
+ warn: 2,
9
+ error: 3,
10
+ silent: 4
11
+ };
12
+ export class Logger {
13
+ level;
14
+ context;
15
+ constructor(context, level = "info") {
16
+ this.context = context;
17
+ this.level = level;
18
+ }
19
+ setLevel(level) {
20
+ this.level = level;
21
+ }
22
+ shouldLog(level) {
23
+ return LOG_LEVELS[level] >= LOG_LEVELS[this.level];
24
+ }
25
+ formatMessage(level, message, ...args) {
26
+ const timestamp = new Date().toISOString();
27
+ const prefix = `[${timestamp}] [${level.toUpperCase()}] [${this.context}]`;
28
+ return args.length > 0 ? `${prefix} ${message}` : `${prefix} ${message}`;
29
+ }
30
+ debug(message, ...args) {
31
+ if (this.shouldLog("debug")) {
32
+ console.debug(this.formatMessage("debug", message), ...args);
33
+ }
34
+ }
35
+ info(message, ...args) {
36
+ if (this.shouldLog("info")) {
37
+ console.info(this.formatMessage("info", message), ...args);
38
+ }
39
+ }
40
+ warn(message, ...args) {
41
+ if (this.shouldLog("warn")) {
42
+ console.warn(this.formatMessage("warn", message), ...args);
43
+ }
44
+ }
45
+ error(message, ...args) {
46
+ if (this.shouldLog("error")) {
47
+ console.error(this.formatMessage("error", message), ...args);
48
+ }
49
+ }
50
+ /**
51
+ * Special log for queue operations (always uses timestamp format)
52
+ */
53
+ queue(workflowHash, message, ...args) {
54
+ if (this.shouldLog("debug")) {
55
+ const timestamp = new Date().toISOString();
56
+ const hashPrefix = workflowHash.substring(0, 16);
57
+ console.log(`[${timestamp}] [queue::${hashPrefix}] ${message}`, ...args);
58
+ }
59
+ }
60
+ /**
61
+ * Special log for client events
62
+ */
63
+ client(clientName, event, message, ...args) {
64
+ if (this.shouldLog("debug")) {
65
+ console.log(`[${event}@${clientName}] ${message}`, ...args);
66
+ }
67
+ }
68
+ }
69
+ /**
70
+ * Create a logger instance for a specific context
71
+ */
72
+ export function createLogger(context, level = "info") {
73
+ return new Logger(context, level);
74
+ }
75
75
  //# sourceMappingURL=logger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"multi-workflow-pool.d.ts","sourceRoot":"","sources":["../../src/multipool/multi-workflow-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multi-workflow-pool.d.ts","sourceRoot":"","sources":["../../src/multipool/multi-workflow-pool.ts"],"names":[],"mappings":"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"}
@@ -84,7 +84,7 @@ export class MultiWorkflowPool {
84
84
  }));
85
85
  }
86
86
  const promiseResults = await Promise.allSettled(connectionPromises);
87
- const failedConnections = promiseResults.filter(result => result.status === "rejected");
87
+ const failedConnections = promiseResults.filter((result) => result.status === "rejected");
88
88
  if (failedConnections.length > 0) {
89
89
  this.logger.warn(`Warning: ${failedConnections.length} client(s) failed to connect.`);
90
90
  failedConnections.forEach((result) => {
@@ -175,7 +175,7 @@ export class MultiWorkflowPool {
175
175
  }
176
176
  attachHandlersToClient(client) {
177
177
  // Forward all client events through the pool event manager
178
- client.api.on("all", event => {
178
+ client.api.on("all", (event) => {
179
179
  const payload = {
180
180
  clientUrl: client.url,
181
181
  clientName: client.nodeName,
@@ -187,17 +187,22 @@ export class MultiWorkflowPool {
187
187
  payload
188
188
  });
189
189
  });
190
- client.api.on("status", event => {
190
+ client.api.on("status", (event) => {
191
+ // Defensive null checks for event structure
192
+ if (!event.detail?.status?.exec_info || event.detail.status.exec_info.queue_remaining === undefined) {
193
+ this.logger.warn(`[${event.type}@${client.nodeName}] Invalid status event structure.`);
194
+ return;
195
+ }
191
196
  this.logger.client(client.nodeName, event.type, `Queue Remaining: ${event.detail.status.exec_info.queue_remaining}`);
192
197
  // Update client state based on status
193
198
  if (event.detail.status.exec_info.queue_remaining === 0) {
194
199
  client.state = "idle";
195
200
  // Trigger queue processing
196
- client.workflowAffinity?.forEach(value => {
201
+ client.workflowAffinity?.forEach((value) => {
197
202
  this.logger.debug(`Triggering queue processing for workflow hash ${value} due to client ${client.nodeName} becoming idle.`);
198
203
  const queue = this.queues.get(value);
199
204
  if (queue) {
200
- queue.processQueue().catch(reason => {
205
+ queue.processQueue().catch((reason) => {
201
206
  this.logger.error(`Error processing job queue for workflow hash ${value}:`, reason);
202
207
  });
203
208
  }
@@ -207,18 +212,28 @@ export class MultiWorkflowPool {
207
212
  client.state = "busy";
208
213
  }
209
214
  });
210
- client.api.on("b_preview_meta", event => {
215
+ client.api.on("b_preview_meta", (event) => {
216
+ // Defensive null checks for event structure
217
+ if (!event.detail?.metadata || !event.detail?.blob) {
218
+ this.logger.warn(`[${event.type}@${client.nodeName}] Invalid preview metadata event structure.`);
219
+ return;
220
+ }
211
221
  const prompt_id = event.detail.metadata.prompt_id;
212
222
  if (prompt_id) {
213
223
  this.jobRegistry.updateJobPreviewMetadata(prompt_id, event.detail.metadata, event.detail.blob);
214
- this.logger.debug(`[${event.type}@${client.nodeName}] Preview metadata for prompt ID: ${prompt_id} | blob size: ${event.detail.blob.size} (${event.detail.metadata.image_type})`);
224
+ this.logger.debug(`[${event.type}@${client.nodeName}] Preview metadata for prompt ID: ${prompt_id} | blob size: ${event.detail.blob.size} (${event.detail.metadata.image_type ?? "unknown"})`);
215
225
  }
216
226
  else {
217
227
  this.logger.warn(`[${event.type}@${client.nodeName}] Preview metadata received without prompt ID.`);
218
228
  }
219
229
  });
220
230
  // Handle finished nodes, extract image for prompt_id
221
- client.api.on("executed", event => {
231
+ client.api.on("executed", (event) => {
232
+ // Defensive null check for event detail
233
+ if (!event.detail) {
234
+ this.logger.warn(`[${event.type}@${client.nodeName}] Executed event received with no detail.`);
235
+ return;
236
+ }
222
237
  const prompt_id = event.detail.prompt_id;
223
238
  if (prompt_id) {
224
239
  const output = event.detail.output;
@@ -231,19 +246,29 @@ export class MultiWorkflowPool {
231
246
  this.logger.warn(`[${event.type}@${client.nodeName}] Executed event received without prompt ID.`);
232
247
  }
233
248
  });
234
- client.api.on("progress", event => {
249
+ client.api.on("progress", (event) => {
250
+ // Defensive null checks for event detail and required fields
251
+ if (!event.detail || event.detail.value === undefined || event.detail.max === undefined) {
252
+ this.logger.warn(`[${event.type}@${client.nodeName}] Progress event received with invalid structure.`);
253
+ return;
254
+ }
235
255
  const prompt_id = event.detail.prompt_id;
236
256
  if (prompt_id) {
237
257
  const nodeId = event.detail.node;
238
258
  this.jobRegistry.updateJobProgress(prompt_id, event.detail.value, event.detail.max, nodeId !== null ? nodeId : undefined);
239
- this.logger.debug(`[${event.type}@${client.nodeName}] Progress for prompt ID: ${prompt_id} | ${Math.round(event.detail.value / event.detail.max * 100)}%`);
259
+ this.logger.debug(`[${event.type}@${client.nodeName}] Progress for prompt ID: ${prompt_id} | ${Math.round((event.detail.value / event.detail.max) * 100)}%`);
240
260
  }
241
261
  else {
242
262
  this.logger.warn(`[${event.type}@${client.nodeName}] Progress event received without prompt ID.`);
243
263
  }
244
264
  });
245
265
  // Track node execution for profiling
246
- client.api.on("executing", event => {
266
+ client.api.on("executing", (event) => {
267
+ // Defensive null check for event detail
268
+ if (!event.detail) {
269
+ this.logger.warn(`[${event.type}@${client.nodeName}] Executing event received with no detail.`);
270
+ return;
271
+ }
247
272
  const prompt_id = event.detail.prompt_id;
248
273
  const nodeId = event.detail.node;
249
274
  if (prompt_id) {
@@ -259,7 +284,12 @@ export class MultiWorkflowPool {
259
284
  }
260
285
  });
261
286
  // Track cached nodes for profiling
262
- client.api.on("execution_cached", event => {
287
+ client.api.on("execution_cached", (event) => {
288
+ // Defensive null check for event detail
289
+ if (!event.detail) {
290
+ this.logger.warn(`[${event.type}@${client.nodeName}] Execution cached event received with no detail.`);
291
+ return;
292
+ }
263
293
  const prompt_id = event.detail.prompt_id;
264
294
  const nodeIds = event.detail.nodes;
265
295
  if (prompt_id && nodeIds && Array.isArray(nodeIds)) {
@@ -267,7 +297,12 @@ export class MultiWorkflowPool {
267
297
  this.logger.debug(`[${event.type}@${client.nodeName}] ${nodeIds.length} nodes cached for prompt ID: ${prompt_id}`);
268
298
  }
269
299
  });
270
- client.api.on("execution_success", event => {
300
+ client.api.on("execution_success", (event) => {
301
+ // Defensive null check for event detail
302
+ if (!event.detail) {
303
+ this.logger.warn(`[${event.type}@${client.nodeName}] Execution success event received with no detail.`);
304
+ return;
305
+ }
271
306
  const prompt_id = event.detail.prompt_id;
272
307
  if (prompt_id) {
273
308
  this.logger.client(client.nodeName, event.type, `Execution success for prompt ID: ${prompt_id}`);
@@ -285,11 +320,11 @@ export class MultiWorkflowPool {
285
320
  // Print client states using console.table
286
321
  if (this.clientRegistry.clients.size > 0) {
287
322
  console.log("\n📋 CLIENT STATES:");
288
- const clientData = Array.from(this.clientRegistry.clients.values()).map(client => ({
289
- "URL": client.url,
323
+ const clientData = Array.from(this.clientRegistry.clients.values()).map((client) => ({
324
+ URL: client.url,
290
325
  "Node Name": client.nodeName,
291
- "State": client.state,
292
- "Priority": client.priority !== undefined ? client.priority : "N/A"
326
+ State: client.state,
327
+ Priority: client.priority !== undefined ? client.priority : "N/A"
293
328
  }));
294
329
  console.table(clientData);
295
330
  }
@@ -302,7 +337,7 @@ export class MultiWorkflowPool {
302
337
  const queueData = Array.from(this.queues.entries()).map(([workflowHash, queue]) => ({
303
338
  "Workflow Hash": workflowHash.length > 50 ? workflowHash.substring(0, 47) + "..." : workflowHash,
304
339
  "Jobs Pending": queue.queue.length,
305
- "Type": workflowHash === "general" ? "General" : "Specific"
340
+ Type: workflowHash === "general" ? "General" : "Specific"
306
341
  }));
307
342
  console.table(queueData);
308
343
  }
@@ -326,14 +361,12 @@ export class MultiWorkflowPool {
326
361
  * @returns Array of client information objects
327
362
  */
328
363
  getClients() {
329
- return Array.from(this.clientRegistry.clients.values()).map(client => ({
364
+ return Array.from(this.clientRegistry.clients.values()).map((client) => ({
330
365
  url: client.url,
331
366
  nodeName: client.nodeName,
332
367
  state: client.state,
333
368
  priority: client.priority,
334
- workflowAffinityHashes: client.workflowAffinity
335
- ? Array.from(client.workflowAffinity)
336
- : undefined
369
+ workflowAffinityHashes: client.workflowAffinity ? Array.from(client.workflowAffinity) : undefined
337
370
  }));
338
371
  }
339
372
  /**
@@ -351,9 +384,7 @@ export class MultiWorkflowPool {
351
384
  nodeName: client.nodeName,
352
385
  state: client.state,
353
386
  priority: client.priority,
354
- workflowAffinityHashes: client.workflowAffinity
355
- ? Array.from(client.workflowAffinity)
356
- : undefined
387
+ workflowAffinityHashes: client.workflowAffinity ? Array.from(client.workflowAffinity) : undefined
357
388
  };
358
389
  }
359
390
  /**
@@ -379,8 +410,8 @@ export class MultiWorkflowPool {
379
410
  */
380
411
  getIdleClients() {
381
412
  return Array.from(this.clientRegistry.clients.values())
382
- .filter(client => client.state === "idle")
383
- .map(client => ({
413
+ .filter((client) => client.state === "idle")
414
+ .map((client) => ({
384
415
  url: client.url,
385
416
  nodeName: client.nodeName,
386
417
  priority: client.priority
@@ -410,9 +441,9 @@ export class MultiWorkflowPool {
410
441
  const clients = Array.from(this.clientRegistry.clients.values());
411
442
  return {
412
443
  totalClients: clients.length,
413
- idleClients: clients.filter(c => c.state === "idle").length,
414
- busyClients: clients.filter(c => c.state === "busy").length,
415
- offlineClients: clients.filter(c => c.state === "offline").length,
444
+ idleClients: clients.filter((c) => c.state === "idle").length,
445
+ busyClients: clients.filter((c) => c.state === "busy").length,
446
+ offlineClients: clients.filter((c) => c.state === "offline").length,
416
447
  totalQueues: this.queues.size,
417
448
  queues: Array.from(this.queues.entries()).map(([hash, queue]) => ({
418
449
  workflowHash: hash,
@@ -1 +1 @@
1
- {"version":3,"file":"multi-workflow-pool.js","sourceRoot":"","sources":["../../src/multipool/multi-workflow-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multi-workflow-pool.js","sourceRoot":"","sources":["../../src/multipool/multi-workflow-pool.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,26 @@
1
- /**
2
- * Generate a random image generation prompt for testing.
3
- */
4
- export function promptGenerator() {
5
- const subjects = ["a cat", "a dog", "a futuristic city", "a beautiful landscape", "an astronaut", "a dragon", "a robot", "a magical forest"];
6
- const styles = ["in the style of Van Gogh", "as a Pixar movie", "like a watercolor painting", "as a cyberpunk scene", "in a surrealist style", "like a comic book illustration"];
7
- const actions = ["flying through the sky", "exploring a new world", "sitting on a throne", "dancing in the rain", "holding a glowing orb", "standing on a mountain peak"];
8
- const subject = subjects[Math.floor(Math.random() * subjects.length)];
9
- const style = styles[Math.floor(Math.random() * styles.length)];
10
- const action = actions[Math.floor(Math.random() * actions.length)];
11
- return `A high-resolution image of ${subject} ${action}, ${style}, vibrant colors, detailed, 4k resolution`;
12
- }
13
- /**
14
- * Generate a random prompt specifically for the Anime XL model. Using more anime-focused elements and danbooru-style tags.
15
- */
16
- export function animeXLPromptGenerator() {
17
- const subjects = ["1girl", "2boys", "catgirl", "mecha", "futuristic city", "magical girl", "samurai", "ninja"];
18
- const styles = ["anime style", "manga style", "chibi style", "cyberpunk anime", "fantasy anime", "mecha anime"];
19
- const actions = ["holding a katana", "sitting under cherry blossoms", "flying through the sky", "exploring a futuristic city", "casting a spell", "standing on a rooftop"];
20
- const subject = subjects[Math.floor(Math.random() * subjects.length)];
21
- const style = styles[Math.floor(Math.random() * styles.length)];
22
- const action = actions[Math.floor(Math.random() * actions.length)];
23
- return `score_9, score_8_up, score_7_up, score_6_up, score_5_up, score_4_up, source_anime, BREAK, ${subject}, ${action}, ${style}`;
24
- }
25
- export const NEGATIVE_PROMPT = `modern, recent, old, oldest, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured, long body, lowres, bad anatomy, bad hands, missing fingers, extra digits, fewer digits, cropped, very displeasing, (worst quality, bad quality:1.2), bad anatomy, sketch, jpeg artifacts, signature, watermark, username, signature, simple background, conjoined,bad ai-generated`;
1
+ /**
2
+ * Generate a random image generation prompt for testing.
3
+ */
4
+ export function promptGenerator() {
5
+ const subjects = ["a cat", "a dog", "a futuristic city", "a beautiful landscape", "an astronaut", "a dragon", "a robot", "a magical forest"];
6
+ const styles = ["in the style of Van Gogh", "as a Pixar movie", "like a watercolor painting", "as a cyberpunk scene", "in a surrealist style", "like a comic book illustration"];
7
+ const actions = ["flying through the sky", "exploring a new world", "sitting on a throne", "dancing in the rain", "holding a glowing orb", "standing on a mountain peak"];
8
+ const subject = subjects[Math.floor(Math.random() * subjects.length)];
9
+ const style = styles[Math.floor(Math.random() * styles.length)];
10
+ const action = actions[Math.floor(Math.random() * actions.length)];
11
+ return `A high-resolution image of ${subject} ${action}, ${style}, vibrant colors, detailed, 4k resolution`;
12
+ }
13
+ /**
14
+ * Generate a random prompt specifically for the Anime XL model. Using more anime-focused elements and danbooru-style tags.
15
+ */
16
+ export function animeXLPromptGenerator() {
17
+ const subjects = ["1girl", "2boys", "catgirl", "mecha", "futuristic city", "magical girl", "samurai", "ninja"];
18
+ const styles = ["anime style", "manga style", "chibi style", "cyberpunk anime", "fantasy anime", "mecha anime"];
19
+ const actions = ["holding a katana", "sitting under cherry blossoms", "flying through the sky", "exploring a futuristic city", "casting a spell", "standing on a rooftop"];
20
+ const subject = subjects[Math.floor(Math.random() * subjects.length)];
21
+ const style = styles[Math.floor(Math.random() * styles.length)];
22
+ const action = actions[Math.floor(Math.random() * actions.length)];
23
+ return `score_9, score_8_up, score_7_up, score_6_up, score_5_up, score_4_up, source_anime, BREAK, ${subject}, ${action}, ${style}`;
24
+ }
25
+ export const NEGATIVE_PROMPT = `modern, recent, old, oldest, cartoon, graphic, text, painting, crayon, graphite, abstract, glitch, deformed, mutated, ugly, disfigured, long body, lowres, bad anatomy, bad hands, missing fingers, extra digits, fewer digits, cropped, very displeasing, (worst quality, bad quality:1.2), bad anatomy, sketch, jpeg artifacts, signature, watermark, username, signature, simple background, conjoined,bad ai-generated`;
26
26
  //# sourceMappingURL=prompt-generator.js.map
@@ -1,10 +1,10 @@
1
- export function pickRandom(arr) {
2
- return arr[Math.floor(Math.random() * arr.length)];
3
- }
4
- export function randomInt(min, max) {
5
- return Math.floor(Math.random() * (max - min + 1)) + min;
6
- }
7
- export function randomSeed() {
8
- return Math.floor(Math.random() * 2147483647);
9
- }
1
+ export function pickRandom(arr) {
2
+ return arr[Math.floor(Math.random() * arr.length)];
3
+ }
4
+ export function randomInt(min, max) {
5
+ return Math.floor(Math.random() * (max - min + 1)) + min;
6
+ }
7
+ export function randomSeed() {
8
+ return Math.floor(Math.random() * 2147483647);
9
+ }
10
10
  //# sourceMappingURL=test-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkflowPool.d.ts","sourceRoot":"","sources":["../../src/pool/WorkflowPool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAK7C,OAAO,KAAK,EAAE,YAAY,EAAoB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAK/D,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,kBAAkB,EAAsB,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC9G,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAK9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACxC;;;;;;;;;;;OAWG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;;;;;;;;;;OAWG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAaD,qBAAa,YAAa,SAAQ,gBAAgB,CAAC,oBAAoB,CAAC;IACtE,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,IAAI,CAAmB;IAC/B,OAAO,CAAC,QAAQ,CAAoC;IACpD,OAAO,CAAC,kBAAkB,CAA+D;IACzF,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAA2C;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,OAAO,CAAC,QAAQ;gBAMJ,OAAO,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC,EAAE,gBAAgB;IAoClD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAI7C,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAI7C,aAAa,IAAI,gBAAgB,EAAE;IAIpC,OAAO,CAAC,aAAa,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;IAqEzF,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAItC,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BvC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IASzB,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAI1C,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,MAAM,CAAC,UAAU;IAMzB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,gBAAgB;IAIxB,OAAO,CAAC,qBAAqB;IAY7B,OAAO,CAAC,qBAAqB;IAS7B,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,+BAA+B;YAUzB,YAAY;YAoKZ,MAAM;CAyerB"}
1
+ {"version":3,"file":"WorkflowPool.d.ts","sourceRoot":"","sources":["../../src/pool/WorkflowPool.ts"],"names":[],"mappings":"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"}