metadata
library_name: transformers
tags:
- text-generation-inference
- transformers
- unsloth
- mistral
- trl
license: apache-2.0
language:
- en
- vi
base_model: Viet-Mistral/Vistral-7B-Chat
Model Description
This model was fine-tuned on Vistral-7B-chat for function calling.
Usage
You can find GGUF model here: https://huggingface.co/hiieu/Vistral-7B-Chat-function-calling-gguf
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained('hiieu/Vistral-7B-Chat-function-calling')
model = AutoModelForCausalLM.from_pretrained(
'hiieu/Vistral-7B-Chat-function-calling',
torch_dtype=torch.bfloat16, # change to torch.float16 if you're using V100
device_map="auto",
use_cache=True,
)
functions_metadata = [
{
"type": "function",
"function": {
"name": "get_temperature",
"description": "get temperature of a city",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "name"
}
},
"required": [
"city"
]
}
}
}
]
conversation = [
{"role": "system", "content": f"""Bạn là một trợ lý hữu ích có quyền truy cập vào các chức năng sau. Sử dụng chúng nếu cần -\n{str(functions_metadata)} Để sử dụng các chức năng này, hãy phản hồi với:\n<functioncall> {{\\"name\\": \\"function_name\\", \\"arguments\\": {{\\"arg_1\\": \\"value_1\\", \\"arg_1\\": \\"value_1\\", ...}} }} </functioncall>\n\nTrường hợp đặc biệt bạn phải xử lý:\n - Nếu không có chức năng nào khớp với yêu cầu của người dùng, bạn sẽ phản hồi một cách lịch sự rằng bạn không thể giúp được.""" },
{"role": "user", "content": "Thời tiết ở Hà Nội đang là bao nhiêu độ"},
{"role": "assistant", "content": """<functioncall> {"name": "get_temperature", "arguments": '{"city": "Hà Nội"}'} </functioncall>"""},
{"role": "user", "content": """<function_response> {"temperature" : "20 C"} </function_response>"""},
]
input_ids = tokenizer.apply_chat_template(conversation, return_tensors="pt").to(model.device)
out_ids = model.generate(
input_ids=input_ids,
max_new_tokens=768,
do_sample=True,
top_p=0.95,
top_k=40,
temperature=0.1,
repetition_penalty=1.05,
)
assistant = tokenizer.batch_decode(out_ids[:, input_ids.size(1): ], skip_special_tokens=True)[0].strip()
print("Assistant: ", assistant)
# >> Assistant: Thời tiết ở Hà Nội hiện tại là khoảng 20 độ C.
Uploaded model
- Developed by: hiieu
- License: apache-2.0
- Finetuned from model : Viet-Mistral/Vistral-7B-Chat
This mistral model was trained 2x faster with Unsloth and Huggingface's TRL library.