Skip to content

JuliaMerz/InjectionTester

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

InjectionTester (pre-alpha)

A terminal with test output from InjectionTester

InjectionTester is a framework for iteratively testing

Usage

  • InjectionTester uses Pantry as a backend to dynamically run LLMs. You can find it here. You'll need version 0.0.2 or later.
  • cargo install injection-tester
  • You'll need to run Pantry, the same way you'd run Docker to host containers.
  • To run against OpenAI targets you'll have to set Pantry's OpenAI key, which can be done in the UI or by setting OPENAI_API_KEY in Pantry's context.
  • The CLI will run all public and private configurations by default. You can use CLI flags to have it run only private configurations, or only named configurations. Private configurations are automatically detected by rust but ignored by git.

Current Status

Very early alpha.

Contributing

I'd like to include a broader set of LLMs and build out a larger number of vulnerabilities. If you use the framework to test out mitigation strategies.

Known Issues

Pantry currently saves your local LLM sessions so you can resume them later. This is a great features, except that your average LLM session is ~1.6GB (this is because rustformers/llm serializes the entire model state), and each run of InjectionTester will make potentially a double digit number of them.

You'll want to check ~/Library/Application Support/com.jmerz.pantry and clean out old sessions, stored in the folders beginning with llmrs- (don't worry about deleting LLMs, they're stores separately so external programs can access them).

About

Framework for large scale injection testing against configurable llms/attack-types/mitigations.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published