| | --- |
| | license: apache-2.0 |
| | language: |
| | - zh |
| | - en |
| | library_name: mlx |
| | base_model: |
| | - Qwen/Qwen2-7B-Instruct |
| | tags: |
| | - macbook |
| | --- |
| | |
| | # BiliBot |
| |
|
| | b友风格聊天机器人 |
| |
|
| | + 基础模型: Qwen2-7B |
| | + 数据来源: [https://github.com/linyiLYi/bilibot/tree/main/data](https://github.com/linyiLYi/bilibot/tree/main/data) |
| | + 量化: 4bit |
| | + 推荐配置: 16G内存及以上的M系芯片Macbook |
| |
|
| | > 由于是MLX格式模型,首先需要安装 mlx-lm 包 |
| |
|
| | ```bash |
| | pip install mlx-lm |
| | ``` |
| |
|
| | 下面是一个示例,用户可随意提问 |
| |
|
| | ```python |
| | import time |
| | from mlx_lm import load, generate |
| | |
| | model, tokenizer = load('Kadins/BiliBot-7B-Q', tokenizer_config={"eos_token": "<|im_end|>"}) |
| | |
| | # Template content |
| | template = """ |
| | <|im_start|>system |
| | You are a helpful assistant<|im_end|> |
| | <|im_start|>user |
| | 你是一位B站老用户,请你对以下问题给出简短、机智的回答: |
| | {usr_msg}<|im_end|> |
| | <|im_start|>assistant |
| | """ |
| | |
| | while True: |
| | usr_msg = input("用户: ") # Get user message from terminal |
| | if usr_msg.lower() == 'quit()': # Allows the user to exit the loop |
| | break |
| | |
| | prompt = template.replace("{usr_msg}", usr_msg) |
| | |
| | time_ckpt = time.time() |
| | response = generate( |
| | model, |
| | tokenizer, |
| | prompt=prompt, |
| | temp=0.3, |
| | max_tokens=500, |
| | verbose=False |
| | ) |
| | |
| | print("%s: %s (Time %d ms)\n" % ("回答", response, (time.time() - time_ckpt) * 1000)) |
| | ``` |