From f2e8a99cdf730ea162e25e6fc90d1e4b771ce2d6 Mon Sep 17 00:00:00 2001 From: sagarika-padmanaban Date: Wed, 8 Jan 2025 22:38:27 +0530 Subject: [PATCH 1/3] fix --- .../migrations/0056_auto_20250108_2237.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 backend/dataset/migrations/0056_auto_20250108_2237.py diff --git a/backend/dataset/migrations/0056_auto_20250108_2237.py b/backend/dataset/migrations/0056_auto_20250108_2237.py new file mode 100644 index 00000000..8e262508 --- /dev/null +++ b/backend/dataset/migrations/0056_auto_20250108_2237.py @@ -0,0 +1,23 @@ +# Generated by Django 3.2.14 on 2025-01-08 17:07 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dataset', '0055_auto_20241029_0902'), + ] + + operations = [ + migrations.AlterField( + model_name='interaction', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), + ), + migrations.AlterField( + model_name='multimodelinteraction', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), + ), + ] From d108aaa55d76ceb397a0b422213df2eb7f3e8ec6 Mon Sep 17 00:00:00 2001 From: sagarika-padmanaban Date: Thu, 9 Jan 2025 21:01:15 +0530 Subject: [PATCH 2/3] fix for conceal --- .../migrations/0056_auto_20250109_1926.py | 23 +++++++++++++++++++ .../migrations/0061_project_conceal.py | 18 +++++++++++++++ backend/projects/models.py | 6 +++++ backend/projects/serializers.py | 3 +++ 4 files changed, 50 insertions(+) create mode 100644 backend/dataset/migrations/0056_auto_20250109_1926.py create mode 100644 backend/projects/migrations/0061_project_conceal.py diff --git a/backend/dataset/migrations/0056_auto_20250109_1926.py b/backend/dataset/migrations/0056_auto_20250109_1926.py new file mode 100644 index 00000000..6241b2ef --- /dev/null +++ b/backend/dataset/migrations/0056_auto_20250109_1926.py @@ -0,0 +1,23 @@ +# Generated by Django 3.2.14 on 2025-01-09 13:56 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('dataset', '0055_auto_20241029_0902'), + ] + + operations = [ + migrations.AlterField( + model_name='interaction', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), + ), + migrations.AlterField( + model_name='multimodelinteraction', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), + ), + ] diff --git a/backend/projects/migrations/0061_project_conceal.py b/backend/projects/migrations/0061_project_conceal.py new file mode 100644 index 00000000..f7e25d1e --- /dev/null +++ b/backend/projects/migrations/0061_project_conceal.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.14 on 2025-01-09 13:56 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('projects', '0060_auto_20241029_0902'), + ] + + operations = [ + migrations.AddField( + model_name='project', + name='conceal', + field=models.BooleanField(default=False, help_text='To hide annotator,reviewer and superchecker details.', verbose_name='conceal'), + ), + ] diff --git a/backend/projects/models.py b/backend/projects/models.py index a8dde8c6..2bb3851a 100644 --- a/backend/projects/models.py +++ b/backend/projects/models.py @@ -133,6 +133,12 @@ class Project(models.Model): default=False, help_text=("Indicates whether a project is archieved or not."), ) + conceal = models.BooleanField( + verbose_name="conceal", + default=False, + help_text=("To hide annotator,reviewer and superchecker details."), + ) + is_published = models.BooleanField( verbose_name="project_is_published", default=False, diff --git a/backend/projects/serializers.py b/backend/projects/serializers.py index edcd9e67..34cc85a2 100644 --- a/backend/projects/serializers.py +++ b/backend/projects/serializers.py @@ -22,6 +22,7 @@ class Meta: "description", "created_by", "is_archived", + "conceal", "is_published", "annotators", "annotation_reviewers", @@ -62,6 +63,7 @@ class Meta: "description", "is_archived", "is_published", + "conceal", "annotators", "annotation_reviewers", "review_supercheckers", @@ -82,6 +84,7 @@ class Meta: "description", "created_by", "is_archived", + "conceal", "is_published", "workspace_id", "organization_id", From 3bdcdc7b282aad6b5191c3676f2ce20964fe7daa Mon Sep 17 00:00:00 2001 From: sagarika-padmanaban Date: Fri, 10 Jan 2025 14:53:48 +0530 Subject: [PATCH 3/3] migrate --- .../migrations/0055_auto_20241029_0902.py | 140 ------------------ .../migrations/0055_auto_20250109_2129.py | 77 ++++++++++ .../migrations/0056_auto_20250108_2237.py | 23 --- .../migrations/0056_auto_20250109_1926.py | 23 --- 4 files changed, 77 insertions(+), 186 deletions(-) delete mode 100644 backend/dataset/migrations/0055_auto_20241029_0902.py create mode 100644 backend/dataset/migrations/0055_auto_20250109_2129.py delete mode 100644 backend/dataset/migrations/0056_auto_20250108_2237.py delete mode 100644 backend/dataset/migrations/0056_auto_20250109_1926.py diff --git a/backend/dataset/migrations/0055_auto_20241029_0902.py b/backend/dataset/migrations/0055_auto_20241029_0902.py deleted file mode 100644 index 54dd9ff1..00000000 --- a/backend/dataset/migrations/0055_auto_20241029_0902.py +++ /dev/null @@ -1,140 +0,0 @@ -# Generated by Django 3.2.14 on 2024-10-29 09:02 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - dependencies = [ - ("tasks", "0050_alter_annotation_unique_together"), - ("dataset", "0054_auto_20241016_0456"), - ] - - operations = [ - migrations.RemoveField( - model_name="conversation", - name="datasetbase_ptr", - ), - migrations.RemoveField( - model_name="ocrdocument", - name="datasetbase_ptr", - ), - migrations.RemoveField( - model_name="sentencetext", - name="datasetbase_ptr", - ), - migrations.RemoveField( - model_name="speechconversation", - name="datasetbase_ptr", - ), - migrations.RemoveField( - model_name="translationpair", - name="datasetbase_ptr", - ), - migrations.AlterField( - model_name="datasetinstance", - name="dataset_type", - field=models.CharField( - choices=[ - ("PromptBase", "PromptBase"), - ("PromptAnswer", "PromptAnswer"), - ("PromptAnswerEvaluation", "PromptAnswerEvaluation"), - ("Interaction", "Interaction"), - ("Instruction", "Instruction"), - ("MultiModelInteraction", "MultiModelInteraction"), - ], - help_text="Dataset Type which is specific for each annotation task", - max_length=100, - verbose_name="dataset_type", - ), - ), - migrations.AlterField( - model_name="promptanswer", - name="language", - field=models.CharField( - choices=[ - ("English", "English"), - ("Assamese", "Assamese"), - ("Bengali", "Bengali"), - ("Bodo", "Bodo"), - ("Dogri", "Dogri"), - ("Filipino", "Filipino"), - ("Gujarati", "Gujarati"), - ("Hindi", "Hindi"), - ("Kannada", "Kannada"), - ("Kashmiri", "Kashmiri"), - ("Konkani", "Konkani"), - ("Maithili", "Maithili"), - ("Malayalam", "Malayalam"), - ("Manipuri", "Manipuri"), - ("Marathi", "Marathi"), - ("Nepali", "Nepali"), - ("Odia", "Odia"), - ("Punjabi", "Punjabi"), - ("Sanskrit", "Sanskrit"), - ("Santali", "Santali"), - ("Sindhi", "Sindhi"), - ("Sinhala", "Sinhala"), - ("Tamil", "Tamil"), - ("Telugu", "Telugu"), - ("Thai", "Thai"), - ("Urdu", "Urdu"), - ], - max_length=15, - verbose_name="language", - ), - ), - migrations.AlterField( - model_name="promptbase", - name="language", - field=models.CharField( - choices=[ - ("English", "English"), - ("Assamese", "Assamese"), - ("Bengali", "Bengali"), - ("Bodo", "Bodo"), - ("Dogri", "Dogri"), - ("Filipino", "Filipino"), - ("Gujarati", "Gujarati"), - ("Hindi", "Hindi"), - ("Kannada", "Kannada"), - ("Kashmiri", "Kashmiri"), - ("Konkani", "Konkani"), - ("Maithili", "Maithili"), - ("Malayalam", "Malayalam"), - ("Manipuri", "Manipuri"), - ("Marathi", "Marathi"), - ("Nepali", "Nepali"), - ("Odia", "Odia"), - ("Punjabi", "Punjabi"), - ("Sanskrit", "Sanskrit"), - ("Santali", "Santali"), - ("Sindhi", "Sindhi"), - ("Sinhala", "Sinhala"), - ("Tamil", "Tamil"), - ("Telugu", "Telugu"), - ("Thai", "Thai"), - ("Urdu", "Urdu"), - ], - max_length=15, - verbose_name="language", - ), - ), - migrations.DeleteModel( - name="BlockText", - ), - migrations.DeleteModel( - name="Conversation", - ), - migrations.DeleteModel( - name="OCRDocument", - ), - migrations.DeleteModel( - name="SentenceText", - ), - migrations.DeleteModel( - name="SpeechConversation", - ), - migrations.DeleteModel( - name="TranslationPair", - ), - ] diff --git a/backend/dataset/migrations/0055_auto_20250109_2129.py b/backend/dataset/migrations/0055_auto_20250109_2129.py new file mode 100644 index 00000000..27fc3ee8 --- /dev/null +++ b/backend/dataset/migrations/0055_auto_20250109_2129.py @@ -0,0 +1,77 @@ +# Generated by Django 3.2.14 on 2025-01-09 15:59 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('tasks', '0050_alter_annotation_unique_together'), + ('dataset', '0054_auto_20241016_0456'), + ] + + operations = [ + migrations.RemoveField( + model_name='conversation', + name='datasetbase_ptr', + ), + migrations.RemoveField( + model_name='ocrdocument', + name='datasetbase_ptr', + ), + migrations.RemoveField( + model_name='sentencetext', + name='datasetbase_ptr', + ), + migrations.RemoveField( + model_name='speechconversation', + name='datasetbase_ptr', + ), + migrations.RemoveField( + model_name='translationpair', + name='datasetbase_ptr', + ), + migrations.AlterField( + model_name='datasetinstance', + name='dataset_type', + field=models.CharField(choices=[('PromptBase', 'PromptBase'), ('PromptAnswer', 'PromptAnswer'), ('PromptAnswerEvaluation', 'PromptAnswerEvaluation'), ('Interaction', 'Interaction'), ('Instruction', 'Instruction'), ('MultiModelInteraction', 'MultiModelInteraction')], help_text='Dataset Type which is specific for each annotation task', max_length=100, verbose_name='dataset_type'), + ), + migrations.AlterField( + model_name='interaction', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), + ), + migrations.AlterField( + model_name='multimodelinteraction', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), + ), + migrations.AlterField( + model_name='promptanswer', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Filipino', 'Filipino'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], max_length=15, verbose_name='language'), + ), + migrations.AlterField( + model_name='promptbase', + name='language', + field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Filipino', 'Filipino'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], max_length=15, verbose_name='language'), + ), + migrations.DeleteModel( + name='BlockText', + ), + migrations.DeleteModel( + name='Conversation', + ), + migrations.DeleteModel( + name='OCRDocument', + ), + migrations.DeleteModel( + name='SentenceText', + ), + migrations.DeleteModel( + name='SpeechConversation', + ), + migrations.DeleteModel( + name='TranslationPair', + ), + ] diff --git a/backend/dataset/migrations/0056_auto_20250108_2237.py b/backend/dataset/migrations/0056_auto_20250108_2237.py deleted file mode 100644 index 8e262508..00000000 --- a/backend/dataset/migrations/0056_auto_20250108_2237.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.2.14 on 2025-01-08 17:07 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dataset', '0055_auto_20241029_0902'), - ] - - operations = [ - migrations.AlterField( - model_name='interaction', - name='language', - field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), - ), - migrations.AlterField( - model_name='multimodelinteraction', - name='language', - field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), - ), - ] diff --git a/backend/dataset/migrations/0056_auto_20250109_1926.py b/backend/dataset/migrations/0056_auto_20250109_1926.py deleted file mode 100644 index 6241b2ef..00000000 --- a/backend/dataset/migrations/0056_auto_20250109_1926.py +++ /dev/null @@ -1,23 +0,0 @@ -# Generated by Django 3.2.14 on 2025-01-09 13:56 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('dataset', '0055_auto_20241029_0902'), - ] - - operations = [ - migrations.AlterField( - model_name='interaction', - name='language', - field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), - ), - migrations.AlterField( - model_name='multimodelinteraction', - name='language', - field=models.CharField(choices=[('English', 'English'), ('Assamese', 'Assamese'), ('Bengali', 'Bengali'), ('Burmese', 'Burmese'), ('Bodo', 'Bodo'), ('Dogri', 'Dogri'), ('Gujarati', 'Gujarati'), ('Hindi', 'Hindi'), ('Kannada', 'Kannada'), ('Kashmiri', 'Kashmiri'), ('Konkani', 'Konkani'), ('Maithili', 'Maithili'), ('Malayalam', 'Malayalam'), ('Manipuri', 'Manipuri'), ('Marathi', 'Marathi'), ('Nepali', 'Nepali'), ('Odia', 'Odia'), ('Punjabi', 'Punjabi'), ('Sanskrit', 'Sanskrit'), ('Santali', 'Santali'), ('Sindhi', 'Sindhi'), ('Sinhala', 'Sinhala'), ('Tamil', 'Tamil'), ('Telugu', 'Telugu'), ('Thai', 'Thai'), ('Urdu', 'Urdu')], help_text='Language of the interaction', max_length=20, verbose_name='Language'), - ), - ]