千问开源大模型
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
3.7 KiB

  1. #coding:utf8
  2. import re
  3. def get_content(inputdata,logging):
  4. """
  5. :param inputdata:json数据
  6. :return: prompt及其他参数
  7. """
  8. res={}
  9. admin=inputdata["metadata"]["admin"]
  10. data=inputdata["data"]
  11. prompt=admin["prompt"]
  12. if_user=re.findall("{{(.*)}}",prompt)
  13. if_data=re.findall("@@(.*)@@",prompt)
  14. user_data=inputdata["metadata"]["user"]
  15. if if_user!=[] and if_user[0] in user_data.keys():
  16. tmp=user_data[if_user[0]]
  17. prompt=re.sub("{{(.*)}}",tmp,prompt)
  18. if if_data!=[] and if_data[0] in data.keys():
  19. tmp1=data[if_data[0]]
  20. prompt=re.sub("@@(.*)@@",tmp1,prompt)
  21. res["prompt"]=prompt
  22. res["authorization"]=admin["authorization"]
  23. res["model"]=admin["model"]
  24. res["temperature"]=admin["temperature"]
  25. res["authorization"]=admin["authorization"]
  26. res["top_p"]=admin["top_p"]
  27. res["n"]=admin["n"]
  28. return res
  29. if __name__=="__main__":
  30. inputdata={
  31. "id":1,
  32. "module":"ChatGPT",
  33. "version":1,
  34. "name":"信息抽取",
  35. "describe":"此步骤进行相关信息抽取",
  36. "metadata":{
  37. "position":[
  38. 100,
  39. 200
  40. ],
  41. "output":{
  42. "output_type":"table",
  43. "label_col":[
  44. "文件名称",
  45. "识别内容",
  46. "文件路径",
  47. "文件大小",
  48. "上传时间",
  49. "GPT处理结果"
  50. ]
  51. },
  52. "input":{
  53. "input_type":"text",
  54. "label":[
  55. "3_文件名称",
  56. "3_识别内容",
  57. "3_文件路径",
  58. "3_文件大小",
  59. "3_上传时间"
  60. ]
  61. },
  62. "admin":{
  63. "prompt":"下面我给出一段数据,请抽取相关内容。需抽取的内容是{{tag}}。数据为@@3_识别内容@@",
  64. "authorization":"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",
  65. "model":"gpt-3.5-turbo",
  66. "temperature":"0.2",
  67. "top_p":"1",
  68. "N":"1",
  69. "user_input":[
  70. {
  71. "keyname":"tag",
  72. "keydesc":"需抽取内容"
  73. }
  74. ]
  75. },
  76. "user":{
  77. "tag":"专利号,专利名称,申请人"
  78. }
  79. },
  80. "data":{
  81. "3_文件名称":"测试的专利文档.pdf",
  82. "3_识别内容":"\n证书号第2353566号\n发明专利证书\n发明名称:一种浅海大型复杂沙波区地形重构方法\n发 明 人:张华国;傅斌;何谢错;厉冬玲;史爱琴;楼璘林\n专 利 号:ZL 2015 1 0071764.4\n专利申请日:2015年02月11日 专利权人:国家海洋局第二海洋研究所 授权公告日:2017年01月18日\n本发明经过本局依照中华人民共和国专利法进行审查,决定授予专利权,颁发本证书 并在专利登记簿上予以登记-专利权自授权公告之日起生效。\n本专利的专利权期限为二十年,自申请日起算。专利权人应当依照专利法及其实施细 则规定缴纳年费。本专利的年费应当在每年02月11日前缴纳。未按照规定缴纳年费的, 专利权自应当缴纳年费期满之日起终止„\n专利证书记载专利权登记时的法律状况。专利权的转移、质押、无效、终止、恢复和 专利权人的姓名或名称、国籍、地址变更等事项记载在专利登记簿上。 \n",
  83. "3_文件路径":"http://10.0.32.50:/data2/lybtmp/install/知识包专利/测试的专利文档.pdf",
  84. "3_文件大小":"250KB",
  85. "3_上传时间":1687835515
  86. },
  87. "next_app_id":[
  88. ],
  89. "wait_condition":[
  90. ],
  91. "start_tag":"false"
  92. }
  93. a=get_content(inputdata)
  94. print(a)