NghiemAbe/Legal-Doc2Query
131
1---2language: vi3datasets:4- NghiemAbe/doc2query5widget:6- text: >-7 1. Bố trí lực lượng tham gia tuần tra, kiểm soát trật tự, an toàn giao thông8 theo kế hoạch. 2. Thống kê, báo cáo các vụ, việc vi phạm pháp luật, tai nạn9 giao thông đường bộ; kết quả tuần tra, kiểm soát và xử lý vi phạm hành chính10 về trật tự, an toàn giao thông đường bộ theo sự phân công trong kế hoạch. 3.11 Trường hợp không có lực lượng Cảnh sát giao thông đi cùng thì lực lượng Cảnh12 sát khác và Công an xã thực hiện việc tuần tra, kiểm soát theo kế hoạch đã13 được cấp có thẩm quyền phê duyệt. 4. Lực lượng Công an xã chỉ được tuần tra,14 kiểm soát trên các tuyến đường liên xã, liên thôn thuộc địa bàn quản lý và15 xử lý các hành vi vi phạm trật tự, an toàn giao thông sau: điều khiển xe mô16 tô, xe gắn máy không đội mũ bảo hiểm, chở quá số người quy định, chở hàng17 hóa cồng kềnh; đỗ xe ở lòng đường trái quy định; điều khiển phương tiện18 phóng nhanh, lạng lách, đánh võng, tháo ống xả, không có gương chiếu hậu19 hoặc chưa đủ tuổi điều khiển phương tiện theo quy định của pháp luật và các20 hành vi vi phạm hành lang an toàn giao thông đường bộ như họp chợ dưới lòng21 đường, lấn chiếm hành lang an toàn giao thông. Nghiêm cấm việc Công an xã22 dừng xe, kiểm soát trên các tuyến quốc lộ, tỉnh lộ.23license: apache-2.024tags:25- legal26pipeline_tag: text2text-generation27---28 29# NghiemAbe/Law-Doc2Query30 31This is a [doc2query](https://arxiv.org/abs/1904.08375) model based on mT5 (also known as [docT5query](https://cs.uwaterloo.ca/~jimmylin/publications/Nogueira_Lin_2019_docTTTTTquery-v2.pdf)).32 33It can be used for:34- **Document expansion**: You generate for your paragraphs 20-40 queries and index the paragraphs and the generates queries in a standard BM25 index like Elasticsearch, OpenSearch, or Lucene. The generated queries help to close the lexical gap of lexical search, as the generate queries contain synonyms. Further, it re-weights words giving important words a higher weight even if they appear seldomn in a paragraph. In our [BEIR](https://arxiv.org/abs/2104.08663) paper we showed that BM25+docT5query is a powerful search engine. In the [BEIR repository](https://github.com/beir-cellar/beir) we have an example how to use docT5query with Pyserini.35- **Domain Specific Training Data Generation**: It can be used to generate training data to learn an embedding model. In our [GPL-Paper](https://arxiv.org/abs/2112.07577) / [GPL Example on SBERT.net](https://www.sbert.net/examples/domain_adaptation/README.html#gpl-generative-pseudo-labeling) we have an example how to use the model to generate (query, text) pairs for a given collection of unlabeled texts. These pairs can then be used to train powerful dense embedding models.36 37## Usage38```python39from transformers import AutoTokenizer, AutoModelForSeq2SeqLM40import torch41 42model_name = 'NghiemAbe/Law-Doc2Query'43tokenizer = AutoTokenizer.from_pretrained(model_name)44model = AutoModelForSeq2SeqLM.from_pretrained(model_name)45 46text = "1. Bố trí lực lượng tham gia tuần tra, kiểm soát trật tự, an toàn giao thông theo kế hoạch. 2. Thống kê, báo cáo các vụ, việc vi phạm pháp luật, tai nạn giao thông đường bộ; kết quả tuần tra, kiểm soát và xử lý vi phạm hành chính về trật tự, an toàn giao thông đường bộ theo sự phân công trong kế hoạch. 3. Trường hợp không có lực lượng Cảnh sát giao thông đi cùng thì lực lượng Cảnh sát khác và Công an xã thực hiện việc tuần tra, kiểm soát theo kế hoạch đã được cấp có thẩm quyền phê duyệt. 4. Lực lượng Công an xã chỉ được tuần tra, kiểm soát trên các tuyến đường liên xã, liên thôn thuộc địa bàn quản lý và xử lý các hành vi vi phạm trật tự, an toàn giao thông sau: điều khiển xe mô tô, xe gắn máy không đội mũ bảo hiểm, chở quá số người quy định, chở hàng hóa cồng kềnh; đỗ xe ở lòng đường trái quy định; điều khiển phương tiện phóng nhanh, lạng lách, đánh võng, tháo ống xả, không có gương chiếu hậu hoặc chưa đủ tuổi điều khiển phương tiện theo quy định của pháp luật và các hành vi vi phạm hành lang an toàn giao thông đường bộ như họp chợ dưới lòng đường, lấn chiếm hành lang an toàn giao thông. Nghiêm cấm việc Công an xã dừng xe, kiểm soát trên các tuyến quốc lộ, tỉnh lộ."47 48 49def create_queries(para):50 input_ids = tokenizer.encode(para, return_tensors='pt')51 with torch.no_grad():52 # Here we use top_k / top_k random sampling. It generates more diverse queries, but of lower quality53 sampling_outputs = model.generate(54 input_ids=input_ids,55 max_length=64,56 do_sample=True,57 top_p=0.95,58 top_k=10, 59 num_return_sequences=560 )61 62 # Here we use Beam-search. It generates better quality queries, but with less diversity63 beam_outputs = model.generate(64 input_ids=input_ids, 65 max_length=64, 66 num_beams=5, 67 no_repeat_ngram_size=2, 68 num_return_sequences=5, 69 early_stopping=True70 )71 72 73 print("Paragraph:")74 print(para)75 76 print("\nBeam Outputs:")77 for i in range(len(beam_outputs)):78 query = tokenizer.decode(beam_outputs[i], skip_special_tokens=True)79 print(f'{i + 1}: {query}')80 81 print("\nSampling Outputs:")82 for i in range(len(sampling_outputs)):83 query = tokenizer.decode(sampling_outputs[i], skip_special_tokens=True)84 print(f'{i + 1}: {query}')85 86create_queries(text)87 88Beam Outputs:891: Trách nhiệm của Công an xã trong việc tuần tra, kiểm soát giao thông đường bộ được quy định như thế nào?902: Trách nhiệm của Công an xã trong việc tuần tra, kiểm soát trật tự, an toàn giao thông là gì?913: Công an xã có được tuần tra, kiểm soát hành lang an toàn giao thông không?924: Công an xã có được tuần tra, kiểm soát trên các tuyến đường liên thôn không?935: Lực lượng Công an xã có được tuần tra, kiểm soát trên các tuyến đường liên thôn không?94 95Sampling Outputs:961: Tiêu chuẩn về hành vi vi phạm hành lang an toàn giao thbuffer được quy định như thế nào?972: Trách nhiệm của Công an xã trong việc xử lý các hành vi vi phạm hành chính về đường bộ là gì?983: Trách nhiệm của lực lượng Cảnh sát giao thông đối với tình trạng tai nạn giao thông (07/2016) được quy định như thế nào?994: Lực lượng Công an xã có được tuần tra trong các tuyến đường lớn, liên thôn không?1005: Cảnh sát giao thông có Nordland dừng xe không?101```102 103**Note:** `model.generate()` is non-deterministic for top_k/top_n sampling. It produces different queries each time you run it.104 105## Training106This model fine-tuned [doc2query/msmarco-vietnamese-mt5-base-v1](https://huggingface.co/doc2query/msmarco-vietnamese-mt5-base-v1/) for 4k training steps (4 epochs on the 2k5 training pairs from Legal).