Spaces:
Runtime error
Runtime error
File size: 2,723 Bytes
e814211 f8c21da e814211 f62b8c4 e814211 f62b8c4 e814211 f62b8c4 e814211 f62b8c4 e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f5bf147 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f8c21da e814211 f5bf147 f8c21da e814211 f8c21da f5bf147 f8c21da f5bf147 e814211 f8c21da e814211 f8c21da e814211 f8c21da f62b8c4 |
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 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 |
import pytest
import markdown
from bs4 import BeautifulSoup
from compliance_checks.intended_purpose import (
IntendedPurposeCheck, IntendedPurposeResult,
)
empty_template = """\
## Uses
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
[More Information Needed]
### Direct Use
[More Information Needed]
<!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
### Downstream Use [optional]
<!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
[More Information Needed]
### Out-of-Scope Use
<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
[More Information Needed]
"""
model_card_template = """\
## Uses
Some info...
### Direct Use
Some more info.
### Downstream Use [optional]
[More Information Needed]
### Out-of-Scope Use
Here is some info about out-of-scope uses...
"""
albert_base_v2 = """\
# ALBERT Base v2
## Intended uses & limitations
Here is some info about direct uses...
"""
distilbert_base_cased_distilled_squad = """\
# DistilBERT base cased distilled SQuAD
## Uses
This model can be used for question answering.
"""
distilroberta_base = """\
# Model Card for DistilRoBERTa base
# Uses
You can use the raw model for masked language modeling, but it's mostly intended to be fine-tuned on a downstream task.
"""
clip = """\
# Model Card: CLIP
## Model Use
Stuff.
### Intended Use
Stuff.
#### Primary intended uses
Stuff.
### Out-of-Scope Use Cases
Stuff.
"""
sentence_transformers = """\
# all-MiniLM-L6-v2
## Intended uses
Our model is intented to be used as a sentence and short paragraph encoder.
"""
bloom = """\
# BLOOM
## Intended Use
This model is being created in order to enable public research on large language models (LLMs).
"""
success_result = IntendedPurposeResult(
status=True
)
@pytest.mark.parametrize("card", [
model_card_template,
albert_base_v2,
distilbert_base_cased_distilled_squad,
distilroberta_base,
clip,
sentence_transformers,
bloom,
])
def test_run_checks(card):
model_card_html = markdown.markdown(card)
card_soup = BeautifulSoup(model_card_html, features="html.parser")
results = IntendedPurposeCheck().run_check(card_soup)
assert results == success_result
def test_fail_on_empty_template():
model_card_html = markdown.markdown(empty_template)
card_soup = BeautifulSoup(model_card_html, features="html.parser")
results = IntendedPurposeCheck().run_check(card_soup)
assert results == IntendedPurposeResult()
|