cahya commited on
Commit
acdcd63
·
1 Parent(s): d3427a5

updated the prompts

Browse files
Files changed (3) hide show
  1. app/abstract_dataset.py +0 -62
  2. app/app.py +4 -3
  3. app/prompts.py +33 -52
app/abstract_dataset.py DELETED
@@ -1,62 +0,0 @@
1
- import torch
2
- import random
3
- from torch.utils.data import Dataset
4
-
5
-
6
- class AbstractDataset(Dataset):
7
- special_tokens = {"bos_token": "<|BOS|>",
8
- "eos_token": "<|EOS|>",
9
- "unk_token": "<|UNK|>",
10
- "pad_token": "<|PAD|>",
11
- "sep_token": "<|SEP|>"}
12
- max_length = 1024
13
-
14
- def __init__(self, data, tokenizer, randomize=True):
15
- title, text, keywords = [], [], []
16
- for k, v in data.items():
17
- title.append(v[0])
18
- text.append(v[1])
19
- keywords.append(v[2])
20
-
21
- self.randomize = randomize
22
- self.tokenizer = tokenizer
23
- self.title = title
24
- self.text = text
25
- self.keywords = keywords
26
-
27
- @staticmethod
28
- def join_keywords(keywords, randomize=True):
29
- N = len(keywords)
30
-
31
- # random sampling and shuffle
32
- if randomize:
33
- # M = random.choice(range(N + 1))
34
- # keywords = keywords[:M]
35
- random.shuffle(keywords)
36
-
37
- return ','.join(keywords)
38
-
39
-
40
- def __len__(self):
41
- return len(self.text)
42
-
43
-
44
- def __getitem__(self, i):
45
- keywords = self.keywords[i].copy()
46
- kw = self.join_keywords(keywords, self.randomize)
47
-
48
- input = self.special_tokens['bos_token'] + self.title[i] + \
49
- self.special_tokens['sep_token'] + kw + self.special_tokens['sep_token'] + \
50
- self.text[i] + self.special_tokens['eos_token']
51
-
52
- encodings_dict = self.tokenizer(input,
53
- truncation=True,
54
- max_length=self.max_length,
55
- padding="max_length")
56
-
57
- input_ids = encodings_dict['input_ids']
58
- attention_mask = encodings_dict['attention_mask']
59
-
60
- return {'label': torch.tensor(input_ids),
61
- 'input_ids': torch.tensor(input_ids),
62
- 'attention_mask': torch.tensor(attention_mask)}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/app.py CHANGED
@@ -66,9 +66,7 @@ def process(title: str, keywords: str, text: str,
66
  penalty_alpha = 0.6):
67
  # st.write("Cache miss: process")
68
  url = 'https://news-api.uncool.ai/api/text_generator/v1'
69
- print("news_api_auth_token:", news_api_auth_token)
70
  headers = {'Authorization': 'Bearer ' + news_api_auth_token}
71
- print("Requesting to news-api.uncool.ai with headers: ", headers)
72
  data = {
73
  "title": title,
74
  "keywords": keywords,
@@ -122,7 +120,10 @@ if prompt_group_name in ["Indonesian Newspaper"]:
122
  session_state.keywords = ""
123
  else:
124
  if session_state.prompt is not None and session_state.prompt_box is None:
125
- session_state.prompt_box = random.choice(PROMPT_LIST[prompt_group_name][session_state.prompt])
 
 
 
126
 
127
  session_state.title = st.text_input("Title", session_state.title)
128
  session_state.keywords = st.text_input("Keywords", session_state.keywords)
 
66
  penalty_alpha = 0.6):
67
  # st.write("Cache miss: process")
68
  url = 'https://news-api.uncool.ai/api/text_generator/v1'
 
69
  headers = {'Authorization': 'Bearer ' + news_api_auth_token}
 
70
  data = {
71
  "title": title,
72
  "keywords": keywords,
 
120
  session_state.keywords = ""
121
  else:
122
  if session_state.prompt is not None and session_state.prompt_box is None:
123
+ choice = random.choice(PROMPT_LIST[prompt_group_name][session_state.prompt])
124
+ session_state.title = choice["title"]
125
+ session_state.keywords = choice["keywords"]
126
+ session_state.prompt_box = choice["text"]
127
 
128
  session_state.title = st.text_input("Title", session_state.title)
129
  session_state.keywords = st.text_input("Keywords", session_state.keywords)
app/prompts.py CHANGED
@@ -1,57 +1,38 @@
1
  PROMPT_LIST = {
2
- "Indonesian GPT-2": {
3
- "Resep masakan (recipe)": [
4
- "Berikut adalah cara memasak sate ayam:\n",
5
- "Langkah-langkah membuat nasi goreng:\n",
6
- "Berikut adalah bahan-bahan membuat nastar:\n"
7
- ],
8
- "Puisi (poetry)": [
9
- "Aku ingin jadi merpati\nTerbang di langit yang damai\nBernyanyi-nyanyi tentang masa depan\n",
10
- "Terdiam aku satu persatu dengan tatapan binar\nSenyawa merasuk dalam sukma membuat lara\nKefanaan membentuk kelemahan"
11
- ],
12
- "Cerpen (short story)": [
13
- "Putri memakai sepatunya dengan malas. Kalau bisa, selama seminggu ini ia bolos sekolah saja. Namun, Mama pasti akan marah. Ulangan tengah semester telah selesai. Minggu ini, di sekolah sedang berlangsung pekan olahraga.",
14
- "\"Wah, hari ini cerah sekali ya,\" ucap Budi ketika ia keluar rumah.",
15
- "Sewindu sudah kita tak berjumpa, rinduku padamu sudah tak terkira."
16
- ],
17
- "Sejarah (history)": [
18
- "Mohammad Natsir adalah seorang ulama, politisi, dan pejuang kemerdekaan Indonesia.",
19
- "Ir. H. Soekarno adalah Presiden pertama Republik Indonesia. Ia adalah seorang tokoh perjuangan yang memainkan peranan penting dalam memerdekakan bangsa Indonesia",
20
- "Borobudur adalah sebuah candi Buddha yang terletak di sebelah barat laut Yogyakarta. Monumen ini merupakan model alam semesta dan dibangun sebagai tempat suci untuk memuliakan Buddha"
21
- ],
22
- },
23
- "Indonesian Literature": {
24
- "Adult Romance": [
25
- "Ini adalah kisah tentang seorang laki-laki yang berusaha memperjuangkan cintanya",
26
- "Alunan musik terdengar memenuhi ruangan kantor, cowok itu duduk di balik meja kerjanya sambil memejamkan mata. Berusaha meresapi nada per nada",
27
- "Aku mencari dan terus mencari\nDimana bahagia akan kutemui\nKumencari terus mencari\nHingga ku tak mengerti arti hari-hari",
28
- "Gadis itu mengharuskan dirinya tegar, dan kuat dalam menghadapi masalah. Menahan air matanya jatuh setiap kali ingin menangis"
29
  ],
30
- "Horror": [
31
- "Ditengah-tengah perbincangan mereka berdua, datanglah sesosok mahluk tinggi hitam dan besar",
32
- "Sesosok hantu perempuan seperti kuntilanak yang melayang keluar dan bergerak perlahan dari pintu kamar kecil tadi yang tertutup.",
33
- "Sejak pertemuannya dengan leak, yang ternyata tinggal satu atap dengannya, hidupnya terus dihantui oleh berbagai sosok seram."
 
 
 
 
 
 
 
 
 
 
 
 
34
  ],
35
- "Poetry": [
36
- "Aku ingin menulis sajak\nyang melesat dalam kejap\nmenembus hati yang pejam\nmemaksa mimpimu terjaga\ndari semu",
37
- "Malam ini langitku lengang\ntiada hujan yang membasuh rindu\npun awan yang biasanya temani seruput kopimu",
38
- "Di sisimu waktu menjelma\nsetangkai kembang api\ngelora membakar tanpa jeda\nmemercik pijar binar kita."
39
- ]
40
- },
41
- "Indonesian Newspaper": {
42
- "Biologi (biology)": [
43
- "Tujuan penelitian ini untuk menentukan keanekaragaman Arthropoda pada lahan pertanian kacang",
44
- "Identifikasi spesies secara molekuler sangat diperlukan dalam mempelajari taksonomi",
45
- "Penelitian ini bertujuan untuk menentukan identitas invertebrata laut dari Perairan Papua dengan teknik DNA barcoding"],
46
- "Psikologi (psychology)": [
47
- "Penelitian ini bertujuan untuk mengetahui perilaku wirausaha remaja yang diprediksi dari motivasi intrinsik",
48
- "Tujuan dari penelitian ini adalah untuk mendapatkan data empiris mengenai gambaran peta bakat mahasiswa Fakultas Psikologi Unjani"],
49
- "Ekonomi (economics)": [
50
- "Faktor kepuasan dan kepercayaan konsumen merupakan dua faktor kunci dalam meningkatkan penetrasi e-commerce. Penelitian yang dilakukan",
51
- "Penelitian ini bertujuan untuk menganalisis pola konsumsi pangan di Indonesia",
52
- "Model GTAP diimplementasikan untuk melihat dampak yang ditimbulkan pada PDB"],
53
- "Teknologi Informasi (IT)": [
54
- "pembuatan aplikasi ini menggunakan pengembangan metode Waterfall dan dirancang mengguynakan Unified Modeling Language (UML) dengan bahasa pemrograman",
55
- "Berdasarkan masalah tersebut, maka penulis termotivasi untuk membangun Pengembangan Sistem Informasi Manajemen"]
56
  },
57
  }
 
1
  PROMPT_LIST = {
2
+ "Indonesian Newspaper": {
3
+ "Politik": [
4
+ {
5
+ "title": "Wapres Berharap Muhammadiyah Berkontribusi Wujudkan Indonesia Emas",
6
+ "keywords": "Indonesia Emas, Muhammadiyah, Wapres",
7
+ "text": "Wakil Presiden (Wapres) Ma'ruf Amin berharap Muhammadiyah dapat berkontribusi dalam upaya mewujudkan Indonesia Emas pada tahun 2045 mendatang."
8
+ },
9
+ {
10
+ "title": "Jokowi: Pembangunan Infrastuktur Perlu Berdayakan Masyarakat Setempat",
11
+ "keywords": "Infrastuktur, Jokowi, Masyarakat",
12
+ "text": "Presiden Joko Widodo menekankan bahwa pembangunan infrastruktur perlu memberdayakan masyarakat dan ekonomi setempat agar memiliki rasa kepemilikan yang tinggi disertai dukungan bagi negara berkembang untuk membangun kapasitas dan kemampuan mandiri"
13
+ },
14
+ {
15
+ "title": "PKB Nilai Jokowi Masih Menimbang Beri Dukungan ke Prabowo atau Ganjar",
16
+ "keywords": "Joko Widodo, Prabowo Subianto, Ganjar Pranowo",
17
+ "text": "Wakil Sekretaris Jenderal (Wasekjen) Partai Kebangkitan Bangsa (PKB) Syaiful Huda menilai, Presiden Joko Widodo masih menimbang bakal memberikan dukungan pada Prabowo Subianto atau Ganjar Pranowo."
18
+ },
 
 
 
 
 
 
 
 
 
 
19
  ],
20
+ "Wisata": [
21
+ {
22
+ "title": "Kebun Raya Bogor sebagai Taman Hutan Raya Terbesar di Indonesia",
23
+ "keywords": "2022",
24
+ "text": "Pemerintah Kota (Pemkot) Bogor, Jawa Baat berencana membangun kebun raya seluas 87.3 hektar"
25
+ },
26
+ {
27
+ "title": "Kepulauan Raja Ampat",
28
+ "keywords": "Papua Barat, Wisata",
29
+ "text": "Kepulauan Raja Ampat merupakan rangkaian empat gugusan pulau yang berdekatan dan berlokasi di barat bagian Kepala Burung (Vogelkoop) Pulau Papua."
30
+ },
31
+ {
32
+ "title": "Ubud, kota indah di Bali",
33
+ "keywords": "Ubud, Wisata",
34
+ "text": "Ubud adalah sebuah desa adat sekaligus menjadi destinasi wisata di daerah kabupaten Gianyar, pulau Bali, Indonesia."
35
+ },
36
  ],
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  },
38
  }