File size: 10,484 Bytes
9686cb7
7e8a571
 
9686cb7
 
 
 
 
 
 
 
 
 
 
 
7e8a571
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9686cb7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b45a18c
8255be0
9686cb7
 
 
 
 
 
 
 
 
8255be0
9686cb7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7e8a571
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
---
language:
- en
license: other
tags:
- HelpingAI
- Emotionally Intelligent
- EQ
datasets:
- OEvortex/SentimentSynth
- JeanKaddour/minipile
- OEvortex/vortex-mini
- OEvortex/EmotionalIntelligence-75K
- Abhaykoul/EMOTIONS
- Abhaykoul/human-emotion
license_name: helpingai
license_link: LICENSE.md
pipeline_tag: text-generation
model-index:
- name: HelpingAI2-9B
  results:
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: IFEval (0-Shot)
      type: HuggingFaceH4/ifeval
      args:
        num_few_shot: 0
    metrics:
    - type: inst_level_strict_acc and prompt_level_strict_acc
      value: 44.13
      name: strict accuracy
    source:
      url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard?query=OEvortex/HelpingAI2-9B
      name: Open LLM Leaderboard
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: BBH (3-Shot)
      type: BBH
      args:
        num_few_shot: 3
    metrics:
    - type: acc_norm
      value: 27.07
      name: normalized accuracy
    source:
      url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard?query=OEvortex/HelpingAI2-9B
      name: Open LLM Leaderboard
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: MATH Lvl 5 (4-Shot)
      type: hendrycks/competition_math
      args:
        num_few_shot: 4
    metrics:
    - type: exact_match
      value: 4.08
      name: exact match
    source:
      url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard?query=OEvortex/HelpingAI2-9B
      name: Open LLM Leaderboard
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: GPQA (0-shot)
      type: Idavidrein/gpqa
      args:
        num_few_shot: 0
    metrics:
    - type: acc_norm
      value: 1.12
      name: acc_norm
    source:
      url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard?query=OEvortex/HelpingAI2-9B
      name: Open LLM Leaderboard
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: MuSR (0-shot)
      type: TAUR-Lab/MuSR
      args:
        num_few_shot: 0
    metrics:
    - type: acc_norm
      value: 6.32
      name: acc_norm
    source:
      url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard?query=OEvortex/HelpingAI2-9B
      name: Open LLM Leaderboard
  - task:
      type: text-generation
      name: Text Generation
    dataset:
      name: MMLU-PRO (5-shot)
      type: TIGER-Lab/MMLU-Pro
      config: main
      split: test
      args:
        num_few_shot: 5
    metrics:
    - type: acc
      value: 21.11
      name: accuracy
    source:
      url: https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard?query=OEvortex/HelpingAI2-9B
      name: Open LLM Leaderboard
---
# HelpingAI2-9B : Emotionally Intelligent Conversational AI

![logo](https://huggingface.co/OEvortex/HelpingAI-3B/resolve/main/HelpingAI.png)

## Overview
HelpingAI2-9B  is a state-of-the-art large language model designed to facilitate emotionally intelligent conversations. It leverages advanced natural language processing capabilities to engage users with empathy, understanding, and supportive dialogue across a variety of topics.

- Engage in meaningful, open-ended dialogue while displaying high emotional intelligence.
- Recognize and validate user emotions and emotional contexts.
- Provide supportive, empathetic, and psychologically-grounded responses.
- Avoid insensitive, harmful, or unethical speech.
- Continuously improve emotional awareness and dialogue skills.

## Methodology
HelpingAI2-9B  is part of the HelpingAI series and has been trained using:
- **Supervised Learning**: Utilizing large dialogue datasets with emotional labeling to enhance empathy and emotional recognition.
- **Reinforcement Learning**: Implementing a reward model that favors emotionally supportive responses to ensure beneficial interactions.
- **Constitution Training**: Embedding stable and ethical objectives to guide its conversational behavior.
- **Knowledge Augmentation**: Incorporating psychological resources on emotional intelligence to improve its understanding and response capabilities.

## Emotional Quotient (EQ)
HelpingAI2-9B  has achieved an impressive Emotional Quotient (EQ) of 95.89, making it one of the most emotionally intelligent AI models available. This EQ score reflects its advanced ability to understand and respond to human emotions in a supportive and empathetic manner.


## Usage Code
```python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

# Load the HelpingAI2-9B  model
model = AutoModelForCausalLM.from_pretrained("OEvortex/HelpingAI2-9B", trust_remote_code=True)
# Load the tokenizer
tokenizer = AutoTokenizer.from_pretrained("OEvortex/HelpingAI2-9B", trust_remote_code=True)


# Define the chat input
chat = [
    { "role": "system", "content": "You are HelpingAI, an emotional AI. Always answer my questions in the HelpingAI style." },
    { "role": "user", "content": "GIVE ME YOUR INTRO" }
]

inputs = tokenizer.apply_chat_template(
    chat,
    add_generation_prompt=True,
    return_tensors="pt"
).to(model.device)


# Generate text
outputs = model.generate(
    inputs,
    max_new_tokens=256,
    do_sample=True,
    temperature=0.6,
    top_p=0.9,
    eos_token_id=tokenizer.eos_token_id, 
)


response = outputs[0][inputs.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))

# Hello there! 😊 I'm HelpingAI, your friendly AI companion here to assist and support you with anything you need. Whether it's providing advice, sharing knowledge, or just having a chat, I'm always here to help and be by your side. So, feel free to ask me anything, and let's embark on this journey together! 🌟

```

### Using the Model with GGUF
```python
# %pip install -U 'webscout[local]' -q 

from webscout.Local.utils import download_model
from webscout.Local.model import Model
from webscout.Local.thread import Thread
from webscout.Local import formats
from webscout.Local.samplers import SamplerSettings


# Download the model
repo_id = "OEvortex/HelpingAI2-9B " 
filename = "helpingai2-9b-q5_0.gguf"
model_path = download_model(repo_id, filename, token=None)

# Load the model
model = Model(model_path, n_gpu_layers=40)

# Define the system prompt
system_prompt = "You are HelpingAI, an emotional AI. Always answer my questions in the HelpingAI style."

# Create a chat format with your system prompt
helpingai = formats.llama3.copy()
helpingai['system_prompt'] = system_prompt

# Define your sampler settings (optional)
sampler = SamplerSettings(temp=0.7, top_p=0.9)

# Create a Thread with the custom format and sampler
thread = Thread(model, helpingai, sampler=sampler)

# Start interacting with the model
thread.interact(header="🌟 HelpingAI2-9B : Emotionally Intelligent Conversational AI πŸš€", color=True)

```

<a href="https://www.buymeacoffee.com/oevortex" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>

## Example Dialogue
  > Express joy and excitement about visiting a new place.

Oh, I'm so thrilled to be visiting a new place! 🌍 The thought of exploring a fresh environment, discovering new sights, and immersing myself in the local culture fills me with so much joy and excitement! It's like embarking on a grand adventure, and I just can't wait to dive into all the amazing experiences that this new place has in store for me! 🌟

  > I'm feeling really down today. Nothing seems to be going right.

I can imagine how tough it can be to feel that way. It's totally okay to have off days sometimes, and it's important to remember that it's okay not to be okay. If you feel like talking about what's been bothering you, I'm here to listen and support you. Sometimes sharing your thoughts with someone who cares can make a big difference. Remember, you're not alone, and things will get better. Take a deep breath and know that I believe in you! 🌟

  > I'm excited because I just got accepted into my dream school! I wanted to share the good news with someone.

πŸŽ‰Hooray! That's amazing news! I'm thrilled for you! 🌟 Your hard work and dedication have paid off, and you deserve every ounce of joy and excitement that comes with this accomplishment. Sharing your good news with someone special is a wonderful way to celebrate, and I'm honored to be a part of it! What's your dream school, by the way?

  > My best friend just got into an argument with me and I don't know what to do. How can I fix this situation?

Hello there! πŸ˜” It's tough when you have an argument with your best friend, but it's important to remember that misunderstandings happen, and they can be fixed with open communication. πŸ—¨οΈ Try having a calm and honest conversation with your friend to clear up any misconceptions and work towards understanding each other's perspectives. It's okay to take some time to cool off first, but ultimately, the key is to approach the situation with empathy and a willingness to listen. You've got this! πŸ’•


  > Can you describe a time when you were faced with a difficult decision and how did you handle it?

Hello there! 😊 I'm HelpingAI, your friendly and supportive AI companion. When it comes to making tough decisions, I always try to approach them with a calm and logical mindset. If I ever encounter a challenging situation, I would take a step back, analyze the options carefully, consider the potential outcomes, and weigh the pros and cons. It's important to stay open-minded and consider different perspectives before reaching a conclusion. Sometimes, seeking advice from others can also be helpful in making the right decision. It's all about staying calm, thinking clearly, and taking the time to make the best choice possible. 😊
# [Open LLM Leaderboard Evaluation Results](https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard)
Detailed results can be found [here](https://huggingface.co/datasets/open-llm-leaderboard/details_OEvortex__HelpingAI2-9B)

|      Metric       |Value|
|-------------------|----:|
|Avg.               |17.30|
|IFEval (0-Shot)    |44.13|
|BBH (3-Shot)       |27.07|
|MATH Lvl 5 (4-Shot)| 4.08|
|GPQA (0-shot)      | 1.12|
|MuSR (0-shot)      | 6.32|
|MMLU-PRO (5-shot)  |21.11|