DocUA commited on
Commit
fbed8c1
·
1 Parent(s): ddd205f

mod prompts

Browse files
Files changed (2) hide show
  1. main.py +14 -17
  2. prompts.py +92 -40
main.py CHANGED
@@ -207,10 +207,10 @@ def generate_legal_position(court_decision_text, user_question):
207
  }
208
 
209
  system_prompt = """
210
- Ви кваліфікований юрист, якому доручено сформулювати правову позицію на основі судового рішення.
211
  """
212
 
213
- prompt = f"""Дотримуйтесь цих інструкцій уважно:
214
 
215
  1. Спочатку вам буде надано текст судового рішення:
216
 
@@ -218,36 +218,33 @@ def generate_legal_position(court_decision_text, user_question):
218
  {court_decision_text}
219
  </court_decision>
220
 
221
- 2. Уважно прочитайте та проаналізуйте текст судового рішення. Зверніть увагу на:
222
  - Юридичну суть рішення
223
  - Основне правове обґрунтування
224
  - Головні юридичні міркування
225
 
226
- 3. На основі вашого аналізу сформулюйте правову позицію, дотримуючись таких вказівок:
227
- - Будьте чіткими, точними та обґрунтованими
228
- - Використовуйте відповідну юридичну термінологію
229
- - Зберігайте стислість, але повністю передайте суть судового рішення
230
- - Уникайте додаткових пояснень чи коментарів
231
- - Спробуйте узагальнювати та уникати специфічної інформації (наприклад, імен або назв) під час подачі результатів
232
  - Використовуйте лише українську мову
233
 
234
- 4. Окрім правової позиції, створи короткий заголовок, який відображає основну думку та зазнач її категорію.
235
 
236
  5. Додатково визнач тип судочинства, до якої відноситься дане рішення.
237
  Використовуй лише один із цих типів: 'Адміністративне судочинство', 'Кримінальне судочинство', 'Цивільне судочинство', 'Господарське судочинство'
238
 
239
- 6. Відформатуйте вашу відповідь у форматі JSON:
240
 
241
- <examples>
242
  {{
243
- "title": "Заголовок правової позиції",
244
- "text": "Текст правової позиції",
245
  "proceeding": "Тип судочинства",
246
- "category": "Категорія правової позиції"
247
  }}
248
- </examples>
249
 
250
- Переконайтеся, що ваша відповідь відповідає цьому формату та вказівкам. Надайте лише один JSON-вихід без будь-яких додаткових коментарів.
251
  """
252
 
253
  messages = [
 
207
  }
208
 
209
  system_prompt = """
210
+ Дій як кваліфікований юрист. :
211
  """
212
 
213
+ prompt = f"""Дотримуйся цих інструкцій.
214
 
215
  1. Спочатку вам буде надано текст судового рішення:
216
 
 
218
  {court_decision_text}
219
  </court_decision>
220
 
221
+ 2. Уважно прочитай та проаналізуй текст наданого судового рішення. Зверни увагу на:
222
  - Юридичну суть рішення
223
  - Основне правове обґрунтування
224
  - Головні юридичні міркування
225
 
226
+ 3. На основі аналізу сформулюй короткий зміст позиції суду, дотримуючись таких вказівок:
227
+ - Будь чіткими, точними та обґрунтованими
228
+ - Використовуй відповідну юридичну термінологію
229
+ - Зберігай стислість, але повністю передай суть судового рішення
230
+ - Уникай додаткових пояснень чи коментарів
231
+ - Спробуй узагальнювати та уникати специфічної інформації (наприклад, імен або назв) під час подачі результатів
232
  - Використовуйте лише українську мову
233
 
234
+ 4. Створи короткий заголовок, який відображає основну суть судового рішення та зазнач його категорію.
235
 
236
  5. Додатково визнач тип судочинства, до якої відноситься дане рішення.
237
  Використовуй лише один із цих типів: 'Адміністративне судочинство', 'Кримінальне судочинство', 'Цивільне судочинство', 'Господарське судочинство'
238
 
239
+ 6. Відформатуй відповідь у форматі JSON:
240
 
 
241
  {{
242
+ "title": "Заголовок судового рішення",
243
+ "text": "Текст короткого змісту позиції суду",
244
  "proceeding": "Тип судочинства",
245
+ "category": "Категорія судового рішення"
246
  }}
 
247
 
 
248
  """
249
 
250
  messages = [
prompts.py CHANGED
@@ -1,56 +1,108 @@
1
  from llama_index.core.prompts import PromptTemplate
2
 
3
  CITATION_QA_TEMPLATE = PromptTemplate(
4
- "You are a qualified lawyer. "
5
- "Please provide a legal analysis based solely on the provided legal precedents and positions. "
6
- "When referencing a legal precedent or position, "
7
- "cite the appropriate source(s) using their corresponding numbers. "
8
- "Every answer should include at least one legal source citation relevant to the query. "
9
- "Only cite a source when you are explicitly referencing it. "
10
- "If none of the legal precedents or positions are helpful, you should indicate that. "
11
- "Use only the Ukrainian language to answer. "
12
- "For example:\n"
13
  "Source 1:\n"
14
- "The court ruled that contractual obligations must be fulfilled even if the terms are vague.\n"
15
  "Source 2:\n"
16
- "In case of unforeseen circumstances, contracts may be voided under certain conditions.\n"
17
- "Query: Can a contract be voided due to unforeseen circumstances?\n"
18
- "Answer: A contract may be voided under certain conditions if unforeseen circumstances arise [2]. "
19
- "Now it's your turn. Below are several numbered legal sources and precedents (legal positions):"
20
  "\n------\n"
21
  "{context_str}"
22
  "\n------\n"
23
- "New legal issue: {query_str}\n"
24
- "User question: {question}\n"
25
- "Answer: "
26
  )
27
 
 
 
28
  CITATION_REFINE_TEMPLATE = PromptTemplate(
29
- "You are a qualified lawyer. "
30
- "Please refine the legal analysis based solely on the provided legal precedents and positions. "
31
- "When referencing a legal precedent or position, "
32
- "cite the appropriate source(s) using their corresponding numbers. "
33
- "Every refined answer should include at least one relevant legal source citation. "
34
- "Only cite a source when you are explicitly referencing it. "
35
- "If none of the legal precedents or positions are helpful, you should repeat the existing answer. "
36
- "Use only the Ukrainian language to answer."
37
- "For example:\n"
38
  "Source 1:\n"
39
- "The court ruled that contractual obligations must be fulfilled even if the terms are vague.\n"
40
  "Source 2:\n"
41
- "In case of unforeseen circumstances, contracts may be voided under certain conditions.\n"
42
- "Query: Can a contract be voided due to unforeseen circumstances?\n"
43
- "Existing answer: A contract may be voided under certain conditions if unforeseen circumstances arise [2].\n"
44
- "Now it's your turn. "
45
- "We have provided an existing legal analysis: {existing_answer}"
46
- "Below are several numbered legal sources and precedents. "
47
- "Use them to refine the existing legal answer. "
48
- "If the provided legal sources are not helpful, you will repeat the existing answer."
49
- "\nBegin refining!"
50
  "\n------\n"
51
  "{context_msg}"
52
  "\n------\n"
53
- "New legal issue: {query_str}\n"
54
- "User question: {question}\n"
55
- "Answer: "
56
- )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  from llama_index.core.prompts import PromptTemplate
2
 
3
  CITATION_QA_TEMPLATE = PromptTemplate(
4
+ "Будь ласка, надайте відповідь, базуючись виключно на наданих правових позиціях Верховного Суду. "
5
+ "При посиланні на інформацію з джерела цитуйте відповідне джерело в кінці тексту, використовуючи його номер у квадратних дужках: [lp_id]. "
6
+ "Кожна відповідь повинна містити щонайменше одне посилання на джерело. "
7
+ "Цитуйте джерело лише тоді, коли ви явно на нього посилаєтеся. "
8
+ "Якщо жодне з джерел не є корисним, зазначте це. "
9
+ "Приклад:\n"
 
 
 
10
  "Source 1:\n"
11
+ "Суд постановив, що договірні зобов’язання мають виконуватись, навіть якщо умови є нечіткими.\n"
12
  "Source 2:\n"
13
+ "У випадку непередбачених обставин, договори можуть бути анульовані за певних умов.\n"
14
+ "Запит: Чи може договір бути анульований через непередбачені обставини?\n"
15
+ "Відповідь: Договір може бути анульований за певних умов у разі настання непередбачених обставин [2].\n"
16
+ "Тепер ваша черга. Нижче наведено кілька пронумерованих правових позицій:"
17
  "\n------\n"
18
  "{context_str}"
19
  "\n------\n"
20
+ "Запит: {query_str}\n"
21
+ "Відповідь: "
 
22
  )
23
 
24
+
25
+
26
  CITATION_REFINE_TEMPLATE = PromptTemplate(
27
+ "Будь ласка, надайте відповідь, базуючись виключно на наданих правових позиціях Верховного Суду. "
28
+ "При посиланні на інформацію з джерела, цитуйте відповідне джерело, використовуючи його номер у квадратних дужках: [lp_id]. "
29
+ "Кожна відповідь повинна містити щонайменше одне посилання на джерело. "
30
+ "Цитуйте джерело лише тоді, коли ви явно на нього посилаєтеся. "
31
+ "Якщо жодне з джерел не є корисним, зазначте це. "
32
+ "Приклад:\n"
 
 
 
33
  "Source 1:\n"
34
+ "Суд постановив, що договірні зобов’язання мають виконуватись, навіть якщо умови є нечіткими.\n"
35
  "Source 2:\n"
36
+ "У випадку непередбачених обставин, договори можуть бути анульовані за певних умов.\n"
37
+ "Запит: Чи може договір бути анульований через непередбачені обставини?\n"
38
+ "Існуюча відповідь: Договір може бути анульований за певних умов у разі настання непередбачених обставин [2].\n"
39
+ "Тепер ваша черга. "
40
+ "Ми надали існуючу відповідь: {existing_answer}"
41
+ "Нижче наведено кілька пронумерованих правових позицій. "
42
+ "Використовуйте їх для уточнення існуючої відповіді. "
43
+ "Якщо надані правові джерела не є корисними, повторіть існуючу відповідь."
44
+ "\nПочинайте уточнення!"
45
  "\n------\n"
46
  "{context_msg}"
47
  "\n------\n"
48
+ "Запит: {query_str}\n"
49
+ "Відповідь: "
50
+ )
51
+
52
+
53
+
54
+ # CITATION_QA_TEMPLATE = PromptTemplate(
55
+ # "You are a qualified lawyer. "
56
+ # "Please provide a legal analysis based solely on the provided legal precedents and positions. "
57
+ # "When referencing a legal precedent or position, "
58
+ # "cite the appropriate source(s) using their corresponding numbers. "
59
+ # "Every answer should include at least one legal source citation relevant to the query. "
60
+ # "Only cite a source when you are explicitly referencing it. "
61
+ # "If none of the legal precedents or positions are helpful, you should indicate that. "
62
+ # "Use only the Ukrainian language to answer. "
63
+ # "For example:\n"
64
+ # "Source 1:\n"
65
+ # "The court ruled that contractual obligations must be fulfilled even if the terms are vague.\n"
66
+ # "Source 2:\n"
67
+ # "In case of unforeseen circumstances, contracts may be voided under certain conditions.\n"
68
+ # "Query: Can a contract be voided due to unforeseen circumstances?\n"
69
+ # "Answer: A contract may be voided under certain conditions if unforeseen circumstances arise [2]. "
70
+ # "Now it's your turn. Below are several numbered legal sources and precedents (legal positions):"
71
+ # "\n------\n"
72
+ # "{context_str}"
73
+ # "\n------\n"
74
+ # "New legal issue: {query_str}\n"
75
+ # "User question: {question}\n"
76
+ # "Answer: "
77
+ # )
78
+
79
+
80
+ # CITATION_REFINE_TEMPLATE = PromptTemplate(
81
+ # "You are a qualified lawyer. "
82
+ # "Please refine the legal analysis based solely on the provided legal precedents and positions. "
83
+ # "When referencing a legal precedent or position, "
84
+ # "cite the appropriate source(s) using their corresponding numbers. "
85
+ # "Every refined answer should include at least one relevant legal source citation. "
86
+ # "Only cite a source when you are explicitly referencing it. "
87
+ # "If none of the legal precedents or positions are helpful, you should repeat the existing answer. "
88
+ # "Use only the Ukrainian language to answer."
89
+ # "For example:\n"
90
+ # "Source 1:\n"
91
+ # "The court ruled that contractual obligations must be fulfilled even if the terms are vague.\n"
92
+ # "Source 2:\n"
93
+ # "In case of unforeseen circumstances, contracts may be voided under certain conditions.\n"
94
+ # "Query: Can a contract be voided due to unforeseen circumstances?\n"
95
+ # "Existing answer: A contract may be voided under certain conditions if unforeseen circumstances arise [2].\n"
96
+ # "Now it's your turn. "
97
+ # "We have provided an existing legal analysis: {existing_answer}"
98
+ # "Below are several numbered legal sources and precedents. "
99
+ # "Use them to refine the existing legal answer. "
100
+ # "If the provided legal sources are not helpful, you will repeat the existing answer."
101
+ # "\nBegin refining!"
102
+ # "\n------\n"
103
+ # "{context_msg}"
104
+ # "\n------\n"
105
+ # "New legal issue: {query_str}\n"
106
+ # "User question: {question}\n"
107
+ # "Answer: "
108
+ # )