Cool-UniX
uni-appX 跨端移动框架
插件市场Cool-UniX
uni-appX 跨端移动框架
Cool-Admin-Node
后台管理系统开发、Api接口开发
Cool-Admin-Java
后台管理系统开发、Api接口开发
Cool-Admin-Vue
后台管理系统开发前端
Cool Uni
移动端基于 uni-app 的跨端开发框架
Cool Flow Ai
开发Ai应用编排流程知识库知识图谱
Cool Team
Ai多智能体团队协作完成任务
发布帖子
寻求帮助或分享知识
发布插件
分享您的插件
Cool v8Cool-UniX
Cool-Admin-Node
Cool-Admin-Java
Cool-Admin-Vue
Cool Uni
Cool Flow Ai
Cool Team
发布帖子
发布插件
Dify Ai开发



Dify,是一个用于开发 Ai 应用的工具,支持知识库,流程编排,向量检索,并可接入多种模型。
本插件集成了 Dify 的 SDK,可以很方便地调用 Dify 的接口。
🔥 微信智能客服,个微&企微 插件已经支持调用 dify 了
调用插件的时候需要用到标识,标识是唯一的,不能重复,建议使用英文,不要使用中文,对应插件 plugin.json 中的 key 字段
{
"baseUrl": "dify服务地址,http://xxxxxx/v1",
"apiKey": {
"chat": "聊天的密钥",
"workflows": "工作流的密钥",
"text": "文本生成的密钥",
"agent": "智能体的密钥"
}
}
下面是插件提供的一些方法
/**
* 文本生成
* @param data
* @param callback
*/
async text(data: TextData, callback?: (data: any) => void)
/**
* 智能体
* @param data
* @param callback
*/
async agent(data: AgentData, callback?: (data: any) => void)
/**
* 聊天
* @param data
* @param callback
* @returns
*/
async chat(data: ChatData, callback?: (data: any) => void)
/**
* 工作流
* @param data
*/
async workflows(data: WorkflowsData, callback?: (data: any) => void)
// 基础数据
interface BaseData {
// 变量数据,类型是key value
inputs: {
[key: string]: any;
};
// 应答模式默认blocking blocking:同步;streaming:流式
response_mode?: "blocking" | "streaming";
// 文件列表
files?: {
// 类型,image:图片
type: "image";
// 传递方式 remote_url:远程地址;local_file:本地文件
transfer_method: "remote_url" | "local_file";
// 图片地址,仅当传递方式为 remote_url 时需要传入
url: string;
// 上传文件 ID 仅当传递方式为 local_file 时 需要传入
upload_file_id: string;
}[];
// 用户唯一标识
user: string;
// 不是必填的,如果需要动态配置,可以传入
apiKey?: string;
}
// 工作流流数据
interface WorkflowsData extends BaseData {}
// 聊天数据
interface ChatData extends BaseData {
// 用户输入/提问内容
query: string;
// 会话 ID,需要基于之前的聊天记录继续对话,必须传之前消息的conversation_id
conversation_id?: string;
// 自动生成标题,默认 true
auto_generate_name?: boolean;
}
// 文本数据
interface TextData extends BaseData {
// 会话 ID,需要基于之前的聊天记录继续对话,必须传之前消息的conversation_id
conversation_id?: string;
}
// 智能体数据
interface AgentData extends BaseData {
// 用户输入/提问内容
query: string;
// 会话 ID,需要基于之前的聊天记录继续对话,必须传之前消息的conversation_id
conversation_id?: string;
// 自动生成标题,默认 true
auto_generate_name?: boolean;
}
以工作流为例
@Inject()
pluginService: PluginService;
// 获取插件实例
const instance = await this.pluginService.getInstance('test');
// 非流式执行
const res = await instance.workflows({
inputs: {
content: "你好,你是谁",
},
user: "COOL",
});
console.log(res);
// 流式执行
await instance.workflows(
{
inputs: {
content: "你好,你是谁",
},
user: "COOL",
response_mode: "streaming",
},
(data) => {
console.log(data);
}
);