Skip to main content

An LLM-powered CLI that simulates job interviews based on your resume.

Project description

Smithers

An LLM-powered CLI that simulates job interviews based on your resume.

Example

pipx run smithers-llm [RESUME_PATH] --role=[ROLE]

Installation

With pip:

pip install -g smithers-llm

With pipx (automatically adds smithers to PATH):

pipx install smithers-llm

Please notice that the user is expected to run the model separately as well.

So far the only model supported is Llama3.1

You can easily self-host it with Ollama. After installing it, pull the model and keep it running on the background with the command below:

ollama run llama3.1

Usage

With smithers installed on the current env:

python -m smithers-llm [RESUME_PATH] --role=[ROLE]

With smithers installed globally and defined on PATH:

smithers-llm [RESUME_PATH] --role=[ROLE]

With pipx:

pipx run smithers-llm [RESUME_PATH] --role=[ROLE]

Learnings

  • LangChain
    • Structured Outputs
  • LangGraph
    • Human in the Loop
    • Checkpointer
  • Python packaging with SetupTools and Build
    • Differences between project configurations files such as the modern pyproject.toml and the battle-tested setup.py and setup.cfg
  • Publishing to PyPI and TestPyPI with Twine
  • Creating CLIs with Click
    • Handling different kinds of options: parameters and arguments
  • Experimenting with Jupyter Notebooks
    • Research whether it was worth commiting the notebooks, although they might be reasonable for documentation purposes, they weren't for the way I used them in this project, to scratch the general ideas up right in the beginning
  • Self-reflection if RAG was necessary here, the answer I came to was NO. The files are too small.
  • Creating a GitHub Pages workflow to publish project to PyPI on pushing tagged commits to GH.

Fun fact

The repo was named after a character from the show "The Simpsons".

Smithers conducts a job interview with Homer on the episode "I Married Marge".

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smithers_llm-1.0.10.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

smithers_llm-1.0.10-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file smithers_llm-1.0.10.tar.gz.

File metadata

  • Download URL: smithers_llm-1.0.10.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for smithers_llm-1.0.10.tar.gz
Algorithm Hash digest
SHA256 70b7a1d128a0c4addea21c32d1b6f663ea0af263a87b8b2277084434a455857a
MD5 eb55953caf255a1b6687b4188bf166e2
BLAKE2b-256 b42360f498cdbd44c964b148232ff9498d720f0be7d0b3f83b0551d66d234c94

See more details on using hashes here.

Provenance

The following attestation bundles were made for smithers_llm-1.0.10.tar.gz:

Publisher: publish-to-pypi.yml on Wenceslauu/smithers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file smithers_llm-1.0.10-py3-none-any.whl.

File metadata

  • Download URL: smithers_llm-1.0.10-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for smithers_llm-1.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3ef2c18b8e0b742e72a76ba4b34365caa791bfeb0539413ecc68177894e3e32b
MD5 214c2ab07c4612f6256027c3b5531216
BLAKE2b-256 4296bf5dba309bfb7a653b6912e366ca93825611955f8cbf7cb6d5ef7ca97b51

See more details on using hashes here.

Provenance

The following attestation bundles were made for smithers_llm-1.0.10-py3-none-any.whl:

Publisher: publish-to-pypi.yml on Wenceslauu/smithers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page