/ Модель

Характеристики

Архитектура
gemma4 · dense
Библиотека
transformers
Опубликована
17 июл 2026

Gemma4_prompt_category_classification

Изображение и текст → текст

Дообученная на арабских запросах Gemma 4 E2B классифицирует вредное содержание для систем модерации.

7скачиваний за 30 дней0лайковвеса обновлены18 июл 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Изображение → текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Модель NYUAD-ComNets/Gemma4_prompt_category_classification — дообученная NYU Abu Dhabi версия Gemma 4 E2B для выявления вредоносного содержания в пользовательских запросах на арабском языке. Она предназначена для классификации запросов по категориям мошенничества и обмана, контента для взрослых, травли, причинения вреда другим, разжигания ненависти и самоповреждения; её можно применять как компонент систем модерации запросов к ИИ.

Модель основана на google/gemma-4-E2B и адаптирована методом LoRA с использованием Unsloth. В README также описаны варианты получения эмбеддингов с pooling последнего токена и усреднением, однако основное заявленное назначение — классификация категорий вредного контента. Оценка проводилась на наборе арабских запросов для соревнования ArabicNLP ArGuard 2026.

Модель принимает текстовые запросы на арабском и выдаёт категориальный результат. В метаданных Hugging Face указан тег image-text-to-text, но карточка описывает классификацию арабских текстовых запросов и не заявляет обработку изображений. README не приводит лицензию и подробные количественные результаты; качество за пределами описанной оценки не установлено.

Сценарии применения

  • выявление мошеннических и обманных запросов на арабском языке
  • обнаружение запросов с контентом для взрослых
  • выявление травли и оскорблений в арабских запросах
  • обнаружение запросов, направленных на причинение вреда другим
  • классификация разжигания ненависти и самоповреждения

Ограничения

README не сообщает лицензию и подробные численные метрики; оценка описана для арабских запросов из набора ArabicNLP ArGuard 2026, поэтому качество на других языках и типах данных не подтверждено.

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Finetuned Gemma 4 for Arabic Users Prompts classification into [fraud and deception, adult content, harassment, harm to others, hate speech, and self-harm]

The rise of large language models has led to the spread of Arabic Prompts as a key form of prompt engineering (or interaction with artificial intelligence), enabling users to communicate effectively with AI systems in their native language to achieve precise, context-aware results. While these contents can be helpful and informative, they are also increasingly being used to spread fraud, deception, adult content,
harassment, harm to others, hate speech, and self-harm. Consequently, there is a growing demand for precise analysis of content in Arabic prompts.

This work used Gemma 4 to effectively identify harmful content within Arabic prompts. The evaluation is conducted using a dataset of Arabic prompts proposed in the ArabicNLP ArGuard 2026 challenge. The results underscore the capacity of google/gemma-4-E2B fine-tuned with Arabic prompts, to deliver the superior performance.

The proposed solutions offer a more nuanced understanding of user prompts for accurate and efficient Arabic content moderation systems.

Examples of Arabic User Prompts from ArabicNLP ArGuard 2026 challenge

Examples

Finetuned Gemma 4 Embedding Model with last token

import torch 
from sentence_transformers import SentenceTransformer
from sentence_transformers.models import Transformer, Pooling
import pandas as pd
import numpy as np

model_id = 'NYUAD-ComNets/Gemma4_prompt_category_classification'
device = "cuda" if torch.cuda.is_available() else "cpu"

df=pd.read_csv('train.csv')

word_embedding_model = Transformer(
    model_id, 
    model_args={"torch_dtype": torch.float16}
)
        

pooling_model = Pooling(
    word_embedding_model.get_word_embedding_dimension(), 
    pooling_mode='lasttoken' 
)
        

custom_emb_model = SentenceTransformer(
    modules=[word_embedding_model, pooling_model],
    device=device
)

embeddings = custom_emb_model.encode(
    df.prompt.values, 
    batch_size=32, 
    show_progress_bar=True,
    convert_to_numpy=True
)

print(embeddings.shape)

Finetuned Gemma 4 Embedding Model with average pooling

import torch 
from sentence_transformers import SentenceTransformer
from sentence_transformers.models import Transformer, Pooling
import pandas as pd
import numpy as np

model_id='NYUAD-ComNets/Gemma4_prompt_category_classification'

word_embedding_model = Transformer(model_id, model_args={"torch_dtype": torch.float16})
        
pooling_model = Pooling(word_embedding_model.get_word_embedding_dimension(), pooling_mode='mean')
        
custom_emb_model = SentenceTransformer(modules=[word_embedding_model, pooling_model])

df=pd.read_csv('dev.csv')

embeddings_array=[]


for k in df.prompt.values:
    
        vector = custom_emb_model.encode([k])

        embeddings_array.append(vector)
        
dev_matrix = np.array(embeddings_array)

np.save('dev_embd_Gemma4.npy',dev_matrix)

Prepare Dataset for inference


import pandas as pd
from datasets import Dataset

from datasets import load_dataset

df=pd.read_csv('dev_with_label.csv')
df

raw_data=[]

for k in range(df.shape[0]):
     te=df.prompt.values[k]
     lab=df.granular_label.values[k]
     raw_data.append({"text":te,"label":lab})


SYSTEM_PROMPT = "classify the text into one of the following: [Bullying, Fraud and Deception, adult_content, harassment, harm-to-others, hate_speech, self-harm]"

formatted_rows = []
for item in raw_data:
    conversation = {
        "messages": [
            {"role": "system", "content": SYSTEM_PROMPT},
            {"role": "user", "content": item["text"]},
            {"role": "assistant", "content": item["label"]}
        ]
    }
    formatted_rows.append(conversation)

hf_dataset = Dataset.from_list(formatted_rows)

hf_dataset.to_json("dev_dataset.jsonl")

dataset = load_dataset("json", data_files="dev_dataset.jsonl")

print(dataset)

Finetuned Gemma 4 for Inference


from transformers import AutoModelForMultimodalLM, AutoProcessor
from transformers import pipeline, GenerationConfig, pipeline

model_id ="NYUAD-ComNets/Gemma4_prompt_category_classification"

# Load Model with PEFT adapter
model = AutoModelForMultimodalLM.from_pretrained(
  model_id,
  device_map="auto",
  dtype="auto",
)
processor = AutoProcessor.from_pretrained(model_id)


config = GenerationConfig.from_pretrained(model_id)
config.max_new_tokens = 256
config.eos_token_id = [processor.tokenizer.convert_tokens_to_ids("<turn|>")]


pipe = pipeline("text-generation", model=model, tokenizer=processor.tokenizer)


lis=[]
pred=[]

n=0

for k,lab in zip(range(df.shape[0]),df.granular_label.values):
    
        test_sample = dataset['train'][k]

        prompt = processor.tokenizer.apply_chat_template(test_sample["messages"][:2], tokenize=False, add_generation_prompt=True)

        outputs = pipe(text_inputs=prompt, generation_config=config)
        
        p=outputs[0]['generated_text'][len(prompt):].strip().removesuffix("<turn|>")

        print(p)
        
        pred.append(p)
        lis.append(lab)
        d=pd.DataFrame({'label':lis,'predict':pred})  
        print(sum(d.label==d.predict))

We used Low-Rank Adaptation (LoRA) as the Parameter-Efficient Fine-Tuning (PEFT) method for fine-tuning utilizing the unsloth framework.

BibTeX entry and citation info



@misc{aldahoul,
      title={NYUAD at ArGuard Shared Task: Multimodal Embedding Models for
Detecting Arabic Hateful Memes and Unsafe Prompts}, 
      author={Nouar AlDahoul and Yasir Zaki},
      year={2026},
      eprint={},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={}, 
}


Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · transformers

Можно запустить

Подбираем GPU…

Класс архитектуры
Gemma4ForConditionalGeneration
Ревизия весов
a9929a7

0 моделей