pad commited on
Commit
11cf365
·
verified ·
1 Parent(s): dafc933

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +48 -8
README.md CHANGED
@@ -1,22 +1,62 @@
1
  ---
2
- base_model: unsloth/mistral-nemo-instruct-2407-bnb-4bit
 
3
  language:
4
  - en
5
  license: apache-2.0
6
  tags:
7
  - text-generation-inference
8
  - transformers
9
- - unsloth
10
  - mistral
11
  - trl
 
 
12
  ---
13
 
14
- # Uploaded model
 
15
 
16
- - **Developed by:** fusionbase
17
- - **License:** apache-2.0
18
- - **Finetuned from model :** unsloth/mistral-nemo-instruct-2407-bnb-4bit
19
 
20
- This mistral model was trained 2x faster with [Unsloth](https://github.com/unslothai/unsloth) and Huggingface's TRL library.
 
 
21
 
22
- [<img src="https://raw.githubusercontent.com/unslothai/unsloth/main/images/unsloth%20made%20with%20love.png" width="200"/>](https://github.com/unslothai/unsloth)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ---
2
+ base_model:
3
+ - mistralai/Mistral-Nemo-Instruct-2407
4
  language:
5
  - en
6
  license: apache-2.0
7
  tags:
8
  - text-generation-inference
9
  - transformers
 
10
  - mistral
11
  - trl
12
+ - cot
13
+ - guidance
14
  ---
15
 
16
+ # fusion-guide
17
+ [![6ea83689-befb-498b-84b9-20ba406ca4e7.png](https://i.postimg.cc/dtgR40Lz/6ea83689-befb-498b-84b9-20ba406ca4e7.png)](https://postimg.cc/8jBrCNdH)
18
 
19
+ # Model Overview
20
+ fusion-guide is an advanced AI reasoning system built on the Mistral-Nemo 12bn architecture. It employs a two-model approach to enhance its problem-solving capabilities. This method involves a "Guide" model that generates a structured, step-by-step plan to solve a given task. This plan is then passed to the primary "Response" model, which uses this guidance to craft an accurate and comprehensive response.
 
21
 
22
+ # Model and Data
23
+ fusion-guide is fine-tuned on a custom dataset consisting of task-based prompts in both English (90%) and German (10%). The tasks vary in complexity, including scenarios designed to be challenging or unsolvable, to enhance the model's ability to handle ambiguous situations. Each training sample follows the structure: prompt => guidance, teaching the model to break down complex tasks systematically.
24
+ Read a detailed description and evaluation of the model here: https://app.gitbook.com/
25
 
26
+ ### Prompt format
27
+ The prompt must be enclosed within <guidance_prompt>{PROMPT}</guidance_prompt> tags, following the format below:
28
+
29
+ <guidance_prompt>Count the number of 'r's in the word 'strawberry,' and then write a Python script that checks if an arbitrary word contains the same number of 'r's.</guidance_prompt>
30
+
31
+ # Usage
32
+ fusion-guide can be used with vLLM and other Mistral-Nemo-compatible inference engines. Below is an example of how to use it with unsloth:
33
+
34
+ ```python
35
+ from unsloth import FastLanguageModel
36
+
37
+ max_seq_length = 8192 * 1 # Choose any! We auto support RoPE Scaling internally!
38
+ dtype = None # None for auto detection. Float16 for Tesla T4, V100, Bfloat16 for Ampere+
39
+ load_in_4bit = False # Use 4bit quantization to reduce memory usage. Can be False.
40
+
41
+ model, tokenizer = FastLanguageModel.from_pretrained(
42
+ model_name="fusionbase/fusion-guide-12b-0.1",
43
+ max_seq_length=max_seq_length,
44
+ dtype=dtype,
45
+ load_in_4bit=load_in_4bit
46
+ )
47
+
48
+ FastLanguageModel.for_inference(model) # Enable native 2x faster inference
49
+
50
+ messages = [{"role": "user", "content": "<guidance_prompt>Count the number of 'r's in the word 'strawberry,' and then write a Python script that checks if an arbitrary word contains the same number of 'r's.</guidance_prompt>"}]
51
+ inputs = tokenizer.apply_chat_template(
52
+ messages,
53
+ tokenize=True,
54
+ add_generation_prompt=True, # Must add for generation
55
+ return_tensors="pt",
56
+ ).to("cuda")
57
+
58
+ outputs = model.generate(input_ids=inputs, max_new_tokens=2000, use_cache=True, early_stopping=True, temperature=0)
59
+ result = tokenizer.batch_decode(outputs)
60
+
61
+ print(result[0][len(input_data):].replace("</s>", ""))
62
+ ```