ntphuc149 commited on
Commit
ee553b9
·
verified ·
1 Parent(s): 1e412e4

Update app.js

Browse files
Files changed (1) hide show
  1. app.js +43 -0
app.js CHANGED
@@ -140,6 +140,49 @@ async function copyText() {
140
  } catch (_) {}
141
  }
142
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
143
  // ── Status bar ────────────────────────────────────────────────────────────────
144
  function setStatus(type, text) {
145
  const bar = document.getElementById("statusBar");
 
140
  } catch (_) {}
141
  }
142
 
143
+ const _INSTRUCTION_TEMPLATE = `Bạn là một trợ lý AI chuyên nghiệp về biên tập nội dung pháp luật. Nhiệm vụ của bạn là sửa lỗi chính tả và định dạng lại văn bản phụ đề (transcript) của video dựa trên các quy tắc nghiêm ngặt sau:
144
+
145
+ ### 1. QUY TẮC NGUYÊN VĂN (BẮT BUỘC)
146
+ - GIỮ NGUYÊN VĂN TỪNG CÂU TỪNG CHỮ của bản phụ đề được cung cấp.
147
+ - KHÔNG TÓM TẮT, không cắt xén, không tự ý viết lại câu theo ý mình, không chuyển thành dạng danh sách bài viết (trừ khi văn bản gốc đang liệt kê điều khoản 1, 2, 3...).
148
+
149
+ ### 2. QUY TẮC SỬA LỖI & CHUẨN HÓA KHÁCH QUAN
150
+ - Sửa các lỗi chính tả do công cụ nhận diện giọng nói tự động (AI speech-to-text) nhận diện sai từ đồng âm (Ví dụ: "chữa thuế" -> "chịu thuế", "bài hát xã hội" -> "bảo hiểm xã hội").
151
+ - Nếu trong phụ đề có số liệu bị nhận diện sai lệch so với thực tế phát âm của video (Ví dụ: nghe nhầm 135 thành 155), hãy đính chính lại cho đúng với âm thanh trong video.
152
+ - Thêm dấu câu đầy đủ (chấm, phẩy, hai chấm, viết hoa đầu câu) để ngắt câu mạch lạc, rõ nghĩa.
153
+ - Giữ nguyên các đoạn quảng cáo chèn giữa video của kênh (nếu có trong phụ đề).
154
+
155
+ ### 3. BỔ SUNG THÔNG TIN VĂN BẢN PHÁP LUẬT
156
+ - Khi trong phụ đề nhắc đến một văn bản pháp luật (Nghị quyết, Nghị định, Thông tư...) nhưng chỉ có số mà thiếu ký hiệu hoặc năm ban hành, hãy tra cứu nhanh để bổ sung đầy đủ ký hiệu chuẩn pháp lý (Ví dụ: "Nghị quyết 278 ngày 13 tháng 9" -> "Nghị quyết số 278/NQ-CP ngày 13 tháng 9 năm 2025").
157
+
158
+ ### 4. ĐỊNH DẠNG ĐẦU RA
159
+ - Xuất kết quả duy nhất dưới dạng một khối mã Markdown (Code block) chứa văn bản hoàn chỉnh để người dùng dễ sao chép.
160
+
161
+ ---
162
+ ### THÔNG TIN CẦN XỬ LÝ:
163
+ - URL Video: {{URL}}
164
+ - Nội dung phụ đề gốc:
165
+ {{SCRIPT}}`;
166
+
167
+ async function generateInstruction() {
168
+ const script = document.getElementById("transcriptArea").value.trim();
169
+ const url = _currentVideoUrl || "";
170
+ if (!script && !url) return;
171
+
172
+ const prompt = _INSTRUCTION_TEMPLATE
173
+ .replace("{{URL}}", url || "[Chèn link video vào đây]")
174
+ .replace("{{SCRIPT}}", script || "[Dán đoạn phụ đề cần sửa vào đây]");
175
+
176
+ try {
177
+ await navigator.clipboard.writeText(prompt);
178
+ const btn = document.getElementById("genInstrBtn");
179
+ btn.innerHTML = '<i class="ri-check-line"></i> Đã copy!';
180
+ setTimeout(() => {
181
+ btn.innerHTML = '<i class="ri-sparkling-line"></i> Gen Instruction';
182
+ }, 2000);
183
+ } catch (_) {}
184
+ }
185
+
186
  // ── Status bar ────────────────────────────────────────────────────────────────
187
  function setStatus(type, text) {
188
  const bar = document.getElementById("statusBar");