rgflow-dify.js 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288
  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. /**
  26. * 编辑dify智能体
  27. * */
  28. export function updateDify(id, data) {
  29. return request({
  30. url: `/dify/console/api/apps/${id}`,
  31. method: 'put',
  32. data
  33. });
  34. }
  35. // 创建rgflow智能体
  36. export function createRgFlow(data) {
  37. return request({
  38. url: `/rgflow/v1/dialog/set`,
  39. method: 'post',
  40. data
  41. });
  42. }
  43. // 删除rgflow智能体
  44. export function deleteRgFlow(data) {
  45. return request({
  46. url: `/rgflow/v1/dialog/rm`,
  47. method: 'post',
  48. data
  49. });
  50. }
  51. // 头像上传
  52. export function kbdocumentupload(data) {
  53. const config = {
  54. headers: {
  55. 'Content-Type': 'application/x-www-form-urlencoded'
  56. // token: token,
  57. }
  58. };
  59. return request({
  60. url: `/rgflow/v1/document/upload`,
  61. method: 'post',
  62. data,
  63. headers: config.headers
  64. });
  65. }
  66. // 查询模型列表
  67. export function queryModelList() {
  68. return request({
  69. url: `/rgflow/v1/llm/list`,
  70. method: 'get'
  71. });
  72. }
  73. // 获取某个智能体的数据
  74. export function getRagFlowData(id) {
  75. return request({
  76. url: `/rgflow/v1/dialog/get?dialog_id=${id}`,
  77. method: 'get'
  78. });
  79. }
  80. // 新增知识库
  81. export function createKb(name) {
  82. return request({
  83. url: `/rgflow/v1/kb/create`,
  84. method: 'post',
  85. data: {
  86. name
  87. }
  88. });
  89. }
  90. // 查询知识库列表
  91. export function queryKbList() {
  92. return request({
  93. url: `/rgflow/v1/kb/list`,
  94. method: 'get'
  95. });
  96. }
  97. // 知识库详情接口
  98. export function queryKbdetail(params) {
  99. return request({
  100. url: `/rgflow/v1/kb/detail`,
  101. method: 'get',
  102. params
  103. });
  104. }
  105. // 文档列表接口
  106. export function queryKbDocumentList(params) {
  107. return request({
  108. url: `/rgflow/v1/document/list`,
  109. method: 'get',
  110. params
  111. });
  112. }
  113. // 知识库删除接口
  114. export function deleteKnow(data) {
  115. return request({
  116. url: `/rgflow/v1/kb/rm`,
  117. method: 'post',
  118. data
  119. });
  120. }
  121. // 文档删除接口
  122. export function kbdocumentrm(data) {
  123. return request({
  124. url: `/rgflow/v1/document/rm`,
  125. method: 'post',
  126. data
  127. });
  128. }
  129. // 文档启动/取消解析接口
  130. export function kbdocumentrun(data) {
  131. return request({
  132. url: `/rgflow/v1/document/run`,
  133. method: 'post',
  134. data
  135. });
  136. }
  137. // 文档启用/禁用接口
  138. export function kbdocumentchangeStatus(data) {
  139. return request({
  140. url: `/rgflow/v1/document/change_status`,
  141. method: 'post',
  142. data
  143. });
  144. }
  145. // 文档下载接口
  146. export const downloadFile = ({ url, filename, target }) => {
  147. const downloadElement = document.createElement('a');
  148. downloadElement.style.display = 'none';
  149. downloadElement.href = url;
  150. if (target) {
  151. downloadElement.target = '_blank';
  152. }
  153. downloadElement.rel = 'noopener noreferrer';
  154. if (filename) {
  155. downloadElement.download = filename;
  156. }
  157. document.body.appendChild(downloadElement);
  158. downloadElement.click();
  159. document.body.removeChild(downloadElement);
  160. };
  161. //启用禁用
  162. export function changeStatus(data) {
  163. return request({
  164. url: `/rgflow/v1/document/change_status`,
  165. method: 'post',
  166. data
  167. });
  168. }
  169. // 文件解析方法接口
  170. export function kbdocumentchangeparser(data) {
  171. return request({
  172. url: `/rgflow/v1/document/change_parser`,
  173. method: 'post',
  174. data
  175. });
  176. }
  177. // 创建解析块接口
  178. export function achunkCreate(data) {
  179. return request({
  180. url: `/rgflow/v1/chunk/create`,
  181. method: 'post',
  182. data
  183. });
  184. }
  185. //解析块列表接口
  186. export function queryChunkList(data) {
  187. return request({
  188. url: `/rgflow/v1/chunk/list`,
  189. method: 'post',
  190. data
  191. });
  192. }
  193. // 启用禁用接口
  194. export function chunkSwitch(data) {
  195. return request({
  196. url: `/rgflow/v1/chunk/switch`,
  197. method: 'post',
  198. data
  199. });
  200. }
  201. // 删除解析块接口
  202. export function chunkRm(data) {
  203. return request({
  204. url: `/rgflow/v1/chunk/rm`,
  205. method: 'post',
  206. data
  207. });
  208. }
  209. export function achunkGet(params) {
  210. return request({
  211. url: `/rgflow/v1/chunk/get`,
  212. method: 'get',
  213. params
  214. });
  215. }
  216. // 知识库创建接口
  217. export function kbcreate(date) {
  218. return request({
  219. url: `/rgflow/v1/kb/create`,
  220. method: 'post',
  221. data
  222. });
  223. }
  224. export function achunkSet(data) {
  225. return request({
  226. url: `/rgflow/v1/chunk/set`,
  227. method: 'post',
  228. data
  229. });
  230. }
  231. // 测试接口
  232. export function kbretrievalTest(data) {
  233. return request({
  234. url: `/rgflow/v1/chunk/retrieval_test`,
  235. method: 'post',
  236. data
  237. });
  238. }
  239. // 文档重命名接口
  240. export function kbdocumentrename(data) {
  241. return request({
  242. url: `/rgflow/v1/document/rename`,
  243. method: 'post',
  244. data
  245. });
  246. }
  247. // 获取知识库管理配置嵌入模型
  248. export function getKnowledgeBaseModel(params) {
  249. return request({
  250. url: `/rgflow/v1/llm/my_llms`,
  251. method: 'get',
  252. params
  253. });
  254. }
  255. // 配置接口
  256. export function kbUpdate(data) {
  257. return request({
  258. url: `/rgflow/v1/kb/update`,
  259. method: 'post',
  260. data
  261. });
  262. }
  263. // 获取tenant_info
  264. export function getTenantInfo() {
  265. return request({
  266. url: `/rgflow/v1/user/tenant_info`,
  267. method: 'get'
  268. });
  269. }