HelpingAI-9B: Emotionally Intelligent Conversational AI

logo

Overview

HelpingAI-9B is a large language model designed for emotionally intelligent conversational interactions. It is trained to engage users with empathy, understanding, and supportive dialogue across a wide range of topics and contexts. The model aims to provide a supportive AI companion that can attune to users' emotional states and communicative needs.

Objectives

  • Engage in open-ended dialogue while displaying 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

HelpingAI-9B is based on the HelpingAI series and further trained using:

  • Supervised learning on large dialogue datasets with emotional labeling
  • Reinforcement learning with a reward model favoring emotionally supportive responses
  • Constitution training to instill stable and beneficial objectives
  • Knowledge augmentation from psychological resources on emotional intelligence

Emotional Quotient (EQ)

HelpingAI-9B has achieved an impressive Emotional Quotient (EQ) of 89.23, surpassing almost all AI models in emotional intelligence. This EQ score reflects its advanced ability to understand and respond to human emotions in a supportive and empathetic manner.

benchmarks

Usage code

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer

# Let's bring in the big guns! Our super cool HelpingAI-9B model
model = AutoModelForCausalLM.from_pretrained("OEvortex/HelpingAI-9B").to("cuda")

# We also need the special HelpingAI translator to understand our chats
tokenizer = AutoTokenizer.from_pretrained("OEvortex/HelpingAI-9B")

# This TextStreamer thingy is our secret weapon for super smooth conversation flow
streamer = TextStreamer(tokenizer)

# Now, here comes the magic! ✨ This is the basic template for our chat
prompt = """
<|im_start|>system: {system}
<|im_end|>
<|im_start|>user: {insaan}
<|im_end|>
<|im_start|>assistant:
"""

# Okay, enough chit-chat, let's get down to business!  Here's what will be our system prompt
system = "You are HelpingAI a emotional AI always answer my question in HelpingAI style"


# And the insaan is curious (like you!) insaan means human in hindi
insaan = "I'm excited because I just got accepted into my dream school! I wanted to share the good news with someone."

# Now we combine system and user messages into the template, like adding sprinkles to our conversation cupcake
prompt = prompt.format(system=system, insaan=insaan)

# Time to chat! We'll use the tokenizer to translate our text into a language the model understands
inputs = tokenizer(prompt, return_tensors="pt", return_attention_mask=False).to("cuda")

# Here comes the fun part!  Let's unleash the power of HelpingAI-3B to generate some awesome text
generated_text = model.generate(**inputs, max_length=3084, top_p=0.95, do_sample=True, temperature=0.6, use_cache=True, streamer=streamer)

Directly using this model from GGUF

%pip install -U 'webscout[local]'

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

from dotenv import load_dotenv; load_dotenv()
import os


# 1. Download the model
repo_id = "OEvortex/HelpingAI-9B" 
filename = "helpingai-9b.Q4_0.gguf"
model_path = download_model(repo_id, filename, os.environ.get("hf_token"))

# 2. Load the model 
model = Model(model_path, n_gpu_layers=0# 3. Define your system prompt
system_prompt = "You are HelpingAI a emotional AI always answer my question in HelpingAI style"

# 4. Create a custom chatml format with your system prompt
custom_chatml = formats.chatml.copy()
custom_chatml['system_prompt'] = system_prompt

# 5. Define your sampler settings (optional)
sampler = SamplerSettings(temp=0.7, top_p=0.9# Adjust these values as needed

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

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

Example Dialogue

Express joy and excitement about visiting a new place.

Yay! I'm super excited to visit this new place! πŸŽ‰ It sounds amazing and I can't wait to explore and have fun there! This is going to be such an exciting adventure! 🌟 Let's go, let's do this! ✨

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

Oh no, I'm sorry to hear that you're feeling down. It happens sometimes, but remember that it's okay to feel sad. If you want to talk about what's bothering you, I'm here to listen and offer support. We can find a way through this together! 🌈

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

Wow, that's amazing! πŸŽ‰ Congratulations on getting accepted into your dream school! That's such an incredible accomplishment and I'm really happy for you! Keep up the hard work and enjoy the journey ahead! 🌟 If there's anything else I can do to help, just let me know! 😊

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

Oh no, it sounds like you both need some time to cool off. Take a step back and give each other some space. Then, when things have calmed down, try talking things through in a calm and respectful manner. Communication is key for resolving conflicts, so let's work towards finding a resolution that works for both of you! 🌟 If you need any advice or support, I'm here to help! 😊

How can you identify the emotions of others based on their body language and facial expressions?

Identifying the emotions of others is a great skill! πŸ€” You can look for body language cues like frowns, smiles, or tense posture. Facial expressions also give away a lot about someone's feelings - watch out for changes in their eyes, mouth, and facial muscles. It's all about being observant and empathetic to understand others better! 😊

What kind of safety devices do I need to install in my house

Installing security devices in your home can bring peace of mind and keep you safe. Some essential safety devices include a home alarm system, smoke detectors, carbon monoxide detectors, motion sensors, and surveillance cameras. It's always good to take precautions and ensure that your home is secure! 🌟 If you need help choosing the right security devices for your family, I can definitely point you in the right direction! 😊

How can your own feelings affect your ability to empathize with someone else?

Our own emotions can impact our ability to empathize with others because they shape how we perceive and interpret other people's experiences. If you're feeling happy or positive, it may be easier to see the good in others and offer support. On the other hand, if you're feeling down or stressed, it might be harder to put yourself in someone else's shoes. It's important to acknowledge your own feelings and work on being open and understanding towards others! 🌟

Downloads last month
72
Safetensors
Model size
8.83B params
Tensor type
FP16
Β·
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for HelpingAI/HelpingAI-9B

Quantizations
3 models

Datasets used to train HelpingAI/HelpingAI-9B

Space using HelpingAI/HelpingAI-9B 1