koishi-plugin-media-luna 0.0.40 → 0.0.41

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/connector-dalle/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAgF,MAAM,YAAY,CAAA;AA+HnI,mBAAmB;AACnB,QAAA,MAAM,cAAc,EAAE,mBAgCrB,CAAA;;AAED,wBAWE;AAEF,OAAO,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/connector-dalle/index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAgF,MAAM,YAAY,CAAA;AAqJnI,mBAAmB;AACnB,QAAA,MAAM,cAAc,EAAE,mBAuCrB,CAAA;;AAED,wBAWE;AAEF,OAAO,EAAE,cAAc,EAAE,CAAA"}
@@ -59,6 +59,13 @@ const dalleFields = [
59
59
  type: 'number',
60
60
  default: 1
61
61
  },
62
+ {
63
+ key: 'enableImageInput',
64
+ label: '允许图片输入',
65
+ type: 'boolean',
66
+ default: true,
67
+ description: '是否允许发送参考图片。启用后会将用户上传的图片作为参考图发送给 API'
68
+ },
62
69
  {
63
70
  key: 'timeout',
64
71
  label: '超时时间(秒)',
@@ -73,7 +80,7 @@ const dalleCardFields = [
73
80
  ];
74
81
  /** DALL-E 生成函数 */
75
82
  async function generate(ctx, config, files, prompt) {
76
- const { apiUrl, apiKey, model = 'dall-e-3', size = '1024x1024', quality = 'standard', style = 'vivid', n = 1, timeout = 600 } = config;
83
+ const { apiUrl, apiKey, model = 'dall-e-3', size = '1024x1024', quality = 'standard', style = 'vivid', n = 1, enableImageInput = true, timeout = 600 } = config;
77
84
  const requestBody = {
78
85
  model,
79
86
  prompt,
@@ -89,6 +96,19 @@ async function generate(ctx, config, files, prompt) {
89
96
  if (style)
90
97
  requestBody.style = style;
91
98
  }
99
+ // 处理图片输入(如果启用且有图片)
100
+ if (enableImageInput && files.length > 0) {
101
+ const imageFiles = files.filter(f => f.mime.startsWith('image/'));
102
+ if (imageFiles.length > 0) {
103
+ // 将图片转为 base64 数组
104
+ const imageArray = imageFiles.map(imageFile => {
105
+ const base64 = Buffer.from(imageFile.data).toString('base64');
106
+ return `data:${imageFile.mime};base64,${base64}`;
107
+ });
108
+ requestBody.image = imageArray;
109
+ ctx.logger('media-luna').debug(`DALL-E: Added ${imageArray.length} reference image(s)`);
110
+ }
111
+ }
92
112
  const response = await ctx.http.post(apiUrl, requestBody, {
93
113
  headers: {
94
114
  'Authorization': `Bearer ${apiKey}`,
@@ -118,17 +138,22 @@ const DalleConnector = {
118
138
  generate,
119
139
  /** 获取请求日志 */
120
140
  getRequestLog(config, files, prompt) {
121
- const { apiUrl, model = 'dall-e-3', size = '1024x1024', quality = 'standard', style = 'vivid', n = 1 } = config;
141
+ const { apiUrl, model = 'dall-e-3', size = '1024x1024', quality = 'standard', style = 'vivid', n = 1, enableImageInput = true } = config;
142
+ // 计算实际会发送的图片数量
143
+ const imageCount = enableImageInput
144
+ ? files.filter(f => f.mime?.startsWith('image/')).length
145
+ : 0;
122
146
  return {
123
147
  endpoint: apiUrl?.split('?')[0],
124
148
  model,
125
149
  prompt,
126
- fileCount: files.length,
150
+ fileCount: imageCount,
127
151
  parameters: {
128
152
  size,
129
153
  quality,
130
154
  style,
131
- n: Number(n)
155
+ n: Number(n),
156
+ imageInput: imageCount > 0 ? true : undefined
132
157
  }
133
158
  };
134
159
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/connector-dalle/index.ts"],"names":[],"mappings":";AAAA,eAAe;;;AAGf,qCAAyC;AAGzC,kBAAkB;AAClB,MAAM,WAAW,GAAqB;IACpC;QACE,GAAG,EAAE,QAAQ;QACb,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,8CAA8C;QACvD,WAAW,EAAE,8CAA8C;KAC5D;IACD;QACE,GAAG,EAAE,QAAQ;QACb,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,IAAI;KACf;IACD;QACE,GAAG,EAAE,OAAO;QACZ,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,eAAe;QACxB,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE,kCAAkC;KAChD;IACD;QACE,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,WAAW;QACpB,WAAW,EAAE,WAAW;QACxB,WAAW,EAAE,4CAA4C;KAC1D;IACD;QACE,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,UAAU;QACnB,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,4BAA4B;KAC1C;IACD;QACE,GAAG,EAAE,OAAO;QACZ,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,OAAO;QACpB,WAAW,EAAE,oCAAoC;KAClD;IACD;QACE,GAAG,EAAE,GAAG;QACR,KAAK,EAAE,MAAM;QACb,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,CAAC;KACX;IACD;QACE,GAAG,EAAE,SAAS;QACd,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,GAAG;KACb;CACF,CAAA;AAED,aAAa;AACb,MAAM,eAAe,GAAuB;IAC1C,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;IACxD,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE;CACxE,CAAA;AAED,kBAAkB;AAClB,KAAK,UAAU,QAAQ,CACrB,GAAY,EACZ,MAA2B,EAC3B,KAAiB,EACjB,MAAc;IAEd,MAAM,EACJ,MAAM,EACN,MAAM,EACN,KAAK,GAAG,UAAU,EAClB,IAAI,GAAG,WAAW,EAClB,OAAO,GAAG,UAAU,EACpB,KAAK,GAAG,OAAO,EACf,CAAC,GAAG,CAAC,EACL,OAAO,GAAG,GAAG,EACd,GAAG,MAAM,CAAA;IAEV,MAAM,WAAW,GAAwB;QACvC,KAAK;QACL,MAAM;QACN,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;KACb,CAAA;IAED,cAAc;IACd,IAAI,IAAI;QAAE,WAAW,CAAC,IAAI,GAAG,IAAI,CAAA;IAEjC,gBAAgB;IAChB,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;QACzB,IAAI,OAAO;YAAE,WAAW,CAAC,OAAO,GAAG,OAAO,CAAA;QAC1C,IAAI,KAAK;YAAE,WAAW,CAAC,KAAK,GAAG,KAAK,CAAA;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE;QACxD,OAAO,EAAE;YACP,eAAe,EAAE,UAAU,MAAM,EAAE;YACnC,cAAc,EAAE,kBAAkB;SACnC;QACD,OAAO,EAAE,OAAO,GAAG,IAAI;KACxB,CAAC,CAAA;IAEF,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;QACvC,IAAI,EAAE,OAAgB;QACtB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ;QAC9B,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE;YACJ,aAAa,EAAE,IAAI,CAAC,cAAc;SACnC;KACF,CAAC,CAAC,CAAA;AACL,CAAC;AAED,mBAAmB;AACnB,MAAM,cAAc,GAAwB;IAC1C,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,QAAQ;IACd,cAAc,EAAE,CAAC,OAAO,CAAC;IACzB,MAAM,EAAE,WAAW;IACnB,UAAU,EAAE,eAAe;IAC3B,QAAQ;IAER,aAAa;IACb,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM;QACjC,MAAM,EACJ,MAAM,EACN,KAAK,GAAG,UAAU,EAClB,IAAI,GAAG,WAAW,EAClB,OAAO,GAAG,UAAU,EACpB,KAAK,GAAG,OAAO,EACf,CAAC,GAAG,CAAC,EACN,GAAG,MAAM,CAAA;QAEV,OAAO;YACL,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/B,KAAK;YACL,MAAM;YACN,SAAS,EAAE,KAAK,CAAC,MAAM;YACvB,UAAU,EAAE;gBACV,IAAI;gBACJ,OAAO;gBACP,KAAK;gBACL,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;aACb;SACF,CAAA;IACH,CAAC;CACF,CAAA;AAeQ,wCAAc;AAbvB,kBAAe,IAAA,mBAAY,EAAC;IAC1B,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,yBAAyB;IACtC,OAAO,EAAE,OAAO;IAEhB,SAAS,EAAE,cAAc;IAEzB,KAAK,CAAC,MAAM,CAAC,GAAG;QACd,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/connector-dalle/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-media-luna",
3
3
  "description": "ai media生成插件",
4
- "version": "0.0.40",
4
+ "version": "0.0.41",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "exports": {