File size: 1,961 Bytes
7a1c35b
 
 
 
 
 
4d9df8e
7a1c35b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0f3e1b5
b2a1e67
 
 
 
 
bff3b9b
b2a1e67
 
 
bff3b9b
 
 
b2a1e67
7a1c35b
 
 
8f9985e
7a1c35b
 
 
8f9985e
 
 
5d5df93
10e69e7
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
"""
Constants for the Antibody Developability Benchmark
"""

import os
from huggingface_hub import HfApi
import pandas as pd

ASSAY_LIST = ["AC-SINS_pH7.4", "PR_CHO", "HIC", "Tm2", "Titer"]
ASSAY_RENAME = {
    "AC-SINS_pH7.4": "Self-association",
    "PR_CHO": "Polyreactivity",
    "HIC": "Hydrophobicity",
    "Tm2": "Thermostability",
    "Titer": "Titer",
}
ASSAY_DESCRIPTION = {
    "AC-SINS_pH7.4": "Self association by AC-SINS at pH 7.4",
    "PR_CHO": "Polyreactivity by bead-based method against CHO SMP and ovalbumin",
    "HIC": "Hydrophobicity by HIC",
    "Tm2": "Thermostability by nanoDSF",
    "Titer": "Titer by Valita",
}
ASSAY_EMOJIS = {
    "AC-SINS_pH7.4": "🧲",
    "PR_CHO": "🎯",
    "HIC": "💧",
    "Tm2": "🌡️",
    "Titer": "🧪",
}

# Input CSV file requirements
REQUIRED_COLUMNS: list[str] = [
    "antibody_name",
    "vh_protein_sequence",
    "vl_protein_sequence",
]
# Cross validation
CV_COLUMN = "hierarchical_cluster_IgG_isotype_stratified_fold"
# Example files
EXAMPLE_FILE_DICT = {
    "GDPa1": "data/example-predictions.csv",
    "GDPa1_cross_validation": "data/example-predictions-cv.csv",
}
ANTIBODY_NAMES_DICT = {
    "GDPa1": pd.read_csv(EXAMPLE_FILE_DICT["GDPa1"])["antibody_name"].tolist(),
    "GDPa1_cross_validation": pd.read_csv(EXAMPLE_FILE_DICT["GDPa1_cross_validation"])[
        "antibody_name"
    ].tolist(),
}

# Huggingface API
TOKEN = os.environ.get("HF_TOKEN")
CACHE_PATH = os.getenv("HF_HOME", ".")
API = HfApi(token=TOKEN)

# Huggingface repos
ORGANIZATION = "ginkgo-datapoints"
SUBMISSIONS_REPO = f"{ORGANIZATION}/abdev-bench-submissions"
RESULTS_REPO = f"{ORGANIZATION}/abdev-bench-results"

# Leaderboard dataframes
LEADERBOARD_RESULTS_COLUMNS = ["model", "assay", "spearman", "dataset", "user"]  # The columns expected from the results dataset
LEADERBOARD_DISPLAY_COLUMNS = ["model", "property", "spearman", "dataset", "user"]  # After changing assay to property (pretty formatting)