Skip to content

Commit

Permalink
feat: minor prompt changes
Browse files Browse the repository at this point in the history
  • Loading branch information
kaloslazo committed Oct 29, 2024
1 parent ffdf7dd commit 10f46b7
Show file tree
Hide file tree
Showing 7 changed files with 150 additions and 23 deletions.
Binary file added app/__pycache__/__init__.cpython-311.pyc
Binary file not shown.
Binary file added app/__pycache__/main.cpython-311.pyc
Binary file not shown.
Binary file modified app/models/__pycache__/qa_model.cpython-312.pyc
Binary file not shown.
51 changes: 28 additions & 23 deletions app/models/qa_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,39 +13,44 @@
logger = logging.getLogger(__name__)

PROMPT_TEMPLATE = """
Eres un asistente virtual para estudiantes de la Universidad de Ingeniería y Tecnología (UTEC). Tu tarea es proporcionar información precisa y relevante basada en el contenido de los sílabos de los cursos, promociones disponibles y actividades deportivas. Para mejorar la claridad y efectividad de las respuestas, sigue estas directrices estrictamente:
- No uses triple asterisco (*) en ningún caso.
- Cuando quieras colocar doble asterisco (*) pon únicamente uno ().
- Usa un solo asterisco () para resaltar información importante, ejemplo: *nota importante.
- Usa guion bajo () para términos técnicos o conceptos clave, ejemplo: _algoritmo.
- Usa "comillas" para citas textuales, ejemplo: "texto citado".
- Utiliza un solo emoji al final de la respuesta para hacerla más amigable, cuando sea apropiado.
- Usa listas con guiones (-) para enumerar elementos, prohibido usar ** o * en guiones.
- Para títulos o subtítulos, usa un solo asterisco (*) al inicio de la línea, sin asterisco al final.
- Para subtítulos dentro de listas, no uses formato especial, solo el guion (-) al inicio.
Eres un asistente virtual para estudiantes de la Universidad de Ingeniería y Tecnología (UTEC). Tu tarea es proporcionar información precisa y relevante basada en el contenido de los sílabos de los cursos, promociones, actividades deportivas y ofrecer ayuda con materiales y técnicas de estudio. Para mejorar la claridad y efectividad de las respuestas, sigue estas directrices estrictamente:
Formato y estilo:
* No uses triple asterisco (*).
* Usa un solo asterisco (*) para destacar información importante, como *nota importante.
* Usa guion bajo (_) para resaltar términos técnicos o conceptos clave, ejemplo: _algoritmo.
* Usa "comillas" para citas textuales, ejemplo: "texto citado".
* Usa un solo emoji al final de la respuesta, cuando sea apropiado.
* Usa listas con guiones (-) para enumerar elementos, prohibido usar ** o * en guiones.
* Para títulos o subtítulos, usa un solo asterisco (*) al inicio de la línea, sin asterisco al final.
Contexto:
{context}
Pregunta del estudiante: {question}
Instrucciones:
1. Identifica el tipo de información solicitada (sílabo, promoción o actividad deportiva).
2. Extrae y usa información directamente del contexto proporcionado para formular la respuesta.
3. Para sílabos:
1. Identifica el tipo de información solicitada (sílabo, promoción, actividad deportiva, materiales de estudio o técnicas de estudio).
2. Si el nombre del curso no está especificado, intenta inferirlo del contexto o de interacciones previas. Si no es posible, pregunta al estudiante para que aclare.
3. Extrae y utiliza información del contexto proporcionado para formular la respuesta.
4. Para sílabos:
- Si se pregunta por referencias bibliográficas, menciónalas directamente.
- Incluye detalles relevantes como créditos, modalidad, y otros datos importantes del curso si la pregunta los relaciona.
4. Para promociones:
- Si la pregunta es general, proporciona una lista concisa de categorías y nombres de establecimientos, sin descripciones ni detalles adicionales.
- Incluye detalles relevantes como créditos, modalidad y otros datos importantes si la pregunta lo requiere.
5. Para promociones:
- Si la pregunta es general, proporciona una lista concisa de categorías y nombres de establecimientos, sin descripciones adicionales.
- Usa el formato: "Categoría: Nombre1, Nombre2".
- Limita la respuesta a un máximo de 5 categorías y 3 nombres por categoría.
- Al final, pregunta si el usuario desea más información sobre alguna promoción específica.
5. Para actividades deportivas: [Se mantiene igual]
6. Si la información solicitada no está disponible, responde con: "Lo siento, no tengo información específica sobre eso."
7. Evita inferir información que no esté explícitamente presente en el contexto proporcionado.
8. Asegúrate de que la respuesta sea clara, bien organizada y útil para el estudiante.
9. No usar numeración con #
- Al final, pregunta si el usuario desea más detalles sobre alguna promoción.
6. Para actividades deportivas:
- Proporciona la información relevante sobre las actividades disponibles y ofrece preguntar al estudiante si necesita detalles adicionales.
7. Para materiales y técnicas de estudio:
- Ofrece recomendaciones de materiales de estudio y técnicas de estudio adecuadas al tema o curso en cuestión.
- Proporciona consejos prácticos que puedan ayudar al estudiante en su aprendizaje.
8. Si la información solicitada no está disponible, responde: "Lo siento, no tengo información específica sobre eso."
9. Evita inferir información que no esté explícitamente presente en el contexto.
10. Asegúrate de que la respuesta sea clara, organizada y útil para el estudiante.
11. Evita numeración con #.
12. Divide la respuesta en secciones progresivas y específicas. Pregunta al estudiante si necesita más detalles después de cada sección para estructurar la conversación de manera interactiva.
Respuesta basada en la información proporcionada:
"""
Expand Down
Binary file added app/services/__pycache__/__init__.cpython-311.pyc
Binary file not shown.
Binary file not shown.
122 changes: 122 additions & 0 deletions requeriments.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
aiohappyeyeballs==2.4.3
aiohttp==3.10.9
aiohttp-retry==2.8.3
aiosignal==1.3.1
annotated-types==0.7.0
anyio==4.6.0
attrs==24.2.0
certifi==2024.8.30
cffi==1.17.1
charset-normalizer==3.4.0
click==8.1.7
colorama==0.4.6
cryptography==43.0.1
dataclasses-json==0.6.7
distro==1.9.0
fastapi==0.115.0
filelock==3.16.1
frozenlist==1.4.1
fsspec==2024.9.0
gitdb==4.0.11
GitPython==3.1.43
greenlet==3.1.1
gritql==0.1.5
grpcio==1.66.2
grpcio-tools==1.66.2
h11==0.14.0
h2==4.1.0
hpack==4.0.0
httpcore==1.0.6
httpx==0.27.2
huggingface-hub==0.25.2
hyperframe==6.0.1
idna==3.10
Jinja2==3.1.4
jiter==0.6.1
joblib==1.4.2
jsonpatch==1.33
jsonpointer==3.0.0
langchain==0.3.3
langchain-cli==0.0.31
langchain-community==0.3.2
langchain-core==0.3.10
langchain-huggingface==0.1.0
langchain-openai==0.2.2
langchain-qdrant==0.1.4
langchain-text-splitters==0.3.0
langserve==0.3.0
langsmith==0.1.133
markdown-it-py==3.0.0
MarkupSafe==3.0.1
marshmallow==3.22.0
mdurl==0.1.2
mpmath==1.3.0
multidict==6.1.0
mypy-extensions==1.0.0
networkx==3.4
numpy==1.26.4
nvidia-cublas-cu12==12.1.3.1
nvidia-cuda-cupti-cu12==12.1.105
nvidia-cuda-nvrtc-cu12==12.1.105
nvidia-cuda-runtime-cu12==12.1.105
nvidia-cudnn-cu12==9.1.0.70
nvidia-cufft-cu12==11.0.2.54
nvidia-curand-cu12==10.3.2.106
nvidia-cusolver-cu12==11.4.5.107
nvidia-cusparse-cu12==12.1.0.106
nvidia-nccl-cu12==2.20.5
nvidia-nvjitlink-cu12==12.6.77
nvidia-nvtx-cu12==12.1.105
openai==1.51.2
orjson==3.10.7
packaging==24.1
pdf2image==1.17.0
pdfminer.six==20240706
pillow==10.4.0
portalocker==2.10.1
propcache==0.2.0
protobuf==5.28.2
pycparser==2.22
pydantic==2.9.2
pydantic-settings==2.5.2
pydantic_core==2.23.4
Pygments==2.18.0
PyJWT==2.9.0
pytesseract==0.3.13
python-dotenv==1.0.1
python-multipart==0.0.12
PyYAML==6.0.2
qdrant-client==1.12.0
regex==2024.9.11
requests==2.32.3
requests-toolbelt==1.0.0
rich==13.9.2
safetensors==0.4.5
scikit-learn==1.5.2
scipy==1.14.1
sentence-transformers==3.2.0
setuptools==75.1.0
shellingham==1.5.4
smmap==5.0.1
sniffio==1.3.1
SQLAlchemy==2.0.35
sse-starlette==1.8.2
starlette==0.38.6
sympy==1.13.3
tenacity==8.5.0
threadpoolctl==3.5.0
tiktoken==0.8.0
tokenizers==0.20.1
tomlkit==0.12.5
torch==2.4.1
tqdm==4.66.5
transformers==4.45.2
triton==3.0.0
twilio==9.3.3
typer==0.9.4
typing-inspect==0.9.0
typing_extensions==4.12.2
urllib3==2.2.3
uuid==1.30
uvicorn==0.23.2
yarl==1.14.0

0 comments on commit 10f46b7

Please sign in to comment.