# titbit-dify **Repository Path**: daoio/titbit-dify ## Basic Information - **Project Name**: titbit-dify - **Description**: No description available - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-22 - **Last Updated**: 2025-04-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Dify平台的API调用Titbit框架扩展 它针对titbit框架中调用dify的api,所以需要安装titbit框架。 ## 安装 1. 安装titbit框架 2. 安装此扩展 ```bash npm install titbit npm install titbit-dify ``` ## 使用过程 ```js const {dify} = require('titbit-dify') const Titbit = require('titbit') let app = new Titbit({ debug: true }) //dify的配置 let agentConfig = { //用于开发者标记和识别,非必填 name: 'agent测试', type: 'agent', //你在dify的agent创建的api key key: 'app-xxxxxx', //请求协议 protocol: 'https:', //请求域名,可以是ip地址 host: 'xx.x.com', //端口,默认 //port: 443, api: '/v1/chat-messages', //IP协议版本,默认是IPv4 family: 4 } let agentConfig2 = { //用于开发者标记和识别,非必填 name: 'chat测试', //用于开发者标记和识别,非必填 type: 'chat', //你在dify的agent创建的api key key: 'app-xxxxxx', //请求协议 protocol: 'https:', //请求域名,可以是ip地址 host: 'xx.x.com', //端口,默认 //port: 443, api: '/v1/chat-messages', //IP协议版本,默认是IPv4 family: 4 } app.post('/api/aichat', async ctx => { if (!ctx.body.query) { return ctx.status(400).send('没有输入的问题,请输入具体问题。') } try { await dify.agentChat(ctx, agentConfig) } catch (err) { return ctx.status(400).send(err.message) } }) app.post('/api/chat', async ctx => { if (!ctx.body.query) { return ctx.status(400).send('没有输入的问题,请输入具体问题。') } try { let data = await dify.agentBlockingChat(ctx, agentConfig2) let jdata = JSON.parse(data) //只返回结果 ctx.send(jdata.answer) } catch (err) { return ctx.status(400).send(err.message) } }) app.run(3003) ``` ## 其他接口 ### dify.agentBlockingChat(ctx, agentConfig) 阻塞模式的对话,一次请求直接返回结果,用于dify中创建聊天助手,agent不支持这种模式。 ### dify.getConversations(ctx, agentConfig) 获取会话列表 ### dify.deleteConversations(ctx, agentConfig, conversationId) 删除会话。 ### dify.getHistoryMessages(ctx, agentConfig) 获取历史消息。 ### dify.stopTask(ctx, agentConfig, taskId) 终止任务,对应操作:前端按钮点击终止当前对话任务。