const port = 8000;
const whitelist = ['127.0.0.1']; //Example for add several IP in whitelist: ['127.0.0.1', '192.168.0.10']
const whitelistMode = true; //Disabling enabling the ip whitelist mode. true/false
const basicAuthMode = false; //Toggle basic authentication for endpoints.
const basicAuthUser = {username: "user", password: "password"}; //Login credentials when basicAuthMode is true.
const disableThumbnails = false; //Disables the generation of thumbnails, opting to use the raw images instead
const autorun = true; //Autorun in the browser. true/false
const enableExtensions = true; //Enables support for TavernAI-extras project
const listen = true; // If true, Can be access from other device or PC. otherwise can be access only from hosting machine.
const allowKeysExposure = false; // If true, private API keys could be fetched to the frontend.
const skipContentCheck = false; // If true, no new default content will be delivered to you.
const thumbnailsQuality = 95; // Quality of thumbnails. 0-100
const disableChatBackup = false; // Disables the backup of chat logs to the /backups folder

// If true, Allows insecure settings for listen, whitelist, and authentication.
// Change this setting only on "trusted networks". Do not change this value unless you are aware of the issues that can arise from changing this setting and configuring a insecure setting.
const securityOverride = false;

// Additional settings for extra modules / extensions
const extras = {
    // Disables auto-download of models from the HuggingFace Hub.
    // You will need to manually download the models and put them into the /cache folder.
    disableAutoDownload: false,
    // Text classification model for sentiment analysis. HuggingFace ID of a model in ONNX format.
    classificationModel: 'Cohee/distilbert-base-uncased-go-emotions-onnx',
    // Image captioning model. HuggingFace ID of a model in ONNX format.
    captioningModel: 'Xenova/vit-gpt2-image-captioning',
    // Feature extraction model. HuggingFace ID of a model in ONNX format.
    embeddingModel: 'Xenova/all-mpnet-base-v2',
    // GPT-2 text generation model. HuggingFace ID of a model in ONNX format.
    promptExpansionModel: 'Cohee/fooocus_expansion-onnx',
};

// Request overrides for additional headers
// Format is an array of objects:
// { hosts: [ "<url>" ], headers: { <header>: "<value>" } }
const requestOverrides = [];

module.exports = {
    port,
    whitelist,
    whitelistMode,
    basicAuthMode,
    basicAuthUser,
    autorun,
    enableExtensions,
    listen,
    disableThumbnails,
    allowKeysExposure,
    securityOverride,
    skipContentCheck,
    requestOverrides,
    thumbnailsQuality,
    extras,
    disableChatBackup,
};
