From 312f6e1ae3693d368d46772e89e5800a9c37e228 Mon Sep 17 00:00:00 2001 From: ModelHub XC Date: Tue, 1 Sep 2026 13:32:13 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=EF=BC=8C=E7=94=B1ModelHub=20XC=E7=A4=BE=E5=8C=BA=E6=8F=90?= =?UTF-8?q?=E4=BE=9B=E6=A8=A1=E5=9E=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Model: prithivMLmods/Triangulum-5B-GGUF Source: Original Platform --- .gitattributes | 39 +++++++ Modelfile | 56 ++++++++++ README.md | 218 ++++++++++++++++++++++++++++++++++++++ config.json | 3 + configuration.json | 1 + triangulum-5b-f16.gguf | 3 + triangulum-5b-q4_k_m.gguf | 3 + triangulum-5b-q5_k_m.gguf | 3 + triangulum-5b-q8_0.gguf | 3 + 9 files changed, 329 insertions(+) create mode 100644 .gitattributes create mode 100644 Modelfile create mode 100644 README.md create mode 100644 config.json create mode 100644 configuration.json create mode 100644 triangulum-5b-f16.gguf create mode 100644 triangulum-5b-q4_k_m.gguf create mode 100644 triangulum-5b-q5_k_m.gguf create mode 100644 triangulum-5b-q8_0.gguf diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..89129d0 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,39 @@ +*.7z filter=lfs diff=lfs merge=lfs -text +*.arrow filter=lfs diff=lfs merge=lfs -text +*.bin filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.ckpt filter=lfs diff=lfs merge=lfs -text +*.ftz filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.h5 filter=lfs diff=lfs merge=lfs -text +*.joblib filter=lfs diff=lfs merge=lfs -text +*.lfs.* filter=lfs diff=lfs merge=lfs -text +*.mlmodel filter=lfs diff=lfs merge=lfs -text +*.model filter=lfs diff=lfs merge=lfs -text +*.msgpack filter=lfs diff=lfs merge=lfs -text +*.npy filter=lfs diff=lfs merge=lfs -text +*.npz filter=lfs diff=lfs merge=lfs -text +*.onnx filter=lfs diff=lfs merge=lfs -text +*.ot filter=lfs diff=lfs merge=lfs -text +*.parquet filter=lfs diff=lfs merge=lfs -text +*.pb filter=lfs diff=lfs merge=lfs -text +*.pickle filter=lfs diff=lfs merge=lfs -text +*.pkl filter=lfs diff=lfs merge=lfs -text +*.pt filter=lfs diff=lfs merge=lfs -text +*.pth filter=lfs diff=lfs merge=lfs -text +*.rar filter=lfs diff=lfs merge=lfs -text +*.safetensors filter=lfs diff=lfs merge=lfs -text +saved_model/**/* filter=lfs diff=lfs merge=lfs -text +*.tar.* filter=lfs diff=lfs merge=lfs -text +*.tar filter=lfs diff=lfs merge=lfs -text +*.tflite filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.wasm filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text +*tfevents* filter=lfs diff=lfs merge=lfs -text +triangulum-5b-q4_k_m.gguf filter=lfs diff=lfs merge=lfs -text +triangulum-5b-q5_k_m.gguf filter=lfs diff=lfs merge=lfs -text +triangulum-5b-f16.gguf filter=lfs diff=lfs merge=lfs -text +triangulum-5b-q8_0.gguf filter=lfs diff=lfs merge=lfs -text diff --git a/Modelfile b/Modelfile new file mode 100644 index 0000000..c90d65b --- /dev/null +++ b/Modelfile @@ -0,0 +1,56 @@ +FROM /content/prithivMLmods/Triangulum-5B-GGUF/triangulum-5b-f16.gguf +TEMPLATE """{{ if .Messages }} +{{- if or .System .Tools }}<|start_header_id|>system<|end_header_id|> +{{- if .System }} + +{{ .System }} +{{- end }} +{{- if .Tools }} + +You are a helpful assistant with tool calling capabilities. When you receive a tool call response, use the output to format an answer to the original use question. +{{- end }} +{{- end }}<|eot_id|> +{{- range $i, $_ := .Messages }} +{{- $last := eq (len (slice $.Messages $i)) 1 }} +{{- if eq .Role "user" }}<|start_header_id|>user<|end_header_id|> +{{- if and $.Tools $last }} + +Given the following functions, please respond with a JSON for a function call with its proper arguments that best answers the given prompt. + +Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}. Do not use variables. + +{{ $.Tools }} +{{- end }} + +{{ .Content }}<|eot_id|>{{ if $last }}<|start_header_id|>assistant<|end_header_id|> + +{{ end }} +{{- else if eq .Role "assistant" }}<|start_header_id|>assistant<|end_header_id|> +{{- if .ToolCalls }} + +{{- range .ToolCalls }}{"name": "{{ .Function.Name }}", "parameters": {{ .Function.Arguments }}}{{ end }} +{{- else }} + +{{ .Content }}{{ if not $last }}<|eot_id|>{{ end }} +{{- end }} +{{- else if eq .Role "tool" }}<|start_header_id|>ipython<|end_header_id|> + +{{ .Content }}<|eot_id|>{{ if $last }}<|start_header_id|>assistant<|end_header_id|> + +{{ end }} +{{- end }} +{{- end }} +{{- else }} +{{- if .System }}<|start_header_id|>system<|end_header_id|> + +{{ .System }}<|eot_id|>{{ end }}{{ if .Prompt }}<|start_header_id|>user<|end_header_id|> + +{{ .Prompt }}<|eot_id|>{{ end }}<|start_header_id|>assistant<|end_header_id|> + +{{ end }}{{ .Response }}{{ if .Response }}<|eot_id|>{{ end }}""" +PARAMETER stop "<|start_header_id|>" +PARAMETER stop "<|end_header_id|>" +PARAMETER stop "<|eot_id|>" +PARAMETER stop "<|eom_id|>" +PARAMETER temperature 1.5 +PARAMETER min_p 0.1 \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..9e23f06 --- /dev/null +++ b/README.md @@ -0,0 +1,218 @@ +--- +license: creativeml-openrail-m +language: +- en +- de +- fr +- it +- pt +- hi +- es +- th +pipeline_tag: text-generation +tags: +- triangulum_5b +- sft +- chain_of_thought +- ollama +- text-generation-inference +- llama_for_causal_lm +library_name: transformers +base_model: +- prithivMLmods/Triangulum-5B +--- +![Triangulum-5b.png](https://cdn-uploads.huggingface.co/production/uploads/65bb837dbfb878f46c77de4c/By0OJ1lMvP5ZvVvfEGvz5.png) + +
+  __           .__                                .__                   
+_/  |_ _______ |__|_____     ____    ____   __ __ |  |   __ __   _____  
+\   __\\_  __ \|  |\__  \   /    \  / ___\ |  |  \|  |  |  |  \ /     \ 
+ |  |   |  | \/|  | / __ \_|   |  \/ /_/  >|  |  /|  |__|  |  /|  Y Y  \
+ |__|   |__|   |__|(____  /|___|  /\___  / |____/ |____/|____/ |__|_|  /
+                        \/      \//_____/                            \/ 
+
+ +# **Triangulum 5B GGUF: Multilingual Large Language Models (LLMs)** + +Triangulum 5B is a collection of pretrained and instruction-tuned generative models, designed for multilingual applications. These models are trained using synthetic datasets based on long chains of thought, enabling them to perform complex reasoning tasks effectively. + +# **Key Features** + +- **Foundation Model**: Built upon LLaMA's autoregressive language model, leveraging an optimized transformer architecture for enhanced performance. + +- **Instruction Tuning**: Includes supervised fine-tuning (SFT) and reinforcement learning with human feedback (RLHF) to align model outputs with human preferences for helpfulness and safety. + +- **Multilingual Support**: Designed to handle multiple languages, ensuring broad applicability across diverse linguistic contexts. + +# **Training Approach** + +1. **Synthetic Datasets**: Utilizes long chain-of-thought synthetic data to enhance reasoning capabilities. +2. **Supervised Fine-Tuning (SFT)**: Aligns the model to specific tasks through curated datasets. +3. **Reinforcement Learning with Human Feedback (RLHF)**: Ensures the model adheres to human values and safety guidelines through iterative training processes. + +# **How to use with transformers** + +Starting with `transformers >= 4.43.0` onward, you can run conversational inference using the Transformers `pipeline` abstraction or by leveraging the Auto classes with the `generate()` function. + +Make sure to update your transformers installation via `pip install --upgrade transformers`. + +```python +import torch +from transformers import pipeline + +model_id = "prithivMLmods/Triangulum-5B" +pipe = pipeline( + "text-generation", + model=model_id, + torch_dtype=torch.bfloat16, + device_map="auto", +) +messages = [ + {"role": "system", "content": "You are the kind and tri-intelligent assistant helping people to understand complex concepts."}, + {"role": "user", "content": "Who are you?"}, +] +outputs = pipe( + messages, + max_new_tokens=256, +) +print(outputs[0]["generated_text"][-1]) +``` +# **Demo Inference LlamaForCausalLM** +```python +import torch +from transformers import AutoTokenizer, LlamaForCausalLM + +# Load tokenizer and model +tokenizer = AutoTokenizer.from_pretrained('prithivMLmods/Triangulum-5B', trust_remote_code=True) +model = LlamaForCausalLM.from_pretrained( + "prithivMLmods/Triangulum-5B", + torch_dtype=torch.float16, + device_map="auto", + load_in_8bit=False, + load_in_4bit=True, + use_flash_attention_2=True +) + +# Define a list of system and user prompts +prompts = [ + """<|im_start|>system +You are the kind and tri-intelligent assistant helping people to understand complex concepts.<|im_end|> +<|im_start|>user +Can you explain the concept of eigenvalues and eigenvectors in a simple way?<|im_end|> +<|im_start|>assistant""" +] + +# Generate responses for each prompt +for chat in prompts: + print(f"Prompt:\n{chat}\n") + input_ids = tokenizer(chat, return_tensors="pt").input_ids.to("cuda") + generated_ids = model.generate(input_ids, max_new_tokens=750, temperature=0.8, repetition_penalty=1.1, do_sample=True, eos_token_id=tokenizer.eos_token_id) + response = tokenizer.decode(generated_ids[0][input_ids.shape[-1]:], skip_special_tokens=True, clean_up_tokenization_space=True) + print(f"Response:\n{response}\n{'-'*80}\n") +``` + +# **Key Adjustments** +1. **System Prompts:** Each prompt defines a different role or persona for the AI to adopt. +2. **User Prompts:** These specify the context or task for the assistant, ranging from teaching to storytelling or career advice. +3. **Looping Through Prompts:** Each prompt is processed in a loop to showcase the model's versatility. + +You can expand the list of prompts to explore a variety of scenarios and responses. + +# **Use Cases for T5B** + +- Multilingual content generation +- Question answering and dialogue systems +- Text summarization and analysis +- Translation and localization tasks + +# **Technical Details** + +Triangulum 10B employs a state-of-the-art autoregressive architecture inspired by LLaMA. The optimized transformer framework ensures both efficiency and scalability, making it suitable for a variety of use cases. + +# **How to Run Triangulum 5B on Ollama Locally** + +```markdown +# How to Run Ollama Locally + +This guide demonstrates the power of using open-source LLMs locally, showcasing examples with different open-source models for various use cases. By the end, you'll be equipped to run any future open-source LLM models with ease. + +--- + +## Example 1: How to Run the Triangulum-5B Model + +The **Triangulum-10B** model is an open-source LLM known for its capabilities across text-based tasks. We'll interact with it similarly to ChatGPT, but run it locally with support for quants. + +### Step 1: Download the Model + +First, download the **Triangulum-5B-F16.gguf** model using the following command: + +```bash +ollama run triangulum-5b-f16.gguf +``` + +### Step 2: Model Initialization and Download + +Upon running the command, Ollama will initialize and download the model files. You should see output similar to the following: + +```plaintext +pulling manifest +pulling 8934d96d3f08... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████▏ 3.8 GB +pulling 8c17c2ebb0ea... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████▏ 7.0 KB +pulling 7c23fb36d801... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████▏ 4.8 KB +pulling 2e0493f67d0c... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████▏ 59 B +pulling fa304d675061... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████▏ 91 B +pulling 42ba7f8a01dd... 100% ▕██████████████████████████████████████████████████████████████████████████████████████████▏ 557 B +verifying sha256 digest +writing manifest +removing any unused layers +success +>>> Send a message (/? for help) +``` + +### Step 3: Interact with the Model + +Once the model is ready, you can send a prompt. For example, let's ask: + +```plaintext +>>> What can you do for me? +``` + +If you asked the same question, you should receive a response like this: + +```plaintext +As a responsible AI language model, I am here to assist you with any questions or tasks you may have. Here are some examples of things I can help with: + +1. Answering questions: I can provide information on a wide range of topics, from science and technology to history and culture. +2. Generating ideas: I can help you brainstorm ideas for creative projects, or provide suggestions for solving problems. +3. Writing assistance: I can help you with writing tasks such as proofreading, editing, and suggesting alternative words or phrases. +4. Translation: I can translate text from one language to another. +5. Summarizing content: I can summarize long pieces of text, such as articles or documents, into shorter, more digestible versions. +6. Creativity: I can help you generate creative ideas for stories, poems, or other forms of writing. +7. Language learning: I can assist you in learning a new language by providing grammar explanations, vocabulary lists, and practice exercises. +8. Chatting: I'm here to chat with you and provide a response to any question or topic you'd like to discuss. + +Please let me know if there is anything specific you would like me to help you with. +``` + +### Step 4: Exit the Program + +To exit the program, simply type: + +```plaintext +/exit +``` + +## Example 2: Running Multi-Modal Models (Future Use) + +Ollama supports running multi-modal models where you can send images and ask questions based on them. This section will be updated as more models become available. + +## Notes on Using Quantized Models + +Quantized models like **triangulum-5b-f16.gguf** are optimized for performance on resource-constrained hardware, making it accessible for local inference. + +1. Ensure your system has sufficient VRAM or CPU resources. +2. Use the `.gguf` model format for compatibility with Ollama. + +# **Conclusion** + +Running the **Triangulum-5B** model with Ollama provides a robust way to leverage open-source LLMs locally for diverse use cases. By following these steps, you can explore the capabilities of other open-source models in the future. \ No newline at end of file diff --git a/config.json b/config.json new file mode 100644 index 0000000..a4ba21b --- /dev/null +++ b/config.json @@ -0,0 +1,3 @@ +{ + "model_type": "llama" +} \ No newline at end of file diff --git a/configuration.json b/configuration.json new file mode 100644 index 0000000..bbeeda1 --- /dev/null +++ b/configuration.json @@ -0,0 +1 @@ +{"framework": "pytorch", "task": "text-generation", "allow_remote": true} \ No newline at end of file diff --git a/triangulum-5b-f16.gguf b/triangulum-5b-f16.gguf new file mode 100644 index 0000000..f908a17 --- /dev/null +++ b/triangulum-5b-f16.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3760942d09f7898f9319ac674833e4de1a58140114aaeaa2f7c99af404d20c61 +size 10834000096 diff --git a/triangulum-5b-q4_k_m.gguf b/triangulum-5b-q4_k_m.gguf new file mode 100644 index 0000000..789fa0c --- /dev/null +++ b/triangulum-5b-q4_k_m.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a83b6f19375a5ec01e1467367e824405f8765f63f48c9c922188b8551b26647a +size 3350812896 diff --git a/triangulum-5b-q5_k_m.gguf b/triangulum-5b-q5_k_m.gguf new file mode 100644 index 0000000..3006b62 --- /dev/null +++ b/triangulum-5b-q5_k_m.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f67592eb0467e69ab8d53ffef587b1478849eb2ec318214feb5c7c8858ef559f +size 3883096288 diff --git a/triangulum-5b-q8_0.gguf b/triangulum-5b-q8_0.gguf new file mode 100644 index 0000000..73de24f --- /dev/null +++ b/triangulum-5b-q8_0.gguf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc60169aebd128b9379d0f0447f7dc6fa5505527f1f354a5d36edeaec356f87e +size 5759547616