# Configuration

Before running Vigil, you'll want to modify the `conf/server.conf` file and make sure all settings are to your liking.

To get started, you might want to:

* Add your OpenAI API key to the **`[embedding]`** section
  * (or) set your Sentence Transformers **`model`**
* Specify your desired scanner modules in the **`[scanners]`** section
  * **`input_scanners`** accepts comma separated list of scanner names&#x20;
    * **valid scanners:** yara, transformer, vectordb, sentiment
  * **`output_scanners`** accepts a comma separated list of scanner names
    * **valid scanners:** similarity, sentiment
* Set  **`db_dir`**  to `<vigil repo>/data/vdb`&#x20;
* Set **`rules_dir`** to `<vigil repo>/data/yara`&#x20;
* Adjust similarity **`threshold`** setting in the **`scanner:vectordb`** section (optional)
* Enable auto-updating the vector database with detected prompts (optional)
  * **`auto_update = true`**
  * **`update_threshold = 3`** number of matching scanners required to add submitted prompt back to the vector database

**Sample config file**

```ini
[main]
use_cache = true
cache_max = 500

[embedding]
auto_update = true
update_threshold = 3
model = openai
openai_api_key = sk-XXXXX
openai_model = text-embedding-ada-002

[scanners]
input_scanners = transformer,vectordb,sentiment,yara
output_scanners = similarity,sentiment

[scanner:yara]
rules_dir = /home/vigil/vigil-llm/data/yara

[scanner:vectordb]
collection = data-openai
threshold = 0.4
db_dir = /home/vigil/vigil-llm/data/vdb
n_results = 5

[scanner:transformer]
model = deepset/deberta-v3-base-injection
threshold = 0.98

[scanner:similarity]
threshold = 0.4

[scanner:sentiment]
threshold = 0.7

```
