credent007 commited on
Commit
5c03bca
·
verified ·
1 Parent(s): f153a2d

Update prompt.py

Browse files
Files changed (1) hide show
  1. prompt.py +207 -196
prompt.py CHANGED
@@ -1,199 +1,210 @@
1
- def get_prompt():
2
- return """
3
- Extract the following details.
4
 
5
- Return ONLY valid JSON:
6
 
7
- {
8
- if the image contains "PART - I - BILL OF ENTRY SUMMARY"
9
- fetch only following json data
10
- {
11
 
12
- "Port Code": "",
13
- "BE NO": "",
14
- "BE Date": "",
15
- "BE TYPE": "",
16
- "IEC/Br": "",
17
- "CB Code": "",
18
- "Mode": "",
19
- "DEF BE": "",
20
- "ASSESS": "",
21
- "EXAM": "",
22
- "PROV/FINAL": "",
23
- "COUNTRY OF ORIGIN": "",
24
- "PORT OF LOADING": "",
25
- "PORT OF SHIPMENT": "",
26
- "IMPORTER NAME & ADDRESS": "",
27
- "AD CODE": "",
28
- "CB NAME": "",
29
- "BCD": "",
30
- "SWS": "",
31
- "CVD":"",
32
- "IGST": "",
33
- "TOT ASS VALUE": "",
34
- "TOTAL DUTY": "",
35
- "INT": "",
36
- "PNLTY": "",
37
- "FINE": "",
38
- "TOT AMOUNT": "",
39
- "Submission": "",
40
- "ASSESSMENT": "",
41
- "EXCHNAGE RATE": "",
42
- "OOC NO": "",
43
- "OOC DATE": "",
44
- "IGM NO": "",
45
- "IGM DATE": "",
46
- "INW DATE": "",
47
- "MAWB NO": "",
48
- "DATE": "",
49
- "HAWB NO": "",
50
- "HAWB DATE": "",
51
- "PKG": "",
52
- "GW": "",
53
- "BOND NO": "",
54
- "PORT": "",
55
- "BOND CD": "",
56
- "DEBT AMT": "",
57
- "SR NO": "",
58
- "CHALLAN NO": "",
59
- "PAID ON": "",
60
- "AMOUNT(RS)": "",
61
- "S NO": "",
62
- "LCL/FCL": "",
63
- "CONTAINER NUMBER": "",
64
- "S NO":"",
65
- "INVOICE NO":"",
66
- "INV AMT": "",
67
- "CUR":"",
68
- }
69
- else if the image contains "PART - II - INVOICE & VALUATION DETAILS"
70
- fetch only following json data
71
- {
72
- "SUPPLIER NAME & ADDRESS": "",
73
- "FREIGHT": "",
74
- "INSURANCE": "",
75
- "LOADING": "",
76
- "COMMN": "",
77
- "VALUATION METHOD": "",
78
- "Cur": "",
79
- "Term": "",
80
- "REL TD": "",
81
- "SVB CH": "",
82
- "SVB NO": "",
83
- "DATE": "",
84
- "S NO": "",
85
- "INVOICE No Dt": "",
86
- "S NO": "",
87
- "CTH": "",
88
- "DESCRIPTION": "",
89
- "UNIT PRICE": "",
90
- "QUANTITY": "",
91
- "UQC": "",
92
- "AMOUNT": "",
93
- }
94
- else if the image contains "PART-III — DUTIES"
95
- fetch only following json data
96
- {
97
- "INVSNO": "",
98
- "ITEMSN": "",
99
- "CTH": "",
100
- "ITEM DESCRIPTION": "",
101
- "COO": "",
102
- "C_QTY": "",
103
- "C_UQC": "",
104
- "S_QTY": "",
105
- "S_UQC": "",
106
- "SCH": "",
107
- "END USE": "",
108
- "ASSESS VALUE": "",
109
- "TOTAL DUTY": "",
110
- "INVSNO": "",
111
- "ITEMSN": "",
112
- "BCD": "",
113
- "SWS": "",
114
- "IGST": "",
115
- "G CESS": "",
116
- "ADD": "",
117
- "T VALUE": "",
118
- "INVSNO": "",
119
- "ITEMSN": "",
120
- "BCD": "",
121
- "SWS": "",
122
- "IGST": "",
123
- "G CESS": "",
124
- "ADD": "",
125
- "T VALUE": "",
126
- "INVSNO": "",
127
- "ITEMSN": "",
128
- "BCD": "",
129
- "SWS": "",
130
- "IGST": "",
131
- "G CESS": "",
132
- "ADD": "",
133
- "T VALUE": "",
134
- "INVSNO": "",
135
- "ITEMSN": "",
136
- "BCD": "",
137
- "SWS": "",
138
- "IGST": "",
139
- "G CESS": "",
140
- "ADD": "",
141
- "T VALUE": "",
142
- "INVSNO": "",
143
- "ITEMSN": "",
144
- "BCD": "",
145
- "SWS": "",
146
- "IGST": "",
147
- "G CESS": "",
148
- "ADD": "",
149
- "T VALUE": "",
150
- "INVSNO": "",
151
- "ITEMSN": "",
152
- "CAIDC": "",
153
- "INVSNO": "",
154
- "ITEMSN": "",
155
- "CAIDC": "",
156
- "INVSNO": "",
157
- "ITEMSN": "",
158
- "CAIDC": "",
159
- "INVSNO": "",
160
- "ITEMSN": "",
161
- "CAIDC": "",
162
- "INVSNO": "",
163
- "ITEMSN": "",
164
- "CAIDC": "",
165
- }
166
- else if the image contains "PART - IV - ADDITIONAL DETAILS"
167
- fetch only following json data
168
- {
169
- "INVSNO": "",
170
- "ITMSNO": "",
171
- "LIC SLNO": "",
172
- "LIC NO": "",
173
- "LIC DATE": "",
174
- "CODE": "",
175
- "PORT": "",
176
- "DEBIT VALUE": "",
177
- "QTY": "",
178
- "UQC": "",
179
- "DEBIT DUTY": "",
180
- }
181
- else if the image contains "PART-V — OTHER COMPLIANCES"
182
- fetch only following json data
183
- {
184
- "EXAMINATION ORDER RMS": "",
185
- "EXAMINATION ORDER": "",
186
- "PGA EXAMINATION INSTRUCTIONS": "",
187
- "EXAMINATION REPORT": "",
188
- "SUPERINTENDENT COMMENTS": "",
189
- }
190
- else if the image contains "PART-VI — DECLARATIONS "
191
- {
192
- "PART-VI- DECLARATIONS": "None"
193
- }
194
- Rules:
195
- - No explanation
196
- - No Chinese
197
- - Only JSON output
198
- - if the data is not present return ""
199
- """
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # def get_prompt():
2
+ # return """
3
+ # Extract the following details.
4
 
5
+ # Return ONLY valid JSON:
6
 
7
+ # {
8
+ # if the image contains "PART - I - BILL OF ENTRY SUMMARY"
9
+ # fetch only following json data
10
+ # {
11
 
12
+ # "Port Code": "",
13
+ # "BE NO": "",
14
+ # "BE Date": "",
15
+ # "BE TYPE": "",
16
+ # "IEC/Br": "",
17
+ # "CB Code": "",
18
+ # "Mode": "",
19
+ # "DEF BE": "",
20
+ # "ASSESS": "",
21
+ # "EXAM": "",
22
+ # "PROV/FINAL": "",
23
+ # "COUNTRY OF ORIGIN": "",
24
+ # "PORT OF LOADING": "",
25
+ # "PORT OF SHIPMENT": "",
26
+ # "IMPORTER NAME & ADDRESS": "",
27
+ # "AD CODE": "",
28
+ # "CB NAME": "",
29
+ # "BCD": "",
30
+ # "SWS": "",
31
+ # "CVD":"",
32
+ # "IGST": "",
33
+ # "TOT ASS VALUE": "",
34
+ # "TOTAL DUTY": "",
35
+ # "INT": "",
36
+ # "PNLTY": "",
37
+ # "FINE": "",
38
+ # "TOT AMOUNT": "",
39
+ # "Submission": "",
40
+ # "ASSESSMENT": "",
41
+ # "EXCHNAGE RATE": "",
42
+ # "OOC NO": "",
43
+ # "OOC DATE": "",
44
+ # "IGM NO": "",
45
+ # "IGM DATE": "",
46
+ # "INW DATE": "",
47
+ # "MAWB NO": "",
48
+ # "DATE": "",
49
+ # "HAWB NO": "",
50
+ # "HAWB DATE": "",
51
+ # "PKG": "",
52
+ # "GW": "",
53
+ # "BOND NO": "",
54
+ # "PORT": "",
55
+ # "BOND CD": "",
56
+ # "DEBT AMT": "",
57
+ # "SR NO": "",
58
+ # "CHALLAN NO": "",
59
+ # "PAID ON": "",
60
+ # "AMOUNT(RS)": "",
61
+ # "S NO": "",
62
+ # "LCL/FCL": "",
63
+ # "CONTAINER NUMBER": "",
64
+ # "S NO":"",
65
+ # "INVOICE NO":"",
66
+ # "INV AMT": "",
67
+ # "CUR":"",
68
+ # }
69
+ # else if the image contains "PART - II - INVOICE & VALUATION DETAILS"
70
+ # fetch only following json data
71
+ # {
72
+ # "SUPPLIER NAME & ADDRESS": "",
73
+ # "FREIGHT": "",
74
+ # "INSURANCE": "",
75
+ # "LOADING": "",
76
+ # "COMMN": "",
77
+ # "VALUATION METHOD": "",
78
+ # "Cur": "",
79
+ # "Term": "",
80
+ # "REL TD": "",
81
+ # "SVB CH": "",
82
+ # "SVB NO": "",
83
+ # "DATE": "",
84
+ # "S NO": "",
85
+ # "INVOICE No Dt": "",
86
+ # "S NO": "",
87
+ # "CTH": "",
88
+ # "DESCRIPTION": "",
89
+ # "UNIT PRICE": "",
90
+ # "QUANTITY": "",
91
+ # "UQC": "",
92
+ # "AMOUNT": "",
93
+ # }
94
+ # else if the image contains "PART-III — DUTIES"
95
+ # fetch only following json data
96
+ # {
97
+ # "INVSNO": "",
98
+ # "ITEMSN": "",
99
+ # "CTH": "",
100
+ # "ITEM DESCRIPTION": "",
101
+ # "COO": "",
102
+ # "C_QTY": "",
103
+ # "C_UQC": "",
104
+ # "S_QTY": "",
105
+ # "S_UQC": "",
106
+ # "SCH": "",
107
+ # "END USE": "",
108
+ # "ASSESS VALUE": "",
109
+ # "TOTAL DUTY": "",
110
+ # "INVSNO": "",
111
+ # "ITEMSN": "",
112
+ # "BCD": "",
113
+ # "SWS": "",
114
+ # "IGST": "",
115
+ # "G CESS": "",
116
+ # "ADD": "",
117
+ # "T VALUE": "",
118
+ # "INVSNO": "",
119
+ # "ITEMSN": "",
120
+ # "BCD": "",
121
+ # "SWS": "",
122
+ # "IGST": "",
123
+ # "G CESS": "",
124
+ # "ADD": "",
125
+ # "T VALUE": "",
126
+ # "INVSNO": "",
127
+ # "ITEMSN": "",
128
+ # "BCD": "",
129
+ # "SWS": "",
130
+ # "IGST": "",
131
+ # "G CESS": "",
132
+ # "ADD": "",
133
+ # "T VALUE": "",
134
+ # "INVSNO": "",
135
+ # "ITEMSN": "",
136
+ # "BCD": "",
137
+ # "SWS": "",
138
+ # "IGST": "",
139
+ # "G CESS": "",
140
+ # "ADD": "",
141
+ # "T VALUE": "",
142
+ # "INVSNO": "",
143
+ # "ITEMSN": "",
144
+ # "BCD": "",
145
+ # "SWS": "",
146
+ # "IGST": "",
147
+ # "G CESS": "",
148
+ # "ADD": "",
149
+ # "T VALUE": "",
150
+ # "INVSNO": "",
151
+ # "ITEMSN": "",
152
+ # "CAIDC": "",
153
+ # "INVSNO": "",
154
+ # "ITEMSN": "",
155
+ # "CAIDC": "",
156
+ # "INVSNO": "",
157
+ # "ITEMSN": "",
158
+ # "CAIDC": "",
159
+ # "INVSNO": "",
160
+ # "ITEMSN": "",
161
+ # "CAIDC": "",
162
+ # "INVSNO": "",
163
+ # "ITEMSN": "",
164
+ # "CAIDC": "",
165
+ # }
166
+ # else if the image contains "PART - IV - ADDITIONAL DETAILS"
167
+ # fetch only following json data
168
+ # {
169
+ # "INVSNO": "",
170
+ # "ITMSNO": "",
171
+ # "LIC SLNO": "",
172
+ # "LIC NO": "",
173
+ # "LIC DATE": "",
174
+ # "CODE": "",
175
+ # "PORT": "",
176
+ # "DEBIT VALUE": "",
177
+ # "QTY": "",
178
+ # "UQC": "",
179
+ # "DEBIT DUTY": "",
180
+ # }
181
+ # else if the image contains "PART-V — OTHER COMPLIANCES"
182
+ # fetch only following json data
183
+ # {
184
+ # "EXAMINATION ORDER RMS": "",
185
+ # "EXAMINATION ORDER": "",
186
+ # "PGA EXAMINATION INSTRUCTIONS": "",
187
+ # "EXAMINATION REPORT": "",
188
+ # "SUPERINTENDENT COMMENTS": "",
189
+ # }
190
+ # else if the image contains "PART-VI — DECLARATIONS "
191
+ # {
192
+ # "PART-VI- DECLARATIONS": "None"
193
+ # }
194
+ # Rules:
195
+ # - No explanation
196
+ # - No Chinese
197
+ # - Only JSON output
198
+ # - if the data is not present return ""
199
+ # """
200
+
201
+ def get_prompt():
202
+ return """
203
+
204
+ You convert unstructured text into a structured JSON object. OUTPUT ONLY VALID JSON. NO extra words. NO explanation. NO commentary. GOAL - Extract required data points as key–value pairs. - Organize data into top-level sections only. - Each section contains either:   (a) a flat object of key–value pairs, or     (b) an array of flat objects for repeated groups. - Depth limit = 2 (root → section → object/array of objects).     Never nest sections inside other sections. NAMING RULES - Use the exact section names and key names defined below. - Keys MUST NOT contain the dot character ".". - Maintain human-readable, normalized whitespace in key names. - Never rename keys, never add extra keys. DATA TYPING - Use JSON native types:   - Numbers as numbers.   - IDs or codes with leading zeros as strings.   - Dates as "YYYY-MM-DD" if clearly parseable; otherwise keep original text.   - Times as "HH:MM" 24-hour if clear. - If a value exists but is unreadable, return "" (not null). - NEVER infer any missing value. NOTIFICATION NUMBER RULE (IMPORTANT) For “CB Code” fields (e.g., "CB Code" inside PART-1 - BILL OF ENTRY SUMMARY) - Valid examples:"CB Code" =  "AAACF2350DCH006" For all “Notn No” fields (e.g., "IGST","G. CESS" inside Item Duty): - Valid examples:"IGST" =  "021/2023", "G CESS" = "001/2017". - Return "IGST" and "G CESS" can not be null or Empty For all “Notn SNo” fields (e.g., "IGST", "G CESS" inside Item Duty): - Valid examples:"IGST" =  "1" or "III70", "G CESS" = "56". For all “Rate” fields (e.g., BCD, SWS inside Item Duty): - Valid examples:BCD =  "7.5", SWS = "10". For all “Notn No” fields (e.g., CAIDC inside Other Duties): - Valid examples:CAIDC =  "011/2021". For all “Notn SNo” fields (e.g., CAIDC inside Other Duties): - Valid examples:CAIDC =  "18". For all “Amount” fields (e.g., CAIDC inside Other Duties): - Valid examples:CAIDC =  "0". - Return Exact value or can be 0 or Empty For all “Duty Fg” fields (e.g., CAIDC inside Other Duties): - Valid examples:CAIDC =  "4437540". - Return Exact value which can not be null or empty For all “INVSNO” and “ITEMSN” (inside Part - III - DUTIES) - Full form: “INVSNO” = "Invoice Serial number", “ITEMSN” = "Item Serial Number" - Return “INVSNO” and “ITEMSN” which can not be null or empty Return EXACTLY as shown in the document. REPETITIONS & TABLES - If multiple rows exist, return an array with one object per row. - Each object must remain FLAT. - Do not nest objects deeper than allowed. - Keep column order exactly as defined. MANDATORY BEHAVIOR - Detect which PART the document belongs to. - Output ONLY the JSON object for that PART. - If data for a required field is missing, return "". ============================================= PART-1 — BILL OF ENTRY SUMMARY ============================================= If the document corresponds to PART-1, output: {   "PART-1 - BILL OF ENTRY SUMMARY": {     "Port Code": "",     "BE NO": "",     "BE Date": "",     "BE TYPE": "",     "IEC/Br": "",     "CB Code": "",     "Mode": "",     "DEF BE": "",     "ASSESS": "",     "EXAM": "",     "PROV/FINAL": "",     "COUNTRY OF ORIGIN": "",     "PORT OF LOADING": "",     "PORT OF SHIPMENT": "",     "IMPORTER NAME & ADDRESS": "",     "AD CODE": "",     "CB NAME": "",     "BCD": "",     "SWS": "",     "CVD":"",     "IGST": "",     "TOT ASS VALUE": "",     "TOTAL DUTY": "",     "INT": "",     "PNLTY": "",     "FINE": "",     "TOT AMOUNT": "",     "Submission": "",     "ASSESSMENT": "",     "EXCHNAGE RATE": "",     "OOC NO": "",     "OOC DATE": ""   },   "MANIFEST DETAILS": [     {       "IGM NO": "",       "IGM DATE": "",       "INW DATE": "",       "MAWB NO": "",       "DATE": "",       "HAWB NO": "",       "HAWB DATE": "",       "PKG": "",       "GW": ""     }   ],   "BOND DETAILS": [     {       "BOND NO": "",       "PORT": "",       "BOND CD": "",       "DEBT AMT": ""     }   ],   "Payment Details": [     {       "SR NO": "",       "CHALLAN NO": "",       "PAID ON": "",       "AMOUNT(RS)": ""     }   ],   "CONTAINER DETAILS": [     {       "S NO": "",       "LCL/FCL": "",       "CONTAINER NUMBER": ""     }   ],   "INVOICE DETAILS-SUMMERY": [     {         "S NO":"",         "INVOICE NO":"",         "INV AMT": "",         "CUR":""     }   ] } ============================================ PART-II — INVOICE & VALUATION DETAILS ============================================ {     "PART -II - INVOICE & VALUATION DETAILS": {},          "Details": {                 "SUPPLIER NAME & ADDRESS": "",                 "FREIGHT": "",                 "INSURANCE": "",                 "LOADING": "",                 "COMMN": "",                 "VALUATION METHOD": "",                 "Cur": "",                 "Term": "",                 "REL TD": "",                 "SVB CH": "",                 "SVB NO": "",                 "DATE": ""                 },     "INVOICE": [                 {                     "S NO": "",                     "INVOICE No Dt": ""                 }                 ],     "Item Details": [                         {                             "S NO": "",                             "CTH": "",                             "DESCRIPTION": "",                             "UNIT PRICE": "",                             "QUANTITY": "",                             "UQC": "",                             "AMOUNT": ""                         }                     ]    } ==================================== PART-III — DUTIES ==================================== ✔ Item Duty section FIXED, simplified, corrected   ✔ Each table is ONE row   ✔ Field order fixed   ✔ Dot-free keys   ✔ No duplication {   "Part - III - DUTIES": {},     "Item Details": [                         {                             "INVSNO": "",                             "ITEMSN": "",                             "CTH": "",                             "ITEM DESCRIPTION": "",                             "COO": "",                             "C_QTY": "",                             "C_UQC": "",                             "S_QTY": "",                             "S_UQC": "",                             "SCH": "",                             "END USE": "",                             "ASSESS VALUE": "",                             "TOTAL DUTY": ""                         }                         ],     "Item Duty - Notn No": [                         {                             "INVSNO": "",                             "ITEMSN": "",                             "BCD": "",                             "SWS": "",                             "IGST": "",                             "G CESS": "",                             "ADD": "",                             "T VALUE": ""                         }                         ],     "Item Duty - Notn SNo": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "BCD": "",                                     "SWS": "",                                     "IGST": "",                                     "G CESS": "",                                     "ADD": "",                                     "T VALUE": ""        ��                        }                                 ],     "Item Duty - Rate": [                             {                                 "INVSNO": "",                                 "ITEMSN": "",                                 "BCD": "",                                 "SWS": "",                                 "IGST": "",                                 "G CESS": "",                                 "ADD": "",                                 "T VALUE": ""                             }                             ],     "Item Duty - Amount": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "BCD": "",                                     "SWS": "",                                     "IGST": "",                                     "G CESS": "",                                     "ADD": "",                                     "T VALUE": ""                                 }                                 ],     "Item Duty - Duty Fg": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "BCD": "",                                     "SWS": "",                                     "IGST": "",                                     "G CESS": "",                                     "ADD": "",                                     "T VALUE": ""                                 }                                 ],     "Other Duty - Notn No": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "CAIDC": ""                                 }                                 ],     "Other Duty - Notn SNo": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "CAIDC": ""                                 }                                 ],     "Other Duty - Rate": [                             {                                 "INVSNO": "",                                 "ITEMSN": "",                                 "CAIDC": ""                             }                             ],     "Other Duty - Amount": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "CAIDC": ""                                 }                                 ],     "Other Duty - Duty Fg": [                                 {                                     "INVSNO": "",                                     "ITEMSN": "",                                     "CAIDC": ""                                 }                                 ] } ======================================== PART-IV — ADDITIONAL DETAILS ======================================== {   "PART - IV - ADDITIONAL DETAILS": {},   "LICENSE DETAILS": [                         {                             "INVSNO": "",                             "ITMSNO": "",                             "LIC SLNO": "",                             "LIC NO": "",                             "LIC DATE": "",                             "CODE": "",                             "PORT": "",                             "DEBIT VALUE": "",                             "QTY": "",                             "UQC": "",                             "DEBIT DUTY": ""                         }                         ] } ======================================== PART-V — OTHER COMPLIANCES ======================================== {   "PART - V - OTHER COMPLIANCES": {     "EXAMINATION ORDER RMS": "",     "EXAMINATION ORDER": "",     "PGA EXAMINATION INSTRUCTIONS": "",     "EXAMINATION REPORT": "",     "SUPERINTENDENT COMMENTS": ""   } } ========================================== PART-VI — DECLARATIONS ========================================== {   "PART-VI- DECLARATIONS": "None" } ========================================== FINAL RULES ========================================== - Detect document PART.   - Return ONLY that PART’s JSON.   - Output MUST be valid JSON.   - No comments or text outside JSON.   - No dots in keys.   - Do NOT infer values; use "" when missing.
205
+
206
+
207
+ """
208
+
209
+
210
+