A simple client to fetch prompts from Prompt Hub using its REST API.
First step is obviously installation:
pip install prompthub-py
Then you can import Prompt
, that class is all you're going to need.
import prompthub
# To load from a JSON file
p = prompthub.from_json("./path/to/my/prompt.json")
# To load from a YAML file
p = prompthub.from_yaml("./path/to/my/prompt.yaml")
# To load from Prompt Hub
p = prompthub.fetch("deepset/question-answering")
# To get the prompt text (see Prompt class)
p.text
If you want to use a different Prompt Hub you must set the PROMPTHUB_MAIN_ENDPOINT
environment variable to your main endpoint.
If the environment variable is not set the default api.prompthub.deepset.ai
will be used.
To run tests locally first install dev dependencies, we use poetry
to manage our dependencies:
poetry install --with=dev
Run Prompt Hub locally with a set of fake prompts:
docker run -p80:80 --volume $PWD/test/fake_prompts:/prompts deepset/prompthub
And then run tests:
poetry run pytest test