wlmbrown commited on
Commit
bde8711
·
1 Parent(s): 78f0286

new requirements added to Project CC and Data CC

Browse files
Files changed (4) hide show
  1. compliance_analysis.py +114 -8
  2. data_cc.yaml +60 -20
  3. model_cc.yaml +42 -1
  4. project_cc.yaml +12 -3
compliance_analysis.py CHANGED
@@ -1,5 +1,5 @@
1
  import yaml
2
- from utils import set_type, set_operator_role_and_location, set_eu_market_status, check_within_scope, check_prohibited
3
 
4
  # Create some variables we will use throughout our analysis
5
 
@@ -25,6 +25,8 @@ project_variables = {
25
  }
26
  }
27
 
 
 
28
  def run_compliance_analysis_on_project(project_cc_yaml):
29
 
30
  # Determine project type (AI system vs. GPAI model) as well as operator type. We will use these for different things.
@@ -33,16 +35,17 @@ def run_compliance_analysis_on_project(project_cc_yaml):
33
  set_eu_market_status(project_variables, project_cc_yaml)
34
 
35
  # Check if the project is within scope of the Act. If it's not, the analysis is over.
36
- if check_within_scope(project_variables, project_cc_yaml):
37
  msg = ("Project is within the scope of Act. Let's continue...")
38
  else:
39
  msg = ("Project is not within the scope of what is regulated by the Act.")
40
- return msg
41
-
42
- # Check for prohibited practices. If any exist, the analysis is over.
43
- if check_prohibited(project_variables, project_cc_yaml) == True:
44
- msg = ("Project is non-compliant due to a prohibited practice.")
45
- return msg
 
46
 
47
  # If project is high-risk AI system, check that is has met all the requirements for such systems:
48
 
@@ -50,6 +53,8 @@ def run_compliance_analysis_on_project(project_cc_yaml):
50
 
51
  # Do this by examining the Project CC
52
 
 
 
53
  for key, value in project_cc_yaml['risk_management_system']:
54
  if not value:
55
  msg = ("Because of project-level characteristics, this high-risk AI system fails the risk management requirements under Article 9.")
@@ -111,6 +116,107 @@ def run_compliance_analysis_on_model(model_cc_yaml):
111
 
112
  return msg
113
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
 
115
  # # If the project is a GPAI model, check that is has met all the requirements for such systems:
116
 
 
1
  import yaml
2
+ from utils import set_type, set_operator_role_and_location, set_eu_market_status, check_within_scope
3
 
4
  # Create some variables we will use throughout our analysis
5
 
 
25
  }
26
  }
27
 
28
+ project_intended_purpose = None
29
+
30
  def run_compliance_analysis_on_project(project_cc_yaml):
31
 
32
  # Determine project type (AI system vs. GPAI model) as well as operator type. We will use these for different things.
 
35
  set_eu_market_status(project_variables, project_cc_yaml)
36
 
37
  # Check if the project is within scope of the Act. If it's not, the analysis is over.
38
+ if check_within_scope(project_cc_yaml):
39
  msg = ("Project is within the scope of Act. Let's continue...")
40
  else:
41
  msg = ("Project is not within the scope of what is regulated by the Act.")
42
+
43
+ # # Check for prohibited practices. If any exist, the analysis is over.
44
+ # if check_prohibited(project_cc_yaml) == True:
45
+ # print("Project contains prohibited practices and is therefore non-compliant.")
46
+ # msg = ("Project is non-compliant due to a prohibited practice.")
47
+ # else:
48
+ # print("Project does not contain prohibited practies. Let's continue...")
49
 
50
  # If project is high-risk AI system, check that is has met all the requirements for such systems:
51
 
 
53
 
54
  # Do this by examining the Project CC
55
 
56
+ # WE HAVE TO ADD A CONDITION THAT APPLIES THESE RULES BELOW ONLY IF operator_role == provider
57
+
58
  for key, value in project_cc_yaml['risk_management_system']:
59
  if not value:
60
  msg = ("Because of project-level characteristics, this high-risk AI system fails the risk management requirements under Article 9.")
 
116
 
117
  return msg
118
 
119
+ def_check_intended_use_aligned(): # We want to run this function for everything classified as a high_risk_ai_system
120
+ # We also need to run it for all
121
+
122
+ # Add any of the intended purposes of the overall project to a set of intended purposes
123
+
124
+ if project_cc_yaml['high_risk_ai_system']['safety_component'] == True:
125
+ intended_purpose = "safety_component"
126
+ if project_cc_yaml['high_risk_ai_system']['product_regulated_machinery'] == True:
127
+ intended_purpose = "product_regulated_machinery"
128
+ if project_cc_yaml['high_risk_ai_system']['product_regulated_toy'] == True:
129
+ intended_purpose = "product_regulated_toy"
130
+ if project_cc_yaml['high_risk_ai_system']['product_regulated_watercraft'] == True:
131
+ intended_purpose = "product_regulated_watercraft"
132
+ if project_cc_yaml['high_risk_ai_system']['biometric_categorization'] == True:
133
+ intended_purpose = "biometric_categorization"
134
+ if project_cc_yaml['high_risk_ai_system']['emotion_recognition'] == True:
135
+ intended_purpose = "emotion_recognition"
136
+ if project_cc_yaml['high_risk_ai_system']['critical_infrastructure'] == True:
137
+ intended_purpose = "critical_infrastructure"
138
+ if project_cc_yaml['high_risk_ai_system']['admission'] == True:
139
+ intended_purpose = "admission"
140
+ if project_cc_yaml['high_risk_ai_system']['recruitment'] == True:
141
+ intended_purpose = "recruitment"
142
+ if project_cc_yaml['high_risk_ai_system']['public_assistance'] == True:
143
+ intended_purpose = "public_assistance"
144
+ if project_cc_yaml['high_risk_ai_system']['victim_assessment'] == True:
145
+ intended_purpose = "victim_assessment"
146
+ if project_cc_yaml['high_risk_ai_system']['polygraph'] == True:
147
+ intended_purpose = "polygraph"
148
+ if project_cc_yaml['high_risk_ai_system']['judicial'] == True:
149
+ intended_purpose = "judicial"
150
+
151
+ # For each Data CC, put the intended uses in a set and then make sure the Project's intended use is in the set
152
+
153
+ dataset_intended_purpose = ()
154
+
155
+ if data_cc_yaml['intended_purpose']['safety_component'] == True:
156
+ dataset_intended_purpose.add("safety_component")
157
+ if data_cc_yaml['intended_purpose']['product_regulated_machinery'] == True:
158
+ dataset_intended_purpose.add("product_regulated_machinery")
159
+ if data_cc_yaml['intended_purpose']['product_regulated_toy'] == True:
160
+ dataset_intended_purpose.add("product_regulated_toy")
161
+ if data_cc_yaml['intended_purpose']['product_regulated_watercraft'] == True:
162
+ dataset_intended_purpose.add("product_regulated_watercraft")
163
+ if data_cc_yaml['intended_purpose']['biometric_categorization'] == True:
164
+ dataset_intended_purpose.add("biometric_categorization")
165
+ if data_cc_yaml['intended_purpose']['emotion_recognition'] == True:
166
+ dataset_intended_purpose.add("emotion_recognition")
167
+ if data_cc_yaml['intended_purpose']['critical_infrastructure'] == True:
168
+ dataset_intended_purpose.add("critical_infrastructure")
169
+ if data_cc_yaml['intended_purpose']['admission'] == True:
170
+ dataset_intended_purpose.add("admission")
171
+ if data_cc_yaml['intended_purpose']['recruitment'] == True:
172
+ dataset_intended_purpose.add("recruitment")
173
+ if data_cc_yaml['intended_purpose']['public_assistance'] == True:
174
+ dataset_intended_purpose.add("public_assistance")
175
+ if data_cc_yaml['intended_purpose']['victim_assessment'] == True:
176
+ dataset_intended_purpose.add("victim_assessment")
177
+ if data_cc_yaml['intended_purpose']['polygraph'] == True:
178
+ dataset_intended_purpose.add("polygraph")
179
+ if data_cc_yaml['intended_purpose']['judicial'] == True:
180
+ dataset_intended_purpose.add("judicial")
181
+
182
+ if project_intended_purpose not in dataset_intended_purpose:
183
+ print("You are not compliant")
184
+
185
+ # Now do the exact same thing for all models
186
+
187
+ model_intended_purpose = ()
188
+
189
+ if model_cc_yaml['intended_purpose']['safety_component'] == True:
190
+ dataset_intended_purpose.add("safety_component")
191
+ if model_cc_yaml['intended_purpose']['product_regulated_machinery'] == True:
192
+ dataset_intended_purpose.add("product_regulated_machinery")
193
+ if model_cc_yaml['intended_purpose']['product_regulated_toy'] == True:
194
+ dataset_intended_purpose.add("product_regulated_toy")
195
+ if model_cc_yaml['intended_purpose']['product_regulated_watercraft'] == True:
196
+ dataset_intended_purpose.add("product_regulated_watercraft")
197
+ if model_cc_yaml['intended_purpose']['biometric_categorization'] == True:
198
+ dataset_intended_purpose.add("biometric_categorization")
199
+ if model_cc_yaml['intended_purpose']['emotion_recognition'] == True:
200
+ dataset_intended_purpose.add("emotion_recognition")
201
+ if model_cc_yaml['intended_purpose']['critical_infrastructure'] == True:
202
+ dataset_intended_purpose.add("critical_infrastructure")
203
+ if model_cc_yaml['intended_purpose']['admission'] == True:
204
+ dataset_intended_purpose.add("admission")
205
+ if model_cc_yaml['intended_purpose']['recruitment'] == True:
206
+ dataset_intended_purpose.add("recruitment")
207
+ if model_cc_yaml['intended_purpose']['public_assistance'] == True:
208
+ dataset_intended_purpose.add("public_assistance")
209
+ if model_cc_yaml['intended_purpose']['victim_assessment'] == True:
210
+ dataset_intended_purpose.add("victim_assessment")
211
+ if model_cc_yaml['intended_purpose']['polygraph'] == True:
212
+ dataset_intended_purpose.add("polygraph")
213
+ if model_cc_yaml['intended_purpose']['judicial'] == True:
214
+ dataset_intended_purpose.add("judicial")
215
+
216
+ if project_intended_purpose not in dataset_intended_purpose:
217
+ print("You are not compliant")
218
+
219
+
220
 
221
  # # If the project is a GPAI model, check that is has met all the requirements for such systems:
222
 
data_cc.yaml CHANGED
@@ -1,6 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  data_and_data_governance:
2
  data_governance: # Art. 10(1)-(2)
3
- verbose: 'The dataset has been subject to data governance and management practices'
4
  value: !!bool false
5
  design_choices: # Art. 10(2)(a)
6
  verbose: 'The dataset has been subject to data governance and management practices as regards its relevant design choices'
@@ -106,22 +147,21 @@ quality_management_system: # Art. 17(1)(f)
106
  value: !!bool false
107
 
108
  gpai_requirements: # Art. 53(1); Annex XI(2)(c)
109
- gpai_requirements:
110
- data_type:
111
- verbose: 'Documentation for the dataset is available that contains the type of data'
112
- value: !!bool false
113
- data_provenance:
114
- verbose: 'Documentation for the dataset is available that contains the provenance of data'
115
- value: !!bool false
116
- data_curation:
117
- verbose: 'Documentation for the dataset is available that contains the curation methodologies (e.g. cleaning, filtering, etc.)'
118
- value: !!bool false
119
- data_number:
120
- verbose: 'Documentation for the dataset is available that contains the number of data points'
121
- value: !!bool false
122
- data_scope:
123
- verbose: 'Documentation for the dataset is available that contains the number of data scope and main characteristics'
124
- value: !!bool false
125
- data_origin:
126
- verbose: 'Documentation for the dataset is available that contains information on how the data was obtained and selected as well as all other measures to detect the unsuitability of data sources and methods to detect identifiable biases'
127
- value: !!bool false
 
1
+ intended_purpose:
2
+ safety_component: # Art. 6(1)(a)
3
+ verbose: 'This dataset is appropriate to use for AI projects involving product safety components'
4
+ value: !!bool false
5
+ product_regulated_machinery: # Art. 6(1)(b); Annex I
6
+ verbose: 'This dataset is appropriate to use for AI projects involving products covered by Directive 2006/42/EC of the European Parliament and of the Council of 17 May 2006 on machinery, and amending Directive 95/16/EC (OJ L 157, 9.6.2006, p. 24) [as repealed by the Machinery Regulation]'
7
+ value: !!bool false
8
+ product_regulated_toy: # Art. 6(1)(b); Annex I
9
+ verbose: 'This dataset is appropriate to use for AI projects involving products covered by Directive 2009/48/EC of the European Parliament and of the Council of 18 June 2009 on the safety of toys (OJ L 170, 30.6.2009, p. 1)'
10
+ value: !!bool false
11
+ product_regulated_watercraft: # Art. 6(1)(b); Annex I
12
+ verbose: 'This dataset is appropriate to use for AI projects involving products covered by Directive 2013/53/EU of the European Parliament and of the Council of 20 November 2013 on recreational craft and personal watercraft and repealing Directive 94/25/EC (OJ L 354, 28.12.2013, p. 90)'
13
+ value: !!bool false
14
+ biometric_categorization: # Art. 6(2); Annex III(1)(b)
15
+ verbose: 'This dataset is appropriate to use for AI projects involving biometric categorisation, according to sensitive or protected attributes or characteristics based on the inference of those attributes or characteristics'
16
+ value: !!bool false
17
+ emotion_recognition: # Art. 6(2); Annex III(1)(c)
18
+ verbose: 'This dataset is appropriate to use for AI projects involving emotion recognition'
19
+ value: !!bool false
20
+ critical_infrastructure: # Art. 6(2); Annex III(2)
21
+ verbose: 'This dataset is appropriate to use for AI projects involving safety components in the management and operation of critical digital infrastructure, road traffic, or in the supply of water, gas, heating or electricity'
22
+ value: !!bool false
23
+ admission: # Art. 6(2); Annex III(3)(a)
24
+ verbose: 'This dataset is appropriate to use for AI projects involving the determination of access or admission or to assigning natural persons to educational and vocational training institutions at all levels'
25
+ value: !!bool false
26
+ recruitment: # Art. 6(2); Annex III(4)(a)
27
+ verbose: 'This dataset is appropriate to use for AI projects involving the recruitment or selection of natural persons, in particular to place targeted job advertisements, to analyse and filter job applications, and to evaluate candidates'
28
+ value: !!bool false
29
+ public_assistance: # Art. 6(2); Annex III(5)(a)
30
+ verbose: 'This dataset is appropriate to use for AI projects intended to be used by public authorities or on behalf of public authorities to evaluate the eligibility of natural persons for essential public assistance benefits and services, including healthcare services, as well as to grant, reduce, revoke, or reclaim such benefits and services'
31
+ value: !!bool false
32
+ victim_assessment: # Art. 6(2); Annex III(6)(a)
33
+ verbose: 'This dataset is appropriate to use for AI projects intended to be used by or on behalf of law enforcement authorities, or by Union institutions, bodies, offices or agencies in support of law enforcement authorities or on their behalf to assess the risk of a natural person becoming the victim of criminal offences'
34
+ value: !!bool false
35
+ polygraph: # Art. 6(2); Annex III(7)(a)
36
+ verbose: 'This dataset is appropriate to use for AI projects intended to be used by or on behalf of competent public authorities or by Union institutions, bodies, offices or agencies as polygraphs or similar tools'
37
+ value: !!bool false
38
+ judicial: # Art. 6(2); Annex III(8)(a)
39
+ verbose: 'This dataset is appropriate to use for AI projects intended to be used by a judicial authority or on their behalf to assist a judicial authority in researching and interpreting facts and the law and in applying the law to a concrete set of facts, or to be used in a similar way in alternative dispute resolution'
40
+ value: !!bool false
41
+
42
  data_and_data_governance:
43
  data_governance: # Art. 10(1)-(2)
44
+ verbose: 'The dataset was subject to data governance and management practices appropriate to the intended use case'
45
  value: !!bool false
46
  design_choices: # Art. 10(2)(a)
47
  verbose: 'The dataset has been subject to data governance and management practices as regards its relevant design choices'
 
147
  value: !!bool false
148
 
149
  gpai_requirements: # Art. 53(1); Annex XI(2)(c)
150
+ data_type:
151
+ verbose: 'Documentation for the dataset is available that contains the type of data'
152
+ value: !!bool false
153
+ data_provenance:
154
+ verbose: 'Documentation for the dataset is available that contains the provenance of data'
155
+ value: !!bool false
156
+ data_curation:
157
+ verbose: 'Documentation for the dataset is available that contains the curation methodologies (e.g. cleaning, filtering, etc.)'
158
+ value: !!bool false
159
+ data_number:
160
+ verbose: 'Documentation for the dataset is available that contains the number of data points'
161
+ value: !!bool false
162
+ data_scope:
163
+ verbose: 'Documentation for the dataset is available that contains the number of data scope and main characteristics'
164
+ value: !!bool false
165
+ data_origin:
166
+ verbose: 'Documentation for the dataset is available that contains information on how the data was obtained and selected as well as all other measures to detect the unsuitability of data sources and methods to detect identifiable biases'
167
+ value: !!bool false
 
model_cc.yaml CHANGED
@@ -1,3 +1,44 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  risk_management_system:
2
  foreseeable_risks: # Art. 9(2)(a)
3
  verbose: 'Known or reasonably foreseeable risks the model can pose to health or safety when used for intended purpose'
@@ -140,7 +181,7 @@ obligations_for_providers_of_gpai_models:
140
  verbose: 'The architecture and number of parameters'
141
  value: !!bool false
142
  input_output_modality: # Art. 53; Annex XI(1)(1)(e)
143
- verbose: 'Modality (e.g. text, image) and format of inputs and outputs'
144
  value: !!bool false
145
  license: # Art. 53; Annex XI(1)(1)(f)
146
  verbose: 'The license'
 
1
+ intended_purpose:
2
+ safety_component: # Art. 6(1)(a)
3
+ verbose: 'This model is appropriate to use for AI projects involving product safety components'
4
+ value: !!bool false
5
+ product_regulated_machinery: # Art. 6(1)(b); Annex I
6
+ verbose: 'This model is appropriate to use for AI projects involving products covered by Directive 2006/42/EC of the European Parliament and of the Council of 17 May 2006 on machinery, and amending Directive 95/16/EC (OJ L 157, 9.6.2006, p. 24) [as repealed by the Machinery Regulation]'
7
+ value: !!bool false
8
+ product_regulated_toy: # Art. 6(1)(b); Annex I
9
+ verbose: 'This model is appropriate to use for AI projects involving products covered by Directive 2009/48/EC of the European Parliament and of the Council of 18 June 2009 on the safety of toys (OJ L 170, 30.6.2009, p. 1)'
10
+ value: !!bool false
11
+ product_regulated_watercraft: # Art. 6(1)(b); Annex I
12
+ verbose: 'This model is appropriate to use for AI projects involving products covered by Directive 2013/53/EU of the European Parliament and of the Council of 20 November 2013 on recreational craft and personal watercraft and repealing Directive 94/25/EC (OJ L 354, 28.12.2013, p. 90)'
13
+ value: !!bool false
14
+ biometric_categorization: # Art. 6(2); Annex III(1)(b)
15
+ verbose: 'This model is appropriate to use for AI projects involving biometric categorisation, according to sensitive or protected attributes or characteristics based on the inference of those attributes or characteristics'
16
+ value: !!bool false
17
+ emotion_recognition: # Art. 6(2); Annex III(1)(c)
18
+ verbose: 'This model is appropriate to use for AI projects involving emotion recognition'
19
+ value: !!bool false
20
+ critical_infrastructure: # Art. 6(2); Annex III(2)
21
+ verbose: 'This model is appropriate to use for AI projects involving safety components in the management and operation of critical digital infrastructure, road traffic, or in the supply of water, gas, heating or electricity'
22
+ value: !!bool false
23
+ admission: # Art. 6(2); Annex III(3)(a)
24
+ verbose: 'This model is appropriate to use for AI projects involving the determination of access or admission or to assigning natural persons to educational and vocational training institutions at all levels'
25
+ value: !!bool false
26
+ recruitment: # Art. 6(2); Annex III(4)(a)
27
+ verbose: 'This model is appropriate to use for AI projects involving the recruitment or selection of natural persons, in particular to place targeted job advertisements, to analyse and filter job applications, and to evaluate candidates'
28
+ value: !!bool false
29
+ public_assistance: # Art. 6(2); Annex III(5)(a)
30
+ verbose: 'This model is appropriate to use for AI projects intended to be used by public authorities or on behalf of public authorities to evaluate the eligibility of natural persons for essential public assistance benefits and services, including healthcare services, as well as to grant, reduce, revoke, or reclaim such benefits and services'
31
+ value: !!bool false
32
+ victim_assessment: # Art. 6(2); Annex III(6)(a)
33
+ verbose: 'This model is appropriate to use for AI projects intended to be used by or on behalf of law enforcement authorities, or by Union institutions, bodies, offices or agencies in support of law enforcement authorities or on their behalf to assess the risk of a natural person becoming the victim of criminal offences'
34
+ value: !!bool false
35
+ polygraph: # Art. 6(2); Annex III(7)(a)
36
+ verbose: 'This model is appropriate to use for AI projects intended to be used by or on behalf of competent public authorities or by Union institutions, bodies, offices or agencies as polygraphs or similar tools'
37
+ value: !!bool false
38
+ judicial: # Art. 6(2); Annex III(8)(a)
39
+ verbose: 'This model is appropriate to use for AI projects intended to be used by a judicial authority or on their behalf to assist a judicial authority in researching and interpreting facts and the law and in applying the law to a concrete set of facts, or to be used in a similar way in alternative dispute resolution'
40
+ value: !!bool false
41
+
42
  risk_management_system:
43
  foreseeable_risks: # Art. 9(2)(a)
44
  verbose: 'Known or reasonably foreseeable risks the model can pose to health or safety when used for intended purpose'
 
181
  verbose: 'The architecture and number of parameters'
182
  value: !!bool false
183
  input_output_modality: # Art. 53; Annex XI(1)(1)(e)
184
+ verbos: 'Modality (e.g. text, image) and format of inputs and outputs'
185
  value: !!bool false
186
  license: # Art. 53; Annex XI(1)(1)(f)
187
  verbose: 'The license'
project_cc.yaml CHANGED
@@ -157,7 +157,7 @@ high_risk_ai_system:
157
  critical_infrastructure: # Art. 6(2); Annex III(2)
158
  verbose: 'AI project is intended to be used as a safety component in the management and operation of critical digital infrastructure, road traffic, or in the supply of water, gas, heating or electricity'
159
  value: !!bool false
160
- educational: # Art. 6(2); Annex III(3)(a)
161
  verbose: 'AI project is intended to be used to determine access or admission or to assign natural persons to educational and vocational training institutions at all levels'
162
  value: !!bool false
163
  recruitment: # Art. 6(2); Annex III(4)(a)
@@ -222,7 +222,10 @@ risk_management_system:
222
 
223
  technical_documentation:
224
  drawn_up: # Art. 11(1)
225
- verbose: 'Technical documentation for the high-risk AI project has been drawn up before the system has been placed on the market or put into service and will be kept up-to date'
 
 
 
226
  value: !!bool false
227
  intended_purpose: # Art. 11(1); Annex IV(1)(a)
228
  verbose: 'The Technical Documentation includes a general description of the AI project that covers its intended purpose, the name of the provider and the version of the system reflecting its relation to previous versions'
@@ -265,6 +268,9 @@ record_keeping:
265
  logging_generally: # Article 12(1)
266
  verbose: 'The AI project technically allows for the automatic recording of events (logs) over the lifetime of the system'
267
  value: !!bool false
 
 
 
268
  logging_risk: # Art. 12(1)(a)
269
  verbose: 'The AI project technically allows for the automatic recording of events (logs) over the lifetime of the system and these logging capabilities enable the recording of events relevant for identifying situations that may result in the AI projectpresenting a risk within the meaning of Article 79(1) or in a substantial modification'
270
  value: !!bool false
@@ -478,4 +484,7 @@ obligations_for_gpai_models_with_systemic_risk:
478
  value: !!bool false
479
  cybersecurity: # Art. 55(1)(d)
480
  verbose: 'Adequate cybersecurity protection for any models and infrastructures in the AI project was ensured'
481
- value: !!bool false
 
 
 
 
157
  critical_infrastructure: # Art. 6(2); Annex III(2)
158
  verbose: 'AI project is intended to be used as a safety component in the management and operation of critical digital infrastructure, road traffic, or in the supply of water, gas, heating or electricity'
159
  value: !!bool false
160
+ admission: # Art. 6(2); Annex III(3)(a)
161
  verbose: 'AI project is intended to be used to determine access or admission or to assign natural persons to educational and vocational training institutions at all levels'
162
  value: !!bool false
163
  recruitment: # Art. 6(2); Annex III(4)(a)
 
222
 
223
  technical_documentation:
224
  drawn_up: # Art. 11(1)
225
+ verbose: 'Technical documentation for the AI project has been drawn up before the system has been placed on the market or put into service and will be kept up-to date'
226
+ value: !!bool false
227
+ kept: # Art. 16(d), Art. 18
228
+ verbose: 'The technical documentation for the AI project that has been drawn up before the system has been placed on the market or put into service and will be kept up-to date will be kept by the provider for a period of ten years'
229
  value: !!bool false
230
  intended_purpose: # Art. 11(1); Annex IV(1)(a)
231
  verbose: 'The Technical Documentation includes a general description of the AI project that covers its intended purpose, the name of the provider and the version of the system reflecting its relation to previous versions'
 
268
  logging_generally: # Article 12(1)
269
  verbose: 'The AI project technically allows for the automatic recording of events (logs) over the lifetime of the system'
270
  value: !!bool false
271
+ logging_kept: # Article 12(1), Article 19(1)
272
+ verbose: 'The automatic recording of events (logs) that are being generated over the lifetime of the system are being kept by the provider for at least sixth months'
273
+ value: !!bool false
274
  logging_risk: # Art. 12(1)(a)
275
  verbose: 'The AI project technically allows for the automatic recording of events (logs) over the lifetime of the system and these logging capabilities enable the recording of events relevant for identifying situations that may result in the AI projectpresenting a risk within the meaning of Article 79(1) or in a substantial modification'
276
  value: !!bool false
 
484
  value: !!bool false
485
  cybersecurity: # Art. 55(1)(d)
486
  verbose: 'Adequate cybersecurity protection for any models and infrastructures in the AI project was ensured'
487
+ value: !!bool false
488
+
489
+
490
+