"Mejore" su experiencia para aumentar sus posibilidades de aterrizar entrevistas, al tiempo que ahorra un tiempo valioso para proyectos secundarios y aprendizaje.
Este repositorio busca aprovechar las capacidades de ChatGPT para generar currículums más cautivadores y de descripción de trabajo a partir de su currículum base. Me di cuenta de que la tasa de conversión de enviar currículums a la obtención de entrevistas era extremadamente baja (alrededor del 2-3% por cada 100 solicitudes). Mejorar sus posibilidades de una entrevista requiere adaptar su currículum para que coincida con la descripción del trabajo (por ejemplo, incorporar palabras clave relevantes como 'Python' para un rol de desarrollador de Python). Encontré que esta tarea de "reanudación" es extremadamente molesta y sin sentido. Como desarrollador de software, es probable que prefiera dedicar su tiempo a crear su próximo proyecto impactante para abordar los problemas del mundo real, utilizando sus habilidades de ingeniería de software para mejorar la vida de los demás.
En consecuencia, estoy motivado para desarrollar una solución que amplifique la probabilidad de obtener una entrevista mientras preserva el valioso tiempo de todos los desarrolladores.
Descubrí que el modo automático no hizo un buen trabajo. La mayoría de las veces los puntos de bala generados no tenían sentido. Por lo tanto, por el momento en que creé una aplicación DASH para controlar su currículum. Simplemente uso la interfaz web ChatGPT para generar puntos de bala y solo almacené esas buenas generaciones en mi base de datos. Puede usar add experience
en la aplicación para hacerlo.
Use poesía para configurar el entorno
poetry install
.env
con referencia a .env.sample
#
python seed.py
# add this line in your .zshrc / .bashrc
export OPENAI_API_KEY= " your-openai-api-key "
python generate_resume.py --resume your-base-resume-json.json --jd your-job-description.txt
Última actualización: 2023-11-17
Este agente analiza una descripción de trabajo dada para extraer información clave: el título del trabajo, las habilidades requeridas y otras palabras clave importantes. El agente utilizará descripciones de trabajo como entrada y formatear los datos extraídos en un dict.
Job_description : STR, la descripción del trabajo real.
Este agente mejora un conjunto de experiencias de trabajo al incorporar palabras clave específicas derivadas de una descripción del trabajo. El objetivo es hacer que las experiencias se adapten más a la descripción del trabajo proporcionada. El agente revisará las experiencias del usuario, seleccionará palabras clave relevantes y luego reescribe esas experiencias con las palabras clave elegidas.
Experiencias : STR, las experiencias laborales del usuario. Palabras clave : lista, la lista de palabras clave extraídas de una descripción de trabajo
Este agente revisa un conjunto de experiencias laborales al incluir ciertas habilidades requeridas. El agente tiene como objetivo adaptar las experiencias para adaptarse mejor a los requisitos de trabajo al incluir habilidades relevantes. El agente revisará las experiencias, seleccionará las habilidades más relevantes y reescribirá las experiencias con estas habilidades incluidas.
Experiencias : STR, las experiencias laborales del usuario. Habilidades : STR, la lista de habilidades requeridas.
Este agente mejora las experiencias de trabajo proporcionadas a partir del historial de trabajo de un usuario. El objetivo es refinar estas experiencias de acuerdo con los criterios especificados para reflejar mejor los logros y habilidades del usuario. El agente asegura que las experiencias estén orientadas a la acción, el deber laboral claro, incluido habilidades y centrados en el logro con resultados cuantificables.
Experiencias : STR, las experiencias laborales del usuario.
El engine_v1.py
emplea un sistema de múltiples agentes para refinar el currículum de un usuario de acuerdo con una descripción de trabajo determinada. El método start()
encapsula la lógica de construir el currículum y el método create_agents()
inicializa a todos los agentes. Así es como los agentes interactúan y contribuyen al proceso de mejora del currículum:
Todos los agentes se inicializan con la misma configuración LLM (modelo de idioma).
El JDParsingagent lee la descripción del trabajo y extrae detalles esenciales como habilidades y palabras clave requeridas.
Para cada experiencia laboral en el currículum base, el SkillenjectingAgent incorpora habilidades relevantes de la descripción del trabajo en la descripción de la experiencia laboral.
Posteriormente, el WordenEnyectingAngent KeyRegent incorpora palabras clave relevantes de la descripción del trabajo en la descripción mejorada de la experiencia laboral.
Por último, la experiencia en el rango de cita refina aún más las descripciones de la experiencia laboral al garantizar que estén orientadas a la acción, claras, inclusivas para habilidades y centradas en el logro con resultados cuantificables.
Las experiencias de trabajo actualizadas se recopilan y se utilizan para actualizar el currículum base original. Luego se emplea una función de utilidad create_resume()
para formatear el currículum actualizado en un archivo DOCX, que se guarda en la ruta del archivo de salida especificada.
Su comentarios sobre la calidad y efectividad de esta solución es muy apreciada. ¡Estoy ansioso por aprender y mejorar de sus ideas! Además, siéntase libre de hacer solicitudes de extracción, ¡colaboren para mejorar el proceso de contratación juntos!