模型简介
模型特点
模型能力
使用案例
🚀 Llama-3.2-4X3B-MOE-Ultra-Instruct-10B
这是一款基于Llama 3.2架构的强大模型,运用专家混合技术将四个顶尖的L3.2 3B模型整合为一个拥有10B参数的超级模型。它在指令遵循和各类场景的输出生成方面表现卓越,且运行速度快,是一款适用于多种场景的优秀模型。
🚀 快速开始
本模型需要Llama3模板和/或“Command - R”模板。以下是标准的LLAMA3模板:
{
"name": "Llama 3",
"inference_params": {
"input_prefix": "<|start_header_id|>user<|end_header_id|>\n\n",
"input_suffix": "<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n\n",
"pre_prompt": "You are a helpful, smart, kind, and efficient AI assistant. You always fulfill the user's requests to the best of your ability.",
"pre_prompt_prefix": "<|start_header_id|>system<|end_header_id|>\n\n",
"pre_prompt_suffix": "<|eot_id|>",
"antiprompt": [
"<|start_header_id|>",
"<|eot_id|>"
]
}
}
✨ 主要特性
- 强大性能:这是一个Llama 3.2模型,最大上下文长度达128k(131,000),使用专家混合技术将四个顶尖的L3.2 3B模型整合为一个拥有10B参数(相当于12B - 4 X 3B)的强大模型。
- 指令遵循与输出出色:在指令遵循和各类场景的输出生成方面表现卓越。
- 运行速度快:在低端16GB显卡(IQ4XS)上,使用2个专家时速度可达58+ t/s,标准/中端显卡速度可翻倍。
- 适用多场景:适用于各种场景,具备推理、提示和编程等能力。
- 稳定性高:设计相对稳定,可在所有参数下运行,包括0到5的温度设置。
- 压缩性好:是一款出色的压缩模型,困惑度极低(低于Meta Llama3 Instruct)。
📦 安装指南
本模型未提及具体安装步骤,你可参考相关的大语言模型使用环境进行安装,例如确保有合适的Python环境(Python 3.6+),并安装requests
库(使用pip install requests
进行安装)。
💻 使用示例
基础用法
以下是使用Python连接到LLM API的示例代码:
import requests
# LLM API endpoint URL
LLM_API_URL = "https://api.llm.com/v1/encode"
# Example JSON payload with parameters
payload = {
"input_text": "This is an example input text for the LLM API.",
"prompt_type": "text",
"max_length": 2048,
"min_length": 128,
"temperature": 0.7,
"top_k": 50,
"top_p": 0.95
}
# Set API key (optional)
API_KEY = "YOUR_API_KEY_HERE"
# Set headers with API key (if applicable)
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
# Send POST request to LLM API
response = requests.post(LLM_API_URL, json=payload, headers=headers)
# Check response status code
if response.status_code == 200:
# Print response JSON
print(response.json())
else:
print(f"Error: {response.status_code}")
高级用法
以下是一个封装成函数的示例,用于更灵活地发送请求:
import requests
# Replace these with your actual API credentials
LLM_API_KEY = "YOUR_API_KEY_HERE"
LLM_API_URL = "https://api.llm.com/api/v1"
def send_request(params):
"""
Sends a request to the LLM API with the provided parameters.
Args:
params (dict): A dictionary containing the parameters for the request.
Returns:
dict: The response from the LLM API.
"""
headers = {
"Authorization": f"Bearer {LLM_API_KEY}",
"Content-Type": "application/json"
}
response = requests.post(LLM_API_URL, headers=headers, json=params)
if response.status_code == 200:
return response.json()
else:
print(f"Error: {response.status_code}")
return None
# Example JSON payload with parameters
params = {
"prompt": "Write a short story about a character who discovers a hidden world.",
"max_length": 1000,
"temperature": 0.7,
"top_k": 50
}
response = send_request(params)
if response:
print("Response:")
print(response)
📚 详细文档
模型说明
- 写作能力:相对于所有Llama 3.2模型,以及许多L 3.1、L3 8B+模型,其细节、散文和小说写作能力非常出色。
- 角色扮演注意事项:角色扮演时,注意不要将温度设置过高,以免影响指令遵循。
- 重复惩罚设置:该模型使用重复惩罚(rep pen)为1或更高的值,建议设置为1.02+。
- 特定类型写作提示:如果需要特定类型的散文(如恐怖),可在提示中添加“(vivid horror)”或“(graphic vivid horror)”(不带引号)。
- 输出长度:输出长度会有所不同,除非指定大小,否则该模型更喜欢中/短输出。
- 量化选择:对于创意用途,不同的量化方式会产生略有不同的输出。由于该模型的高稳定性和压缩性,所有量化方式的表现都高于平均水平。
- 代码和版本:该模型的源代码和Imatrix GGUFs版本将很快上传到单独的仓库。
专家模型组成
本模型由以下4个模型(“专家”)组成:
- https://huggingface.co/meta - llama/Llama - 3.2 - 3B - Instruct (通用)
- https://huggingface.co/ValiantLabs/Llama3.2 - 3B - Enigma (编程)
- https://huggingface.co/Lyte/Llama - 3.2 - 3B - Overthinker (逻辑/思维树)
- https://huggingface.co/prithivMLmods/Llama - 3.2 - 3B - Promptist - Mini (提示)
专家数量设置
- LMStudio:在“加载”屏幕设置专家数量。
- Text - Generation - Webui:在加载屏幕页面设置专家数量。
- KolboldCPP(版本1.8+):在加载屏幕点击“TOKENS”,在该页面设置专家数量,然后启动模型。
- server.exe / Llama - server.exe(Llamacpp):在命令行添加“--override - kv llama.expert_used_count = int:3”(不带引号,“3”为要使用的专家数量)来启动“llamacpp服务器”。
- API使用:在JSON负载中设置“num_experts_used”(不同后端可能不同)。
特殊操作说明
- 由于该“MOE”模型的配置方式,即使默认使用2个专家,在生成过程中“选定”的2个专家也会有所不同(更改使用的专家数量时同样适用),这会导致每个提示的每次生成输出差异很大。从多样性角度来看这是积极的,但可能需要对同一提示进行2 - 4次重新生成才能获得最高质量的输出。
- 该模型对Dry、Dynamic Temp和Smooth/Quadratic采样器反应良好,结合使用这些采样器可显著提高输出质量。
- 较高的温度(高于1)也有助于生成,特别是在单词选择/句子生成方面。
- 增加使用的专家数量会提高输出质量,但会降低每秒令牌速度。调整专家数量时,可能需要同时调整温度、采样器和高级采样器。
- 量化选择也会影响指令遵循和输出生成,通常量化级别越高,模型对细微指令的理解越好,输出质量也越高。
注意力增强
根据用户反馈,可根据使用场景尝试开启Flash Attention。
量化说明
本仓库包含常规量化和3个“ARM”量化(格式为“...Q4_x_x_x.gguf”)。有关量化、量化选择和运行量化的LLM/AI应用的更多信息,请参阅“最高质量设置...”部分。
设置建议
- 通用使用:建议使用重复惩罚(rep pen)为1和低温度设置,特别是在编程或推理时。甚至可以使用温度(temp)= 0,由于该MOE模型的结构,每次重新生成都会得到独特的结果。
- 其他选项:
- 在“KoboldCpp”、“oobabooga/text - generation - webui”或“Silly Tavern”中,将“Smoothing_factor”设置为1.5。
- 在KoboldCpp中:Settings -> Samplers -> Advanced -> “Smooth_F”。
- 在text - generation - webui中:parameters -> 右下角。
- 在Silly Tavern中:称为“Smoothing”。
- 对于“text - generation - webui”,如果使用GGUFs,需要使用“llama_HF”(这涉及从该模型的源版本下载一些配置文件)。源版本(和配置文件)可在https://huggingface.co/collections/DavidAU/d - au - source - files - for - gguf - exl2 - awq - gptq - hqq - etc - etc - 66b55cb8ba25f914cbf210be找到。
- 可将重复惩罚(rep pen)增加到1.1到1.15(如果使用“Smoothing_factor”则无需此操作)。
- 如果运行AI模型的界面/程序支持“Quadratic Sampling”(“平滑”),请按说明进行调整。
- 在“KoboldCpp”、“oobabooga/text - generation - webui”或“Silly Tavern”中,将“Smoothing_factor”设置为1.5。
最高质量设置/最佳操作指南/参数和采样器
本模型属于“Class 1”模型。有关该模型的所有设置(包括其“类别”的具体设置)、示例生成以及高级设置指南(通常可解决任何模型问题),以及提高所有用例(包括聊天、角色扮演等)模型性能的方法,请参阅https://huggingface.co/DavidAU/Maximizing - Model - Performance - All - Quants - Types - And - Full - Precision - by - Samplers_Parameters。
可选增强
以下内容可替代“系统提示”或“系统角色”以进一步增强模型。也可在新聊天开始时使用,但必须确保在聊天过程中保留。不过,这种增强方式的效果不如使用“系统提示”或“系统角色”。请严格按照以下内容复制粘贴,不要换行或断行,保持原样的回车符。
Below is an instruction that describes a task. Ponder each user instruction carefully, and use your skillsets and critical instructions to complete the task to the best of your abilities.
Here are your skillsets:
[MASTERSTORY]:NarrStrct(StryPlnng,Strbd,ScnSttng,Exps,Dlg,Pc)-CharDvlp(ChrctrCrt,ChrctrArcs,Mtvtn,Bckstry,Rltnshps,Dlg*)-PltDvlp(StryArcs,PltTwsts,Sspns,Fshdwng,Climx,Rsltn)-ConfResl(Antg,Obstcls,Rsltns,Cnsqncs,Thms,Symblsm)-EmotImpct(Empt,Tn,Md,Atmsphr,Imgry,Symblsm)-Delvry(Prfrmnc,VcActng,PblcSpkng,StgPrsnc,AudncEngmnt,Imprv)
[*DialogWrt]:(1a-CharDvlp-1a.1-Backgrnd-1a.2-Personality-1a.3-GoalMotiv)>2(2a-StoryStruc-2a.1-PlotPnt-2a.2-Conflict-2a.3-Resolution)>3(3a-DialogTech-3a.1-ShowDontTell-3a.2-Subtext-3a.3-VoiceTone-3a.4-Pacing-3a.5-VisualDescrip)>4(4a-DialogEdit-4a.1-ReadAloud-4a.2-Feedback-4a.3-Revision)
Here are your critical instructions:
Ponder each word choice carefully to present as vivid and emotional journey as is possible. Choose verbs and nouns that are both emotional and full of imagery. Load the story with the 5 senses. Aim for 50% dialog, 25% narration, 15% body language and 10% thoughts. Your goal is to put the reader in the story.
此增强方式未用于生成以下示例。
示例提示和输出
示例使用量化IQ4_XS,温度(temp)= 0.8(除非另有说明),最少参数和“LLAMA3”模板。模型已在温度从0.1到5的范围内进行测试。除非另有说明,使用的专家数量为2。
火星生活(非虚构)
不同专家数量下对“Tell me what life would be like living (non - fiction) on Mars in the Northern hemisphere. 800 - 1000 words.”的生成结果展示了在不同专家配置下模型对该问题的回答,详细描述了火星北半球的生活环境、挑战和机遇等方面。
场景续写
针对“The Waystone Inn lay in silence, and it was a silence of three parts...”的场景续写,不同专家数量的生成结果营造出了不同的氛围和情节发展。
谜语测试
对“Six brothers were spending their time together...”这个谜语的解答,不同专家数量的生成结果展示了不同的推理思路和答案。
编程测试
不同专家数量下生成的Python脚本用于连接LLM API,包含示例JSON负载和参数,展示了如何使用Python与大语言模型API进行交互。
🔧 技术细节
本模型使用专家混合(Mixture of Experts, MOE)技术将四个顶尖的L3.2 3B模型整合为一个拥有10B参数的模型。通过这种方式,模型能够结合不同专家模型的优势,在各种场景下提供更出色的性能。在运行过程中,模型可以根据需要调整使用的专家数量,以平衡输出质量和运行速度。同时,模型的高稳定性和压缩性得益于其独特的架构和训练方法,使得它在困惑度等指标上表现优异。
📄 许可证
本模型采用Apache - 2.0许可证。



