title: Secure Llm Leaderboard
emoji: 🥇
colorFrom: green
colorTo: indigo
sdk: gradio
app_file: app.py
pinned: true
license: apache-2.0
short_description: Security Performance Leaderboard
Start the configuration
Most of the variables to change for a default leaderboard are in src/env.py
(replace the path for your leaderboard) and src/about.py
(for tasks).
Results files should have the following format and be stored as json files:
{
"config": {
"model_dtype": "torch.float16", # or torch.bfloat16 or 8bit or 4bit
"model_name": "path of the model on the hub: org/model",
"model_sha": "revision on the hub",
},
"results": {
"task_name": {
"metric_name": score,
},
"task_name2": {
"metric_name": score,
}
}
}
Request files are created automatically by this tool.
If you encounter problem on the space, don't hesitate to restart it to remove the create eval-queue, eval-queue-bk, eval-results and eval-results-bk created folder.
Code logic for more complex edits
You'll find
- the main table' columns names and properties in
src/display/utils.py
- the logic to read all results and request files, then convert them in dataframe lines, in
src/leaderboard/read_evals.py
, andsrc/populate.py
- the logic to allow or filter submissions in
src/submission/submit.py
andsrc/submission/check_validity.py
Configuration
The project now uses a YAML configuration file (config.yaml
) for easier management of settings. Here's an explanation of the configuration values:
API and Token configurations
api_token
: Your API token for authentication. ReplaceYOUR_API_TOKEN_HERE
with your actual API token.queue_repo
: The repository used for the evaluation queue. ReplaceYOUR_QUEUE_REPO_HERE
with the actual repository name.
File paths
eval_requests_path
: The path where evaluation requests are stored. Default is./eval-queue
.eval_results_path
: The path where evaluation results are stored. Default is./eval-results
.
These paths are relative to the root of the project. The default values should work for most setups. If you need to use different directories, make sure to update these paths in your config.yaml
file and ensure the directories exist.
Important: After changing these paths, make sure to create the corresponding directories if they don't exist already.
To use these configuration values:
- Copy the
config.yaml.example
file toconfig.yaml
. - Replace the placeholder values in
config.yaml
with your actual configuration. - The application will automatically read these values from the
config.yaml
file.
Configuration
The project uses a flexible configuration system that allows for both local development and deployment:
For local development:
- Copy the
config.yaml.example
file toconfig.yaml
. - Replace the placeholder values in
config.yaml
with your actual configuration. - The application will automatically read these values from the
config.yaml
file.
- Copy the
For deployment (e.g., to Hugging Face):
- The
config.yaml
file is not required and should not be included in the repository. - Set the
HF_TOKEN
environment variable with your Hugging Face API token. - Other configuration values will use sensible defaults if not specified.
- The
Note: Make sure not to commit your config.yaml
file with sensitive information to version control. It is already added to the .gitignore
file to prevent accidental commits.