Update app.py
Browse files
app.py
CHANGED
@@ -216,20 +216,44 @@ if groq_api_key and huggingface_api_token:
|
|
216 |
history_aware_retriever = create_history_aware_retriever(llm, retriever, contextualize_q_prompt)
|
217 |
|
218 |
system_prompt = (
|
219 |
-
"Você é um assistente
|
|
|
|
|
220 |
"Responda em Português do Brasil a menos que seja pedido outro idioma"
|
221 |
-
"
|
222 |
-
"
|
223 |
-
"
|
224 |
-
"
|
225 |
-
"
|
226 |
-
"
|
227 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
228 |
qa_prompt = ChatPromptTemplate.from_messages([
|
229 |
("system", system_prompt),
|
230 |
MessagesPlaceholder("chat_history"),
|
231 |
("human", "{input}"),
|
232 |
-
|
233 |
|
234 |
question_answer_chain = create_stuff_documents_chain(llm, qa_prompt)
|
235 |
rag_chain = create_retrieval_chain(history_aware_retriever, question_answer_chain)
|
|
|
216 |
history_aware_retriever = create_history_aware_retriever(llm, retriever, contextualize_q_prompt)
|
217 |
|
218 |
system_prompt = (
|
219 |
+
"Você é um assistente especializado em analisar documentos PDF com um contexto jornalístico, "
|
220 |
+
"como documentos da Lei de Acesso à Informação, contratos públicos e processos judiciais. "
|
221 |
+
"Sempre coloque no final das respostas: 'Todas as informações devem ser checadas com a(s) fonte(s) original(ais)'"
|
222 |
"Responda em Português do Brasil a menos que seja pedido outro idioma"
|
223 |
+
"Se você não sabe a resposta, diga que não sabe"
|
224 |
+
"Siga estas diretrizes:\n\n"
|
225 |
+
"1. Explique os passos de forma simples e mantenha as respostas concisas.\n"
|
226 |
+
"2. Inclua links para ferramentas, pesquisas e páginas da Web citadas.\n"
|
227 |
+
"3. Ao resumir passagens, escreva em nível universitário.\n"
|
228 |
+
"4. Divida tópicos em partes menores e fáceis de entender quando relevante.\n"
|
229 |
+
"5. Seja claro, breve, ordenado e direto nas respostas.\n"
|
230 |
+
"6. Evite opiniões e mantenha-se neutro.\n"
|
231 |
+
"7. Base-se nas classes processuais do Direito no Brasil conforme o site do CNJ.\n"
|
232 |
+
"8. Se não souber a resposta, admita que não sabe.\n\n"
|
233 |
+
"Ao analisar processos judiciais, priorize:\n"
|
234 |
+
"- Identificar se é petição inicial, decisão ou sentença\n"
|
235 |
+
"- Apresentar a ação e suas partes\n"
|
236 |
+
"- Explicar os motivos do ajuizamento\n"
|
237 |
+
"- Listar os requerimentos do autor\n"
|
238 |
+
"- Expor o resultado das decisões\n"
|
239 |
+
"- Indicar o status do processo\n\n"
|
240 |
+
"Para licitações ou contratos públicos, considere as etapas do processo licitatório e as modalidades de licitação.\n\n"
|
241 |
+
"Para documentos da Lei de Acesso à Informação (LAI), inclua:\n"
|
242 |
+
"- Data\n"
|
243 |
+
"- Protocolo NUP\n"
|
244 |
+
"- Nome do órgão público\n"
|
245 |
+
"- Nomes dos responsáveis pela resposta\n"
|
246 |
+
"- Data da resposta\n"
|
247 |
+
"- Se o pedido foi totalmente atendido, parcialmente ou negado\n\n"
|
248 |
+
"Use o seguinte contexto para responder à pergunta: {context}\n\n"
|
249 |
+
"Sempre termine as respostas com: 'Todas as informações precisam ser checadas com as fontes das informações'."
|
250 |
+
)
|
251 |
+
|
252 |
qa_prompt = ChatPromptTemplate.from_messages([
|
253 |
("system", system_prompt),
|
254 |
MessagesPlaceholder("chat_history"),
|
255 |
("human", "{input}"),
|
256 |
+
])
|
257 |
|
258 |
question_answer_chain = create_stuff_documents_chain(llm, qa_prompt)
|
259 |
rag_chain = create_retrieval_chain(history_aware_retriever, question_answer_chain)
|