transformers safetensors mistral text-generation conversational license:apache-2.0 autotrain_compatible text-generation-inference endpoints_compatible region:us
---
license: apache-2.0
---
## Usage
This model is finetuned from [Viet-Mistral/Vistral-7B-Chat](https://huggingface.co/Viet-Mistral/Vistral-7B-Chat).
```python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
system_prompt: str = "Bạn là một trợ lý tiếng Việt nhiệt tình và trung thực. Hãy luôn trả lời một cách hữu ích nhất và chính xác nhất có thể, tránh việc đưa ra thông tin sai lệch."
system_prompt += "Khái niệm bài viết tiêu cực: các bài viết tiêu cực được hiểu là bài viết không đúng sự thật, hoặc dựa trên những sự việc đã và đang xảy ra nhưng đã bị xuyên tạc; "
system_prompt += "những bài viết chỉ trích, đánh vào những khuyết điểm còn tồn đọng nhưng không nhằm mục đích góp ý xây dựng mà nhằm mục đích định hướng người đọc, khơi gợi hiềm khích đối với nhà nước, với chế độ; những bài viết bôi xấu xã hội, văn hóa người Việt, bôi nhọ danh dự của các cá nhân hoặc cơ quan nhà nước. " 
system_prompt += "Đặc điểm chung của những bài viết này là thường có ít tính khách quan, thể hiện rất nhiều những ý kiến chủ quan, ngôn từ thù ghét, không có lòng tin với chính quyền, luôn kêu gọi, kích động người đọc quay lại chống phá nhà nước, v.v."
system_prompt += "Khái niệm bài viết tích cực: các bài viết tích cực được hiểu là bài viết ca ngợi Đảng, Bác Hồ, Nhà nước, chính quyền Việt Nam; các bài viết ca ngợi đất nước, con người Việt Nam."
system_prompt += "Các bài viết tích cực cũng có thể là bài viết tập trung khẳng định, củng cố vai trò lãnh đạo của đảng, thể hiện sự tin tưởng, ủng hộ vào đường lối, mục tiêu của đảng; các bài viết phân tích, phản bác các quan điểm sai trái, thù địch chống phá đảng, góp phần bảo vệ nền tảng tư tưởng, định hướng dư luận xã hội, củng cố hệ thống chính trị."
system_prompt += "Khái niệm bài viết trung lập: các bài viết trung lập là các bài viết đưa tin tức, sự kiện, kể chuyện, không chia sẻ bất kỳ quan điểm cá nhân nào."
model_name = "salforis/vistral_sentiment"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype = torch.bfloat16,
    device_map = "auto",
    use_cache = True,
)


content = """
Dân trí) - Xuất sắc đánh bại đối thủ người Phần Lan Vilma Viitanmen, nữ võ sĩ Việt Nam Hà Thị Linh giành vé dự Olympic Paris 2024.
Tối 2/6, Hà Thị Linh bước vào trận play-off tranh vé dự Olympic 2024 gặp đối thủ người Phần Lan - Vilma Viitanmen.
Đây là cơ hội cuối cùng để boxing Việt Nam tìm thêm vé tới Thế vận hội.
Trước đối thủ mạnh, nữ võ sĩ Việt Nam chơi rất tự tin, phòng thủ kín kẽ và khi ra đòn có sự chính xác cao, giành chiến thắng chung cuộc với tỷ số 4-1 (30/27, 29/27, 28/29, 29/28, 29/28).
Chiến thắng đồng nghĩa Hà Thị Linh xếp hạng 3 nội dung 60kg nữ tại giải vòng loại Olympic ở Bangkok (Thái Lan) nhưng quan trọng hơn cô giành suất chính thức dự Olympic Paris 2024.
"""

conversation = [{"role": "system", "content": system_prompt }]
# while True:
human = (f"Câu hỏi: Bài viết sau đây là Tiêu cực, Tích cực hay Trung lập?:/n{content}")
conversation.append({"role": "user", "content": human })
input_ids = tokenizer.apply_chat_template(conversation, return_tensors="pt").to(model.device) ### nếu dùng GPU
with torch.no_grad():
    out_ids = model.generate(
        input_ids = input_ids,
        max_new_tokens = 1024,
        top_p = 1.0,
        top_k = 40,
        do_sample = True,
        temperature = 0.5,
        repetition_penalty = 1.0,
        eos_token_id = tokenizer.eos_token_id,
        use_cache = True,
        )
    assistant = tokenizer.batch_decode(out_ids[:, input_ids.size(1): ], skip_special_tokens=True)[0].strip()
    print("Kết quả: ", assistant)
```