File size: 1,292 Bytes
c726497
8110fce
 
3a013b1
 
 
 
 
 
c726497
 
 
3a013b1
 
 
 
 
 
 
 
 
c726497
 
 
 
 
3a013b1
 
c726497
 
 
3a013b1
 
c726497
 
 
3a013b1
 
c726497
 
 
 
 
 
 
 
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
def model_hyperlink(link, model_name):
    if model_name == "":
        return model_name
    style = (
        "color: var(--link-text-color); "
        "text-decoration: underline;"
        "text-decoration-style: dotted;"
    )
    return f'<a target="_blank" href="{link}" style="{style}">{model_name}</a>'


def make_clickable_model(model_name):
    if not isinstance(model_name, str):
        model_name = str(model_name)

    model_name = model_name.strip()

    # Only convert valid Hugging Face repository paths (org/model) into links.
    if "/" not in model_name or " " in model_name:
        return model_name

    link = f"https://huggingface.co/{model_name}"
    return model_hyperlink(link, model_name)


def styled_error(error):
    style = "color: red; font-size: 20px; text-align: center;"
    return f"<p style='{style}'>{error}</p>"


def styled_warning(warn):
    style = "color: orange; font-size: 20px; text-align: center;"
    return f"<p style='{style}'>{warn}</p>"


def styled_message(message):
    style = "color: green; font-size: 20px; text-align: center;"
    return f"<p style='{style}'>{message}</p>"


def has_no_nan_values(df, columns):
    return df[columns].notna().all(axis=1)


def has_nan_values(df, columns):
    return df[columns].isna().any(axis=1)