πPython library
Use Vigil as a Python library
Vigil can also be used within your own Python application as a library. This allows you to access the input and output scanners, canary token, and vector database functionality.
The Vigil library must be installed via
pip install -e .
Then import the Vigil
class and pass it your config file.
Initialize scanners
from vigil.vigil import Vigil
app = Vigil.from_config('conf/openai.conf')
Pass your configuration file to Vigil.from_config.
This exposes the following functions:
input_scanner.perform_scan(prompt)
output_scanner.perform_scan(prompt, response)
canary_tokens.add
canary_tokens.check
vectordb.add_texts
vectordb.add_embeddings
embedder.generate
Scan Prompts and Responses
app.input_scanner.perform_scan(
input_prompt="prompt goes here"
)
app.output_scanner.perform_scan(
input_prompt="prompt goes here",
input_resp="LLM response goes here"
)
The scanners return a Python dictionary with the full results and any metadata.
Canary Tokens
updated_prompt = app.canary_tokens.add(
prompt=application_prompt, # prompt to add canary token to
always=always if always else False, # add suffix to always include canary
length=length if length else 16, # canary token length
header=header if header else '<-@!-- {canary} --@!->', # customize canary header
)
# canary_tokens.check() returns True if a canary is found
result = app.canary_tokens.check(prompt=llm_response)
Last updated