fix: add core jimeng
This commit is contained in:
51
src/jimeng/core.ts
Normal file
51
src/jimeng/core.ts
Normal file
@@ -0,0 +1,51 @@
|
||||
import { adapter } from '@kevisual/query/query'
|
||||
export type CoreOpts = {
|
||||
baseURL?: string;
|
||||
token?: string;
|
||||
}
|
||||
export class Core {
|
||||
baseURL: string = 'https://jimeng-api.kevisual.cn/v1';
|
||||
token?: string;
|
||||
constructor(opts: CoreOpts = {}) {
|
||||
console.log("Core initialized");
|
||||
if (opts.baseURL) {
|
||||
this.baseURL = opts.baseURL;
|
||||
}
|
||||
if (opts.token) {
|
||||
this.token = opts.token;
|
||||
}
|
||||
}
|
||||
makeHeader() {
|
||||
return {
|
||||
Authorization: this.token ? `Bearer ${this.token}` : undefined,
|
||||
'Content-Type': 'application/json'
|
||||
}
|
||||
}
|
||||
generateImage({ model = 'jimeng-4.0', prompt, resolution = '2k' }: ImageOptions) {
|
||||
const url = `${this.baseURL}/images/generations`;
|
||||
return adapter({
|
||||
url,
|
||||
headers: this.makeHeader(),
|
||||
body: {
|
||||
model,
|
||||
prompt,
|
||||
resolution
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export type ImageOptions = {
|
||||
model?: string;
|
||||
prompt: string;
|
||||
/**
|
||||
* 宽高比,如 "16:9", "4:3", "1:1" 等
|
||||
*/
|
||||
ratio?: string;
|
||||
/**
|
||||
*
|
||||
* 图片分辨率,如 "1024x768", "512x512" 等
|
||||
* 4k 2k
|
||||
*/
|
||||
resolution?: string;
|
||||
}
|
||||
Reference in New Issue
Block a user