Se cambia el prompt tamplate de question_generator el cual generaba un error al volver a preguntar pues respondia en ingles.
This commit is contained in:
Binary file not shown.
@@ -9,6 +9,7 @@ import streamlit as st
|
||||
from dotenv import load_dotenv
|
||||
from langchain.chains import RetrievalQAWithSourcesChain, ConversationalRetrievalChain
|
||||
from langchain_community.llms import HuggingFaceEndpoint
|
||||
from langchain_community.embeddings import HuggingFaceEmbeddings
|
||||
|
||||
|
||||
class LangChainTools:
|
||||
@@ -33,6 +34,27 @@ class LangChainTools:
|
||||
|
||||
return self.embedding_model
|
||||
|
||||
def load_embedding_hf(self):
|
||||
"""Esta funcion carga un modelo de embedding de OpenAI
|
||||
|
||||
Returns:
|
||||
_type_: Retorno a un objetito de tipo embedding de OpenAI
|
||||
"""
|
||||
|
||||
huggingfacehub_api_token = "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"
|
||||
|
||||
model_name = "sentence-transformers/all-mpnet-base-v2"
|
||||
model_kwargs = {"device": "cpu"}
|
||||
encode_kwargs = {"normalize_embeddings": False}
|
||||
|
||||
self.embedding_model = HuggingFaceEmbeddings(
|
||||
model_name=model_name,
|
||||
model_kwargs=model_kwargs,
|
||||
encode_kwargs=encode_kwargs,
|
||||
)
|
||||
|
||||
return self.embedding_model
|
||||
|
||||
@st.cache_resource
|
||||
def create_vector_strore(
|
||||
_self, _docs_split: list, _file_name: str, _embedding_model
|
||||
@@ -96,10 +118,11 @@ class LangChainTools:
|
||||
"""
|
||||
# model_huggingface = "google/gemma-1.1-7b-it" # Es buena y funciona en espanol
|
||||
# model_huggingface = (
|
||||
# "google/gemma-1.1-2b-it" # Es buena y funciona en espanol funciona rapido
|
||||
# "google/gemma-1.1-2b-it" # Es buena y funciona en espanol funciona rapido
|
||||
# )
|
||||
# model_huggingface = 'tiiuae/falcon-7b-instruct'
|
||||
# model_huggingface = 'mistralai/Mistral-7B-Instruct-v0.2'
|
||||
# model_huggingface = "tiiuae/falcon-7b-instruct"
|
||||
# model_huggingface = "mistralai/Mistral-7B-Instruct-v0.2"
|
||||
# model_huggingface = 'mistralai/Mixtral-8x7B-Instruct-v0.1'
|
||||
huggingfacehub_api_token = "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"
|
||||
|
||||
model_huggingface = "mistralai/Mixtral-8x7B-Instruct-v0.1" # Es buena y funciona en espanol funciona rapido
|
||||
@@ -108,8 +131,8 @@ class LangChainTools:
|
||||
llm = HuggingFaceEndpoint(
|
||||
repo_id=model_huggingface,
|
||||
huggingfacehub_api_token=huggingfacehub_api_token,
|
||||
temperature=0.5,
|
||||
max_new_tokens=500,
|
||||
temperature=0.1,
|
||||
max_new_tokens=1000,
|
||||
)
|
||||
|
||||
return llm
|
||||
@@ -120,7 +143,7 @@ class LangChainTools:
|
||||
Returns:
|
||||
_type_: Retorno a un prompt template de LangChain.
|
||||
"""
|
||||
template = """Responde a la siguiente pregunta utilizando los documentos proporcionados y citando las fuentes relevantes entre corchetes []:
|
||||
template = """Responde en español la siguiente pregunta utilizando los documentos proporcionados y citando las fuentes relevantes entre corchetes []:
|
||||
|
||||
Pregunta: {question}
|
||||
|
||||
@@ -213,12 +236,21 @@ class LangChainTools:
|
||||
return_source_documents=True, # Devuelve los documentos fuente
|
||||
)
|
||||
|
||||
template = """Utiliza los siguientes fragmentos de contexto para responder la pregunta al final. Si no sabes la respuesta, simplemente di que no sabes, no intentes inventar una respuesta. La respuesta dala con un formateo de markdown. Responde a la pregunta siempre en español.
|
||||
|
||||
template = """Utiliza los siguientes fragmentos de contexto para responder en español la pregunta al final. Si no sabes la respuesta, simplemente di que no sabes, no intentes inventar una respuesta.
|
||||
|
||||
{context}
|
||||
|
||||
Pregunta: {question}
|
||||
Respuesta:"""
|
||||
|
||||
# template = """Utiliza los siguientes fragmentos de contexto como ejemplo para responder la pregunta al final. Organiza tu respuesta de manera clara y concisa, proporcionando información relevante y evitando divagaciones innecesarias.
|
||||
|
||||
# {context}
|
||||
|
||||
# Pregunta: {question}
|
||||
# Respuesta en español:"""
|
||||
|
||||
conversation.combine_docs_chain.llm_chain.prompt.template = template
|
||||
conversation.question_generator.prompt.template = "Dado el siguiente diálogo y una pregunta de seguimiento, reformula la pregunta de seguimiento para que sea una pregunta independiente, en su idioma original.\n\nHistorial del chat:\n{chat_history}\nPregunta de seguimiento: {question}\nPregunta independiente:"
|
||||
|
||||
return conversation
|
||||
|
||||
Reference in New Issue
Block a user