kg.py 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. # -*- coding: utf-8 -*-
  2. """
  3. 知识图谱
  4. """
  5. import re
  6. import sys
  7. import math
  8. import time
  9. from .base import AipBase
  10. from .base import base64
  11. from .base import json
  12. from .base import urlencode
  13. from .base import quote
  14. class AipKg(AipBase):
  15. """
  16. 知识图谱
  17. """
  18. __createTaskUrl = 'https://aip.baidubce.com/rest/2.0/kg/v1/pie/task_create'
  19. __updateTaskUrl = 'https://aip.baidubce.com/rest/2.0/kg/v1/pie/task_update'
  20. __taskInfoUrl = 'https://aip.baidubce.com/rest/2.0/kg/v1/pie/task_info'
  21. __taskQueryUrl = 'https://aip.baidubce.com/rest/2.0/kg/v1/pie/task_query'
  22. __taskStartUrl = 'https://aip.baidubce.com/rest/2.0/kg/v1/pie/task_start'
  23. __taskStatusUrl = 'https://aip.baidubce.com/rest/2.0/kg/v1/pie/task_status'
  24. def createTask(self, name, template_content, input_mapping_file, output_file, url_pattern, options=None):
  25. """
  26. 创建任务
  27. """
  28. options = options or {}
  29. data = {}
  30. data['name'] = name
  31. data['template_content'] = template_content
  32. data['input_mapping_file'] = input_mapping_file
  33. data['output_file'] = output_file
  34. data['url_pattern'] = url_pattern
  35. data.update(options)
  36. return self._request(self.__createTaskUrl, data)
  37. def updateTask(self, id, options=None):
  38. """
  39. 更新任务
  40. """
  41. options = options or {}
  42. data = {}
  43. data['id'] = id
  44. data.update(options)
  45. return self._request(self.__updateTaskUrl, data)
  46. def getTaskInfo(self, id, options=None):
  47. """
  48. 获取任务详情
  49. """
  50. options = options or {}
  51. data = {}
  52. data['id'] = id
  53. data.update(options)
  54. return self._request(self.__taskInfoUrl, data)
  55. def getUserTasks(self, options=None):
  56. """
  57. 以分页的方式查询当前用户所有的任务信息
  58. """
  59. options = options or {}
  60. data = {}
  61. data.update(options)
  62. return self._request(self.__taskQueryUrl, data)
  63. def startTask(self, id, options=None):
  64. """
  65. 启动任务
  66. """
  67. options = options or {}
  68. data = {}
  69. data['id'] = id
  70. data.update(options)
  71. return self._request(self.__taskStartUrl, data)
  72. def getTaskStatus(self, id, options=None):
  73. """
  74. 查询任务状态
  75. """
  76. options = options or {}
  77. data = {}
  78. data['id'] = id
  79. data.update(options)
  80. return self._request(self.__taskStatusUrl, data)