qqubb commited on
Commit
6323bc5
·
2 Parent(s): e8a589d 97ebda3

Merge branch 'dev' of github.com:billmarinocam/compliancecards into dev

Browse files
Files changed (4) hide show
  1. data_cc.yaml +2 -2
  2. model_cc.yaml +1 -17
  3. project_cc.yaml +25 -17
  4. utils.py +2 -2
data_cc.yaml CHANGED
@@ -1,6 +1,6 @@
1
  card_type: "data" # "project", "data" or "model"
2
 
3
- # Meta data related to intended purpose(s) of data
4
 
5
  intended_purpose:
6
  safety_component:
@@ -192,7 +192,7 @@ high_risk_ai_system_requirements:
192
  verbose: 'Datset was subject to a quality management system that is documented in a systematic and orderly manner in the form of written policies, procedures and instructions, and includes a description of the systems and procedures for data management, including data acquisition, data collection, data analysis, data labelling, data storage, data filtration, data mining, data aggregation, data retention and any other operation regarding the data'
193
  value: !!bool false
194
 
195
- # Meta data related to data-relaed requirements for GPAI models
196
 
197
  gpai_model_requirements:
198
  data_type:
 
1
  card_type: "data" # "project", "data" or "model"
2
 
3
+ # Metadata related to intended purpose(s) of data
4
 
5
  intended_purpose:
6
  safety_component:
 
192
  verbose: 'Datset was subject to a quality management system that is documented in a systematic and orderly manner in the form of written policies, procedures and instructions, and includes a description of the systems and procedures for data management, including data acquisition, data collection, data analysis, data labelling, data storage, data filtration, data mining, data aggregation, data retention and any other operation regarding the data'
193
  value: !!bool false
194
 
195
+ # Metadata related to data-related requirements for GPAI models
196
 
197
  gpai_model_requirements:
198
  data_type:
model_cc.yaml CHANGED
@@ -208,7 +208,7 @@ high_risk_ai_system_requirements:
208
  verbose: 'Examination, test and validation procedures to be carried out before, during and after the development of the high-risk AI system, and the frequency with which they have to be carried out'
209
  value: !!bool false
210
 
211
- # Meta data related to model-related requirements for GPAI models
212
 
213
  gpai_model_requirements:
214
  task:
@@ -308,20 +308,4 @@ gpai_model_with_systemic_risk_requirements:
308
  cybersecurity:
309
  article: 'Art. 55(1)(d)'
310
  verbose: 'Ensure an adequate level of cybersecurity protection for the GPAI model with systemic risk and the physical infrastructure of the mode'
311
- value: !!bool false
312
-
313
- # Metadata related to transparency requirements for some AI systems (Article 50)
314
-
315
- transparency_requirements:
316
- generates_media: # clean this up
317
- article: 'Art. 50(2)'
318
- verbose: 'If the model generates synthetic audio, image, video or text content'
319
- value: !!bool false
320
- marked_as_generated:
321
- article: 'Art. 50(2)'
322
- verbose: 'If outputs are marked in a machine-readable format and detectable as artificially generated or manipulated'
323
- value: !!bool false
324
- interoperability:
325
- article: 'Art. 50(2)'
326
- verbose: 'Providers shall ensure their technical solutions are effective, interoperable, robust and reliable as far as this is technically feasible, taking into account specificities and limitations of different types of content, costs of implementation and the generally acknowledged state-of-the-art, as may be reflected in relevant technical standards'
327
  value: !!bool false
 
208
  verbose: 'Examination, test and validation procedures to be carried out before, during and after the development of the high-risk AI system, and the frequency with which they have to be carried out'
209
  value: !!bool false
210
 
211
+ # Metadata related to model-related requirements for GPAI models
212
 
213
  gpai_model_requirements:
214
  task:
 
308
  cybersecurity:
309
  article: 'Art. 55(1)(d)'
310
  verbose: 'Ensure an adequate level of cybersecurity protection for the GPAI model with systemic risk and the physical infrastructure of the mode'
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
311
  value: !!bool false
project_cc.yaml CHANGED
@@ -2,6 +2,8 @@
2
  # Information related to high-level characteristics of AI project, including the role of the operator, their location, and where the output is used
3
  card_type: "project" # "project", "data" or "model"
4
 
 
 
5
  operator_details:
6
  provider:
7
  article: 'Art. 2'
@@ -40,6 +42,8 @@ gpai_model:
40
 
41
  # Information related to whether or not the project, if an AI system, is a high-risk AI system
42
 
 
 
43
  high_risk_ai_system:
44
  safety_component:
45
  article: 'Art. 6(1)(a)'
@@ -94,6 +98,8 @@ high_risk_ai_system:
94
  verbose: 'AI project is 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'
95
  value: !!bool false
96
 
 
 
97
  high_risk_ai_system_exceptions:
98
  filter_exception_rights:
99
  article: 'Art. 6(3)'
@@ -133,6 +139,10 @@ gpai_model_systematic_risk:
133
  # Information related to the Act's exceptions for scientific research, open-source AI, and more
134
 
135
  excepted:
 
 
 
 
136
  scientific:
137
  article: 'Art. 2(6)'
138
  verbose: 'AI project is or was specifically developed and put into service for the sole purpose of scientific research and development'
@@ -246,11 +256,7 @@ risk_management_system:
246
  value: !!bool false
247
  vulnerable_groups:
248
  article: 'Art. 9(9)'
249
- verbose: 'Adverse impacts in the view of intended purpose the high-risk AI system on individuals under 18 and other vulnerable groups have been considered'
250
- value: !!bool true
251
- integration_with_other_laws:
252
- article: 'Art. 9(10)'
253
- description: 'For providers subject to other Union law requirements, risk management procedures may be integrated or combined with those established under such law.'
254
  value: !!bool true
255
 
256
  # Information related to the risk management system requirements for high-risk AI systems (Article 11)
@@ -286,7 +292,7 @@ technical_documentation:
286
  value: !!bool false
287
  external_features:
288
  article: 'Art. 11(1); Annex IV(1)(f)'
289
- verbose: 'Technical Documentation includes a general description of the AI project that includes, where the AI system is a component of products, photographs or illustrations showing external features, the marking and internal layout of those products'
290
  value: !!bool false
291
  user_interface:
292
  article: 'Art. 11(1); Annex IV(1)(g)'
@@ -577,7 +583,7 @@ gpai_model_obligations:
577
  documentation:
578
  intended_uses:
579
  article: 'Art. 53(1)(a); Annex XI(1)(1)(a)'
580
- verbose: 'The provider has drawn up and will keep up-to-date technical documentation of the model that include a general description of the model includes a description of the tasks that the model is intended to perform and the type and nature of AI systems in which it can be integrated'
581
  value: !!bool false
582
  accepable_use_policies:
583
  article: 'Art. 53(1)(a); Annex XI(1)(1)(b)'
@@ -601,7 +607,7 @@ gpai_model_obligations:
601
  value: !!bool false
602
  technical_means:
603
  article: 'Art. 53(1)(a); Annex XI(1)(2)(a)'
604
- verbose: 'The provider has drawn up and will keep up-to-date technical documentation of the model that include a detailed description of the model that includes the technical means (e.g. instructions of use, infrastructure, tools) required for the AI project to be integrated in AI systems'
605
  value: !!bool false
606
  design_specs:
607
  article: 'Art. 53(1)(a); Annex XI(1)(2)(b)'
@@ -626,39 +632,39 @@ gpai_model_obligations:
626
  provider_documentation:
627
  general:
628
  article:
629
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulation'
630
  value: !!bool false
631
  tasks:
632
  article: 'ANNEX XII(1)(a)'
633
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the tasks that the model is intended to perform and the type and nature of AI systems into which it can be integrated;'
634
  value: !!bool false
635
  acceptable_use:
636
  article: 'ANNEX XII(1)(b)'
637
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the acceptable use policies applicable;'
638
  value: !!bool false
639
  release_date:
640
  article: 'ANNEX XII(1)(c)'
641
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the date of release and methods of distribution;'
642
  value: !!bool false
643
  hardware:
644
  article: 'ANNEX XII(1)(d)'
645
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including how the model interacts, or can be used to interact, with hardware or software that is not part of the model itself, where applicable;'
646
  value: !!bool false
647
  versions:
648
  article: 'ANNEX XII(1)(e)'
649
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the versions of relevant software related to the use of the general-purpose AI model, where applicable'
650
  value: !!bool false
651
  architecture:
652
  article: 'ANNEX XII(1)(f)'
653
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the architecture and number of parameters;'
654
  value: !!bool false
655
  modality:
656
  article: 'ANNEX XII(1)(g)'
657
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the modality (e.g. text, image) and format of inputs and outputs;'
658
  value: !!bool false
659
  license:
660
  article: 'ANNEX XII(1)(h)'
661
- verbose: 'Provider has draw up and will keep up-to-date and make available to providers of AI systems who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the licence for the model.;'
662
  value: !!bool false
663
  other:
664
  policy:
@@ -748,6 +754,8 @@ additional_provider_obligations:
748
 
749
  # Information related to the additional transparency requirements in Article 50, if applicable
750
 
 
 
751
  transparency_related:
752
  direct_user_interaction:
753
  article: 'Art. 50'
 
2
  # Information related to high-level characteristics of AI project, including the role of the operator, their location, and where the output is used
3
  card_type: "project" # "project", "data" or "model"
4
 
5
+ # TODO potentially add scenarios that get the provider off the hook per Article 25
6
+
7
  operator_details:
8
  provider:
9
  article: 'Art. 2'
 
42
 
43
  # Information related to whether or not the project, if an AI system, is a high-risk AI system
44
 
45
+ # TODO Potentially add all of the use cases mentioned in Annex I below (those covered by existing regulations) rather than bundle them up as they are now
46
+
47
  high_risk_ai_system:
48
  safety_component:
49
  article: 'Art. 6(1)(a)'
 
98
  verbose: 'AI project is 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'
99
  value: !!bool false
100
 
101
+ # TODO potentially add military exception and/or law enforcement exception to the below
102
+
103
  high_risk_ai_system_exceptions:
104
  filter_exception_rights:
105
  article: 'Art. 6(3)'
 
139
  # Information related to the Act's exceptions for scientific research, open-source AI, and more
140
 
141
  excepted:
142
+ military: # only applies to AI systems, must implement that in the logic
143
+ article: 'Art. 2(3)'
144
+ verbose: 'AI project is placed on the market, put into service, or used with or without modification exclusively for military, defence or national security purposes'
145
+ value: !!bool false
146
  scientific:
147
  article: 'Art. 2(6)'
148
  verbose: 'AI project is or was specifically developed and put into service for the sole purpose of scientific research and development'
 
256
  value: !!bool false
257
  vulnerable_groups:
258
  article: 'Art. 9(9)'
259
+ verbose: 'The risk management system for the AI project considers impacts in the view of intended purpose the AI project on individuals under 18 and other vulnerable groups have been considered'
 
 
 
 
260
  value: !!bool true
261
 
262
  # Information related to the risk management system requirements for high-risk AI systems (Article 11)
 
292
  value: !!bool false
293
  external_features:
294
  article: 'Art. 11(1); Annex IV(1)(f)'
295
+ verbose: 'Technical Documentation includes a general description of the AI project that includes, where it is a component of products, photographs or illustrations showing external features, the marking and internal layout of those products'
296
  value: !!bool false
297
  user_interface:
298
  article: 'Art. 11(1); Annex IV(1)(g)'
 
583
  documentation:
584
  intended_uses:
585
  article: 'Art. 53(1)(a); Annex XI(1)(1)(a)'
586
+ verbose: 'The provider has drawn up and will keep up-to-date technical documentation of the model that include a general description of the model includes a description of the tasks that the model is intended to perform and the type and nature of AI projects in which it can be integrated'
587
  value: !!bool false
588
  accepable_use_policies:
589
  article: 'Art. 53(1)(a); Annex XI(1)(1)(b)'
 
607
  value: !!bool false
608
  technical_means:
609
  article: 'Art. 53(1)(a); Annex XI(1)(2)(a)'
610
+ verbose: 'The provider has drawn up and will keep up-to-date technical documentation of the model that include a detailed description of the model that includes the technical means (e.g. instructions of use, infrastructure, tools) required for the AI project to be integrated into other AI projects'
611
  value: !!bool false
612
  design_specs:
613
  article: 'Art. 53(1)(a); Annex XI(1)(2)(b)'
 
632
  provider_documentation:
633
  general:
634
  article:
635
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulation'
636
  value: !!bool false
637
  tasks:
638
  article: 'ANNEX XII(1)(a)'
639
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their AI systems, documentation that enables providers of AI systems to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the tasks that the model is intended to perform and the type and nature of AI systems into which it can be integrated;'
640
  value: !!bool false
641
  acceptable_use:
642
  article: 'ANNEX XII(1)(b)'
643
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the acceptable use policies applicable;'
644
  value: !!bool false
645
  release_date:
646
  article: 'ANNEX XII(1)(c)'
647
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the date of release and methods of distribution;'
648
  value: !!bool false
649
  hardware:
650
  article: 'ANNEX XII(1)(d)'
651
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including how the model interacts, or can be used to interact, with hardware or software that is not part of the model itself, where applicable;'
652
  value: !!bool false
653
  versions:
654
  article: 'ANNEX XII(1)(e)'
655
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the versions of relevant software related to the use of the general-purpose AI model, where applicable'
656
  value: !!bool false
657
  architecture:
658
  article: 'ANNEX XII(1)(f)'
659
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the architecture and number of parameters;'
660
  value: !!bool false
661
  modality:
662
  article: 'ANNEX XII(1)(g)'
663
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the modality (e.g. text, image) and format of inputs and outputs;'
664
  value: !!bool false
665
  license:
666
  article: 'ANNEX XII(1)(h)'
667
+ verbose: 'Provider has draw up and will keep up-to-date and make available to providers of other AI projects who intend to integrate the AI project into their other AI projects, documentation that enables providers of other AI projects to have a good understanding of the capabilities and limitations of the general-purpose AI model and to comply with their obligations pursuant to this Regulatio, that includes general description of the AI project including the licence for the model.;'
668
  value: !!bool false
669
  other:
670
  policy:
 
754
 
755
  # Information related to the additional transparency requirements in Article 50, if applicable
756
 
757
+ # TODO the requirements seem to be missing from the below. We also need to work on the logic, which is complex.
758
+
759
  transparency_related:
760
  direct_user_interaction:
761
  article: 'Art. 50'
utils.py CHANGED
@@ -63,11 +63,11 @@ def check_within_scope_act(project_cc_yaml):
63
  print("Your project is not within the scope of the Act and its requirements.")
64
  return False
65
 
66
- def check_excepted(project_cc_yaml):
67
  if (project_cc_yaml['excepted']['scientific'] or
68
  project_cc_yaml['excepted']['pre_market'] or
69
  (project_cc_yaml['ai_system']['ai_system']['value'] == True and project_cc_yaml['excepted']['open_source_ai_system']) or
70
- (project_cc_yaml['gpai_model']['gpai_model']['value'] == True and project_cc_yaml['excepted']['open_source_gpai_system'])
71
  ):
72
  print("Your project falls into one of the exemptions from the Act.")
73
  return True
 
63
  print("Your project is not within the scope of the Act and its requirements.")
64
  return False
65
 
66
+ def check_excepted(project_cc_yaml): #it would be nice to pass dispositive_variables into this function so we can run the code commented out below
67
  if (project_cc_yaml['excepted']['scientific'] or
68
  project_cc_yaml['excepted']['pre_market'] or
69
  (project_cc_yaml['ai_system']['ai_system']['value'] == True and project_cc_yaml['excepted']['open_source_ai_system']) or
70
+ (project_cc_yaml['gpai_model']['gpai_model']['value'] == True and project_cc_yaml['excepted']['open_source_gpai_system']) #and dispositive_variables['gpai_model_systemic_risk'] == False)
71
  ):
72
  print("Your project falls into one of the exemptions from the Act.")
73
  return True