config.py 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170
  1. # OCR配置文件
  2. # 模型路径
  3. MODEL_PATH = "/root/autodl-tmp/llm/Qwen3-VL-8B-Instruct"
  4. # ========== OCR提示词 - 分步骤提取 ==========
  5. # 步骤1:提取化学品名称
  6. PROMPT_EXTRACT_NAME = """
  7. 你是一个专业的化学品安全标签说明识别助手。
  8. 请从图像中提取化学品的中文名称和英文名称(如有)。
  9. 按照以下JSON格式输出结果:
  10. {
  11. "name_cn": "化学品中文名称",
  12. "name_en": "化学品英文名称"
  13. }
  14. 注意:返回结果必须是标准JSON格式,不要包含```json```标记。
  15. """
  16. # 步骤2:提取成分信息
  17. PROMPT_EXTRACT_COMPONENTS = """
  18. 你是一个专业的化学品安全标签说明识别助手。
  19. 请从图像中提取所有成分信息,包括:成分名称、化学式、实际浓度、浓度区间、CAS号。
  20. 注意:可能有多个成分,请全部提取。
  21. 按照以下JSON格式输出结果:
  22. {
  23. "cf_list": [
  24. {
  25. "cas_name": "成分名称",
  26. "cas_cf": "化学式",
  27. "true_rate": "实际浓度",
  28. "rate": "浓度区间",
  29. "cas_no": "CAS号"
  30. }
  31. ]
  32. }
  33. 注意:返回结果必须是标准JSON格式,不要包含```json```标记。
  34. """
  35. # 步骤3:提取安全提醒信号词
  36. PROMPT_EXTRACT_KEYWORD = """
  37. 你是一个专业的化学品安全标签说明识别助手。
  38. 请从图像中提取安全提醒信号词和危险性说明
  39. 安全信号词:通常以比较醒目的方式显示,只识别"危险"、"警告"。
  40. 危险性说明:通常在安全提醒词附近,只返回中文的表示。
  41. 按照以下JSON格式输出结果:
  42. {
  43. "key_word": "安全提醒信号词",
  44. "risk_notice": "危险性说明内容"
  45. }
  46. 注意:返回结果必须是标准JSON格式,不要包含```json```标记。
  47. """
  48. # 步骤4:提取防范说明
  49. PROMPT_EXTRACT_PREVENTION = """
  50. 你是一个专业的化学品安全标签说明识别助手。
  51. 请从图像中提取防范说明,包括:预防措施、事故响应、安全存储、废弃处置信息:
  52. 注意,要精准定位到预防措施、事故响应、安全存储、废弃处置的位置一般都有【预防措施】、【事故响应】、【安全存储】、【废弃处置】的标识
  53. 在定位之后,精准的提取对应信息的内容,禁止篡改、编造
  54. 如果对应的内容有英文表示,只需要返回其中文表示,不需要返回英文表示
  55. 按照以下JSON格式输出结果:
  56. {
  57. "pre_notice": {
  58. "pre_method": "预防措施",
  59. "acc_response": "事故响应",
  60. "safe_keep": "安全存储",
  61. "abandon_deal": "废弃处置"
  62. }
  63. }
  64. 注意:返回结果必须是标准JSON格式,不要包含```json```标记。
  65. """
  66. # 步骤5:提取供应商标识
  67. PROMPT_EXTRACT_SUPPLIER = """
  68. 你是一个专业的化学品安全标签说明识别助手。
  69. 请从图像中提取所有供应商信息和应急咨询电话,
  70. 供应商信息包括:供应商名称、供应商地址、供应商电话、供应商邮编;
  71. 按照以下JSON格式输出结果:
  72. {
  73. "supplier": [{
  74. "name": "供应商名称",
  75. "address": "供应商地址",
  76. "tel": "供应商电话",
  77. "post": "供应商邮编",
  78. }],
  79. "acc_tel": "应急咨询电话"
  80. }
  81. 注意:
  82. 供应商的信息可能有多个,请提取对应的多个供应商的信息
  83. 返回结果必须是标准JSON格式,不要包含```json```标记。
  84. """
  85. # ========== 完整提取提示词(一次性提取所有信息)==========
  86. OCR_PROMPT_FULL = """
  87. 你是一个专业的化学品安全标签说明识别助手,负责提取化学品安全标签图像中的标签信息,提取的步骤如下:
  88. 1. **提取化学品名称**: 提取化学品中文名称和英文名称(如有)
  89. 2. **提取成分信息**:包括成分名称、化学式、实际浓度、浓度区间、成分cas号,成分可能有多个
  90. 3. **安全提醒信号词**:通常以比较醒目的方式提醒,如 '危险', '警告'等
  91. 4. **危险性说明**:通常在安全提醒词附近
  92. 5. **防范说明**:包括预防措施、事故响应、安全存储、废弃处置信息
  93. 按照以下JSON格式输出结果:
  94. {
  95. "tag": {
  96. "name_cn": "化学品中文名称",
  97. "name_en": "化学品英文名称",
  98. "cf_list": [
  99. {
  100. "cas_name": "成分名称",
  101. "cas_cf": "化学式",
  102. "true_rate": "实际浓度",
  103. "rate": "浓度区间",
  104. "cas_no": "CAS号"
  105. }
  106. ]
  107. },
  108. "key_word": "安全提醒信号词",
  109. "risk_notice": "危险性说明",
  110. "pre_notice": {
  111. "pre_method": "预防措施",
  112. "acc_response": "事故响应",
  113. "safe_keep": "安全存储",
  114. "abandon_deal": "废弃处置"
  115. }
  116. }
  117. 注意:返回结果必须是标准JSON格式,不要包含```json```标记。
  118. """
  119. # 步骤6:提取象形图标识
  120. PROMPT_EXTRACT_ICON = """
  121. 你是一个专业的化学品安全标签说明识别助手。
  122. 请识别图像中的GHS危险象形图标识。这些象形图通常是红色菱形框内的黑色符号图案,包括但不限于:
  123. - GHS01:爆炸物(爆炸图案)
  124. - GHS02:易燃物(火焰图案)
  125. - GHS03:氧化剂(火焰与圆圈图案)
  126. - GHS04:压缩气体(气瓶图案)
  127. - GHS05:腐蚀性物质(手和金属被腐蚀图案)
  128. - GHS06:急性毒性(骷髅和交叉骨头图案)
  129. - GHS07:有害物质(感叹号图案)
  130. - GHS08:健康危害(人体剪影图案)
  131. - GHS09:环境危害(死鱼和枯树图案)
  132. 请仔细对比参考图像和待识别图像中的象形图,按照图像中从左到右的顺序识别这些象形图的类别。
  133. 按照以下JSON格式输出结果:
  134. {
  135. "tag_images": [识别到的形象图]
  136. }
  137. 注意:
  138. 1. 必须按照图像中象形图从左到右的实际顺序排列
  139. 2. 如果某个位置的象形图无法识别则跳过
  140. 3. 识别出的象形图用对应的GHS编号(如GHS01-GHS09)表示
  141. 4. 返回结果必须是标准JSON格式,不要包含```json```标记
  142. """
  143. # 默认使用的提示词(向后兼容)
  144. OCR_PROMPT = OCR_PROMPT_FULL