jimeng-ai-mcp
Version:
火山引擎即梦AI多模态生成服务MCP工具
152 lines (151 loc) • 3.5 kB
TypeScript
/**
* 即梦AI客户端配置
*/
export interface JimengClientConfig {
accessKey?: string;
secretKey?: string;
endpoint?: string;
host?: string;
region?: string;
service?: string;
debug?: boolean;
timeout?: number;
retries?: number;
}
/**
* 图像生成参数
*/
export interface GenerateImageParams {
prompt: string;
negative_prompt?: string;
width?: number;
height?: number;
return_url?: boolean;
req_key?: string;
}
/**
* 图像生成响应
*/
export interface GenerateImageResponse {
success: boolean;
image_urls?: string[];
error?: string;
raw_response?: any;
}
/**
* 视频生成参数 - 文生视频
*/
export interface GenerateVideoParams {
prompt: string;
req_key?: string;
}
/**
* 视频生成任务提交响应
*/
export interface VideoTaskSubmitResponse {
success: boolean;
task_id?: string;
error?: string;
raw_response?: any;
}
/**
* 视频生成结果查询响应
*/
export interface VideoTaskResultResponse {
success: boolean;
status?: string;
video_urls?: string[];
error?: string;
raw_response?: any;
}
/**
* 视频生成响应
*/
export interface GenerateVideoResponse {
success: boolean;
video_urls?: string[];
error?: string;
raw_response?: any;
task_id?: string;
}
/**
* 图生视频参数
*/
export interface GenerateI2VParams {
/**
* 模型标识符,默认为"jimeng_vgfm_i2v_l20"
*/
req_key?: string;
/**
* 图片URL,必填
*/
image_url?: string;
/**
* 图片URL数组,优先级高于image_url
*/
image_urls?: string[];
/**
* 提示词,可选
*/
prompt?: string;
/**
* 指定输出视频的长宽比,可选值:"1:1", "4:3", "2:1", "3:2", "16:9",默认 "16:9"
*/
aspect_ratio?: string;
}
/**
* 即梦AI客户端
* 使用火山引擎V4签名算法实现
*/
export declare class JimengClient {
private accessKey;
private secretKey;
private endpoint;
private host;
private region;
private service;
private debug;
private timeout;
private retries;
/**
* 创建即梦AI客户端实例
*/
constructor(config?: JimengClientConfig);
/**
* 辅助函数:生成签名密钥
*/
private getSignatureKey;
/**
* 格式化查询参数
*/
private formatQuery;
/**
* 火山引擎V4签名算法
*/
private signV4Request;
/**
* 生成图像
*/
generateImage(params: GenerateImageParams): Promise<GenerateImageResponse>;
/**
* 生成视频 - 文生视频 (异步方式: 提交任务)
*/
submitVideoTask(params: GenerateVideoParams): Promise<VideoTaskSubmitResponse>;
/**
* 查询视频生成任务结果
*/
getVideoTaskResult(taskId: string, reqKey?: string): Promise<VideoTaskResultResponse>;
/**
* 生成视频 - 文生视频 (保留原方法作为兼容)
* @deprecated 使用异步方式生成视频,请使用 submitVideoTask 和 getVideoTaskResult 代替
*/
generateVideo(params: GenerateVideoParams): Promise<GenerateVideoResponse>;
/**
* 提交图生视频任务 - 图片生成视频
*/
submitI2VTask(params: GenerateI2VParams): Promise<VideoTaskSubmitResponse>;
/**
* 生成视频 - 图片生成视频 (一步到位方式)
*/
generateI2VVideo(params: GenerateI2VParams): Promise<GenerateVideoResponse>;
}