rgflow-dify.js 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. import request from '../base/ajax';
  2. /**
  3. * @description 创建Dify智能体,
  4. * @param {Object} data 包含创建Dify所需参数的对象
  5. * @param {String} data.mode 模式,可选值:'advanced-chat'、'agent-chat'、'workflow'
  6. * */
  7. export function createDify(data) {
  8. const initData = { icon_type: 'emoji', icon: '🤖', icon_background: '#FFEAD5' };
  9. initData.mode = data.mode;
  10. initData.name = data.name;
  11. initData.description = data.description;
  12. return request({
  13. url: `/dify/console/api/apps`,
  14. method: 'post',
  15. data: initData
  16. });
  17. }
  18. // 删除dify智能体
  19. export function deleteDify(id) {
  20. return request({
  21. url: `/dify/console/api/apps/${id}`,
  22. method: 'delete'
  23. });
  24. }
  25. // 创建rgflow智能体
  26. export function createRgFlow(data) {
  27. return request({
  28. url: `/rgflow/v1/dialog/set`,
  29. method: 'post',
  30. data
  31. });
  32. }
  33. // 头像上传
  34. export function kbdocumentupload(data) {
  35. const config = {
  36. headers: {
  37. 'Content-Type': 'application/x-www-form-urlencoded'
  38. // token: token,
  39. }
  40. };
  41. return request({
  42. url: `/rgflow/v1/document/upload`,
  43. method: 'post',
  44. data,
  45. headers: config.headers
  46. });
  47. }
  48. // 查询模型列表
  49. export function queryModelList() {
  50. return request({
  51. url: `/rgflow/v1/llm/list`,
  52. method: 'get'
  53. });
  54. }
  55. // 获取某个智能体的数据
  56. export function getRagFlowData(id) {
  57. return request({
  58. url: `/rgflow/v1/dialog/get?dialog_id=${id}`,
  59. method: 'get'
  60. });
  61. }
  62. // 新增知识库
  63. export function createKb(name) {
  64. return request({
  65. url: `/rgflow/v1/kb/create`,
  66. method: 'post',
  67. data: {
  68. name
  69. }
  70. });
  71. }
  72. // 查询知识库列表
  73. export function queryKbList() {
  74. return request({
  75. url: `/rgflow/v1/kb/list`,
  76. method: 'get'
  77. });
  78. }
  79. // 知识库详情接口
  80. export function queryKbdetail(params) {
  81. return request({
  82. url: `/rgflow/v1/kb/detail`,
  83. method: 'get',
  84. params
  85. });
  86. }
  87. // 文档列表接口
  88. export function queryKbDocumentList(params) {
  89. return request({
  90. url: `/rgflow/v1/document/list`,
  91. method: 'get',
  92. params
  93. });
  94. }
  95. // 知识库删除接口
  96. export function deleteKnow(data) {
  97. return request({
  98. url: `/rgflow/v1/kb/rm`,
  99. method: 'post',
  100. data
  101. });
  102. }
  103. // 文档删除接口
  104. export function kbdocumentrm(data) {
  105. return request({
  106. url: `/rgflow/v1/document/rm`,
  107. method: 'post',
  108. data
  109. });
  110. }
  111. // 文档启动/取消解析接口
  112. export function kbdocumentrun(data) {
  113. return request({
  114. url: `/rgflow/v1/document/run`,
  115. method: 'post',
  116. data
  117. });
  118. }
  119. // 文档启用/禁用接口
  120. export function kbdocumentchangeStatus(data) {
  121. return request({
  122. url: `/rgflow/v1/document/change_status`,
  123. method: 'post',
  124. data
  125. });
  126. }
  127. // 文档下载接口
  128. export const downloadFile = ({ url, filename, target }) => {
  129. const downloadElement = document.createElement('a');
  130. downloadElement.style.display = 'none';
  131. downloadElement.href = url;
  132. if (target) {
  133. downloadElement.target = '_blank';
  134. }
  135. downloadElement.rel = 'noopener noreferrer';
  136. if (filename) {
  137. downloadElement.download = filename;
  138. }
  139. document.body.appendChild(downloadElement);
  140. downloadElement.click();
  141. document.body.removeChild(downloadElement);
  142. };
  143. //启用禁用
  144. export function changeStatus(data) {
  145. return request({
  146. url: `/rgflow/v1/document/change_status`,
  147. method: 'post',
  148. data
  149. });
  150. }
  151. // 文件解析方法接口
  152. export function kbdocumentchangeparser(data) {
  153. return request({
  154. url: `/rgflow/v1/document/change_parser`,
  155. method: 'post',
  156. data
  157. });
  158. }
  159. // 创建解析块接口
  160. export function achunkCreate(data) {
  161. return request({
  162. url: `/rgflow/v1/chunk/create`,
  163. method: 'post',
  164. data
  165. });
  166. }
  167. //解析块列表接口
  168. export function queryChunkList(params) {
  169. return request({
  170. url: `/rgflow/v1/chunk/list`,
  171. method: 'post',
  172. params
  173. });
  174. }
  175. // 启用禁用接口
  176. export function chunkSwitch(data) {
  177. return request({
  178. url: `/rgflow/v1/chunk/switch`,
  179. method: 'post',
  180. data
  181. });
  182. }
  183. // 删除解析块接口
  184. export function chunkRm(data) {
  185. return request({
  186. url: `/rgflow/v1/chunk/rm`,
  187. method: 'post',
  188. data
  189. });
  190. }
  191. export function achunkGet(params) {
  192. return request({
  193. url: `/rgflow/v1/chunk/get`,
  194. method: 'get',
  195. params
  196. });
  197. }
  198. // 知识库创建接口
  199. export function kbcreate(date) {
  200. return request({
  201. url: `/rgflow/v1/kb/create`,
  202. method: 'post',
  203. data
  204. });
  205. }
  206. export function achunkSet(data) {
  207. return request({
  208. url: `/rgflow/v1/chunk/set`,
  209. method: 'post',
  210. data
  211. });
  212. }
  213. // 测试接口
  214. export function kbretrievalTest(data) {
  215. return request({
  216. url: `/rgflow/v1/chunk/retrieval_test`,
  217. method: 'post',
  218. data
  219. });
  220. }
  221. // 文档重命名接口
  222. export function kbdocumentrename(data) {
  223. return request({
  224. url: `/rgflow/v1/document/rename`,
  225. method: 'post',
  226. data
  227. });
  228. }
  229. // 获取知识库管理配置嵌入模型
  230. export function getKnowledgeBaseModel(params) {
  231. return request({
  232. url: `/rgflow/v1/llm/my_llms`,
  233. method: 'get',
  234. params
  235. });
  236. }
  237. // 配置接口
  238. export function kbUpdate(data) {
  239. return request({
  240. url: `/rgflow/v1/kb/update`,
  241. method: 'post',
  242. data
  243. });
  244. }