模型简介
模型特点
模型能力
使用案例
🚀 EM German Leo Mistral - GGUF
本项目提供了Jan Philipp Harries的EM German Leo Mistral模型的GGUF格式文件,适用于文本生成任务,支持多种量化方法和推理场景。
🚀 快速开始
本仓库包含 Jan Philipp Harries的EM German Leo Mistral 模型的GGUF格式文件。
✨ 主要特性
- 模型创建者:Jan Philipp Harries
- 原始模型:EM German Leo Mistral
- 模型类型:Mistral
- 支持多种量化方法:提供Q2_K、Q3_K、Q4_K等多种量化方法的文件,满足不同场景需求。
- 广泛的兼容性:与llama.cpp及多种第三方UI和库兼容。
📦 安装指南
如何下载GGUF文件
手动下载注意事项:通常不需要克隆整个仓库,因为提供了多种不同的量化格式,大多数用户只需选择并下载单个文件。
以下客户端/库会自动为你下载模型,并提供可用模型列表供选择:
- LM Studio
- LoLLMS Web UI
- Faraday.dev
在 text-generation-webui
中下载
在“Download Model”下,输入模型仓库地址:TheBloke/em_german_leo_mistral-GGUF,然后在下方输入要下载的具体文件名,例如:em_german_leo_mistral.Q4_K_M.gguf,最后点击“Download”。
在命令行下载(可同时下载多个文件)
推荐使用 huggingface-hub
Python库:
pip3 install huggingface-hub
然后可以使用以下命令将任何单个模型文件高速下载到当前目录:
huggingface-cli download TheBloke/em_german_leo_mistral-GGUF em_german_leo_mistral.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
更高级的huggingface-cli下载用法
你还可以使用通配符同时下载多个文件:
huggingface-cli download TheBloke/em_german_leo_mistral-GGUF --local-dir . --local-dir-use-symlinks False --include='*Q4_K*gguf'
有关使用 huggingface-cli
下载的更多文档,请参阅:HF -> Hub Python Library -> Download files -> Download from the CLI。
要在高速连接(1Gbit/s 或更高)上加速下载,请安装 hf_transfer
:
pip3 install hf_transfer
并将环境变量 HF_HUB_ENABLE_HF_TRANSFER
设置为 1
:
HF_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download TheBloke/em_german_leo_mistral-GGUF em_german_leo_mistral.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
Windows命令行用户:可以在下载命令前运行 set HF_HUB_ENABLE_HF_TRANSFER=1
来设置环境变量。
💻 使用示例
示例 llama.cpp
命令
确保使用的是 d0cee0d 及之后提交版本的 llama.cpp
。
./main -ngl 32 -m em_german_leo_mistral.Q4_K_M.gguf --color -c 2048 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "Du bist ein hilfreicher Assistent. USER: {prompt} ASSISTANT:"
- 将
-ngl 32
更改为要卸载到GPU的层数。如果没有GPU加速,请删除该参数。 - 将
-c 2048
更改为所需的序列长度。对于扩展序列模型(如 8K、16K、32K),必要的RoPE缩放参数会从GGUF文件中读取,并由llama.cpp自动设置。
如果你想进行聊天式对话,将 -p <PROMPT>
参数替换为 -i -ins
。
有关其他参数及其使用方法,请参考 llama.cpp文档。
如何在 text-generation-webui
中运行
更多说明请参考:text-generation-webui/docs/llama.cpp.md。
如何从Python代码运行
你可以使用 llama-cpp-python 或 ctransformers 库从Python中使用GGUF模型。
如何使用ctransformers在Python代码中加载此模型
首先安装包,根据你的系统运行以下命令之一:
# 无GPU加速的基础ctransformers
pip install ctransformers
# 或使用CUDA GPU加速
pip install ctransformers[cuda]
# 或使用AMD ROCm GPU加速(仅适用于Linux)
CT_HIPBLAS=1 pip install ctransformers --no-binary ctransformers
# 或使用Metal GPU加速(仅适用于macOS系统)
CT_METAL=1 pip install ctransformers --no-binary ctransformers
简单的ctransformers示例代码
from ctransformers import AutoModelForCausalLM
# 将gpu_layers设置为要卸载到GPU的层数。如果系统上没有GPU加速,请将其设置为0。
llm = AutoModelForCausalLM.from_pretrained("TheBloke/em_german_leo_mistral-GGUF", model_file="em_german_leo_mistral.Q4_K_M.gguf", model_type="mistral", gpu_layers=50)
print(llm("AI is going to"))
📚 详细文档
关于GGUF
GGUF是llama.cpp团队在2023年8月21日引入的一种新格式,它取代了不再受llama.cpp支持的GGML格式。
以下是已知支持GGUF的客户端和库的不完全列表:
- llama.cpp:GGUF的源项目,提供CLI和服务器选项。
- text-generation-webui:最广泛使用的Web UI,具有许多功能和强大的扩展,支持GPU加速。
- KoboldCpp:功能齐全的Web UI,支持所有平台和GPU架构的GPU加速,特别适合讲故事。
- LM Studio:易于使用且功能强大的本地GUI,适用于Windows和macOS(Silicon),支持GPU加速。
- LoLLMS Web UI:一个很棒的Web UI,具有许多有趣和独特的功能,包括一个完整的模型库,便于模型选择。
- Faraday.dev:一个有吸引力且易于使用的基于角色的聊天GUI,适用于Windows和macOS(Silicon和Intel),支持GPU加速。
- ctransformers:一个支持GPU加速、LangChain和OpenAI兼容AI服务器的Python库。
- llama-cpp-python:一个支持GPU加速、LangChain和OpenAI兼容API服务器的Python库。
- candle:一个Rust机器学习框架,注重性能,包括GPU支持和易用性。
可用的仓库
- 用于GPU推理的AWQ模型
- 用于GPU推理的GPTQ模型,具有多种量化参数选项
- 用于CPU+GPU推理的2、3、4、5、6和8位GGUF模型
- Jan Philipp Harries的原始未量化fp16 PyTorch格式模型,用于GPU推理和进一步转换
提示模板:EmGerman
Du bist ein hilfreicher Assistent. USER: {prompt} ASSISTANT:
兼容性
这些量化的GGUFv2文件与8月27日及之后的llama.cpp版本兼容,对应提交版本为 d0cee0d。
它们也与许多第三方UI和库兼容,请参阅本README顶部的列表。
量化方法说明
点击查看详情
可用的新方法如下:
- GGML_TYPE_Q2_K:“type-1” 2位量化,超级块包含16个块,每个块有16个权重。块的缩放因子和最小值用4位量化,最终每个权重有效使用2.5625位(bpw)。
- GGML_TYPE_Q3_K:“type-0” 3位量化,超级块包含16个块,每个块有16个权重。缩放因子用6位量化,最终使用3.4375 bpw。
- GGML_TYPE_Q4_K:“type-1” 4位量化,超级块包含8个块,每个块有32个权重。缩放因子和最小值用6位量化,最终使用4.5 bpw。
- GGML_TYPE_Q5_K:“type-1” 5位量化,与GGML_TYPE_Q4_K的超级块结构相同,最终使用5.5 bpw。
- GGML_TYPE_Q6_K:“type-0” 6位量化,超级块包含16个块,每个块有16个权重。缩放因子用8位量化,最终使用6.5625 bpw。
请参考下面的“提供的文件”表,了解哪些文件使用了哪些方法以及如何使用。
提供的文件
名称 | 量化方法 | 位数 | 大小 | 所需最大RAM | 使用场景 |
---|---|---|---|---|---|
em_german_leo_mistral.Q2_K.gguf | Q2_K | 2 | 3.08 GB | 5.58 GB | 最小,但质量损失显著,不推荐用于大多数场景 |
em_german_leo_mistral.Q3_K_S.gguf | Q3_K_S | 3 | 3.16 GB | 5.66 GB | 非常小,但质量损失高 |
em_german_leo_mistral.Q3_K_M.gguf | Q3_K_M | 3 | 3.52 GB | 6.02 GB | 非常小,但质量损失高 |
em_german_leo_mistral.Q3_K_L.gguf | Q3_K_L | 3 | 3.82 GB | 6.32 GB | 小,但质量损失较大 |
em_german_leo_mistral.Q4_0.gguf | Q4_0 | 4 | 4.11 GB | 6.61 GB | 旧版本;小,但质量损失非常高,建议使用Q3_K_M |
em_german_leo_mistral.Q4_K_S.gguf | Q4_K_S | 4 | 4.14 GB | 6.64 GB | 小,但质量损失较大 |
em_german_leo_mistral.Q4_K_M.gguf | Q4_K_M | 4 | 4.37 GB | 6.87 GB | 中等,质量平衡,推荐使用 |
em_german_leo_mistral.Q5_0.gguf | Q5_0 | 5 | 5.00 GB | 7.50 GB | 旧版本;中等,质量平衡,建议使用Q4_K_M |
em_german_leo_mistral.Q5_K_S.gguf | Q5_K_S | 5 | 5.00 GB | 7.50 GB | 大,质量损失低,推荐使用 |
em_german_leo_mistral.Q5_K_M.gguf | Q5_K_M | 5 | 5.13 GB | 7.63 GB | 大,质量损失非常低,推荐使用 |
em_german_leo_mistral.Q6_K.gguf | Q6_K | 6 | 5.94 GB | 8.44 GB | 非常大,质量损失极低 |
em_german_leo_mistral.Q8_0.gguf | Q8_0 | 8 | 7.70 GB | 10.20 GB | 非常大,质量损失极低,但不推荐使用 |
注意:上述RAM数字假设没有进行GPU卸载。如果将层卸载到GPU,这将减少RAM使用,转而使用VRAM。
🔧 技术细节
本模型基于Mistral架构,经过特定的训练和优化,以适应德语文本生成任务。通过不同的量化方法,可以在模型大小和性能之间进行权衡,满足不同用户的需求。
📄 许可证
本模型遵循原始基础模型的许可证,许可证随模型文件一起分发。
其他信息
Discord
如需进一步支持,或参与有关这些模型和AI的讨论,请加入:TheBloke AI的Discord服务器
感谢与贡献
感谢 chirper.ai 团队!感谢来自 gpus.llm-utils.org 的Clay!
很多人询问是否可以进行贡献。我喜欢提供模型并帮助他人,也希望能有更多时间来做这些事情,同时拓展新的项目,如微调/训练。
如果你有能力且愿意贡献,我将非常感激,这将帮助我继续提供更多模型,并开展新的AI项目。
捐赠者将在所有AI/LLM/模型问题和请求上获得优先支持,访问私人Discord房间,以及其他福利。
- Patreon: https://patreon.com/TheBlokeAI
- Ko-Fi: https://ko-fi.com/TheBlokeAI
特别感谢:Aemon Algiz。
Patreon特别提及:Pierre Kircher、Stanislav Ovsiannikov、Michael Levine、Eugene Pentland、Andrey、준교 김、Randy H、Fred von Graf、Artur Olbinski、Caitlyn Gatomon、terasurfer、Jeff Scroggin、James Bentley、Vadim、Gabriel Puliatti、Harry Royden McLaughlin、Sean Connelly、Dan Guido、Edmond Seymore、Alicia Loh、subjectnull、AzureBlack、Manuel Alberto Morcote、Thomas Belote、Lone Striker、Chris Smitley、Vitor Caleffi、Johann-Peter Hartmann、Clay Pascal、biorpg、Brandon Frisco、sidney chen、transmissions 11、Pedro Madruga、jinyuan sun、Ajan Kanaga、Emad Mostaque、Trenton Dambrowitz、Jonathan Leane、Iucharbius、usrbinkat、vamX、George Stoitzev、Luke Pendergrass、theTransient、Olakabola、Swaroop Kallakuri、Cap'n Zoog、Brandon Phillips、Michael Dempsey、Nikolai Manek、danny、Matthew Berman、Gabriel Tamborski、alfie_i、Raymond Fosdick、Tom X Nguyen、Raven Klaugh、LangChain4j、Magnesian、Illia Dulskyi、David Ziegler、Mano Prime、Luis Javier Navarrete Lozano、Erik Bjäreholt、阿明、Nathan Dryer、Alex、Rainer Wilmers、zynix、TL、Joseph William Delisle、John Villwock、Nathan LeClaire、Willem Michiel、Joguhyik、GodLy、OG、Alps Aficionado、Jeffrey Morgan、ReadyPlayerEmma、Tiffany J. Kim、Sebastain Graf、Spencer Kim、Michael Davis、webtim、Talal Aujan、knownsqashed、John Detwiler、Imad Khwaja、Deo Leter、Jerry Meng、Elijah Stavena、Rooh Singh、Pieter、SuperWojo、Alexandros Triantafyllidis、Stephen Murray、Ai Maven、ya boyyy、Enrico Ros、Ken Nordquist、Deep Realms、Nicholas、Spiking Neurons AB、Elle、Will Dee、Jack West、RoA、Luke @flexchar、Viktor Bowallius、Derek Yates、Subspace Studios、jjj、Toran Billups、Asp the Wyvern、Fen Risland、Ilya、NimbleBox.ai、Chadd、Nitin Borwankar、Emre、Mandus、Leonard Tan、Kalila、K、Trailburnt、S_X、Cory Kujawski
感谢所有慷慨的赞助者和捐赠者!再次感谢a16z的慷慨资助。
原始模型卡:Jan Philipp Harries的EM German Leo Mistral
我们认为,这是用于德语应用的最强大的开源7b模型。
非常感谢 LeoLM 团队发布了一个经过德语文本持续预训练的基础模型,极大地提高了生成能力。
请注意,Mistral架构非常新,并非所有库都支持(例如AutoGPTQ)。如果遇到任何问题,请尝试使用不同的格式/基础模型。
介绍
EM German 是一个基于Llama2/Mistral/LeoLM的模型家族,在大量德语指令数据集上进行了微调。这些模型针对德语文本进行了优化,能够熟练理解、生成和交互德语内容。
我们提供基于7b、13b和70b Llama-2、Mistral和LeoLM(Llama-2/Mistral经过德语文本持续预训练)模型的版本。
有关EM German模型家族的所有信息、示例输出、特殊RAG提示格式、输出示例和评估结果,请参阅 我们的Github仓库。(德语版本)
链接与演示
- 模型链接:如果你只尝试一个模型版本,强烈推荐 LeoLM Mistral 模型,它在性能和计算要求方面提供了迄今为止最好的平衡!
基础模型 | HF | GPTQ | GGUF | AWQ |
---|---|---|---|---|
Llama2 7b | 链接 | 链接 | 链接 | 链接 |
Llama2 13b | 链接 | 链接 | 链接 | 链接 |
Llama2 70b | 链接 | 链接 | 链接 | 链接 |
Mistral 7b | 链接 | 链接 | 链接 | 链接 |
LeoLM 7b | 链接 | 链接 | 链接 | tbc |
LeoLM 13b | 即将推出 | 即将推出 | 链接 | tbc |
LeoLM Mistral 7b | 链接 | 即将推出 | 链接 | tbc |
不同版本的说明:另请参阅 示例输出比较,以比较(7b)模型的能力。
如果你对某个EM German版本的结果不满意,请尝试为你的用例选择不同(和/或更大)的模型或版本。
- 演示:你可以使用一些模型与免费的Google Colab实例(例如8位的70亿参数模型或使用GPTQ的13b模型):
提示格式
此模型遵循Vicuna格式,无需换行(但换行也应有效)。格式如下:
Du bist ein hilfreicher Assistent. USER: <instruction> ASSISTANT:
你可以将标准系统提示替换为更合适的提示(有关RAG任务,请参阅下文)。
示例输出
请在 此处 找到EM German所有7b版本的各种示例输出。
提示:
Erkläre die Bedeutung von drei wesentlichen Elementen der Bilanzierung und des Accountings nach IFRS für Unternehmen, die auf internationaler Ebene tätig sind.
EM German Leo Mistral 7b回答:
Die International Financial Reporting Standards (IFRS) sind eine Reihe von internationalen Rechnungslegungsstandards, die von der International Accounting Standards Board (IASB) entwickelt wurden. Sie sollen dazu beitragen, dass Finanzberichte vergleichbar, zuverlässig und relevant sind.
1. Fair Value: Dieses Konzept ist ein zentraler Bestandteil der IFRS. Es besagt, dass Vermögenswerte und Schulden zum fairen Wert bilanziert werden sollten, was dem Preis entspricht, zu dem sie zwischen Marktteilnehmern gehandelt werden könnten. Dadurch wird sichergestellt, dass das Unternehmen eine genaue Darstellung seiner finanziellen Lage liefert.
2. Konsolidierung: Die IFRS verlangen von Unternehmen, ihre Finanzergebnisse auf konsolidierter Basis darzustellen. Das bedeutet, dass alle Tochtergesellschaften und verbundenen Unternehmen in die Bilanz des Mutterunternehmens aufgenommen werden. Dadurch wird ein klareres Bild von der finanziellen Situation des Konzerns geschaffen.
3. Vollständigkeitsprinzip: Die IFRS verlangen von Unternehmen, alle relevanten Informationen offenzulegen. Dies umfasst sowohl positive als auch negative Faktoren, wie zum Beispiel Gewinne und Verluste, Einnahmen und Ausgaben sowie Risiken und Unsicherheiten. Durch dieses Prinzip wird sichergestellt, dass Investoren, Kreditgeber und andere Stakeholder eine umfassende Einschätzung der finanziellen Lage des Unternehmens vornehmen können.
提示:
Ein Mensch atmet durchschnittlich 16 Mal pro Minute. Wie oft atmet er an einem Tag?
EM German Leo Mistral 7b回答:
Zuerst berechnen wir, wie oft eine Person in einer Stunde atmet. Wir wissen, dass eine Stunde 60 Minuten hat, also:
Atemzüge pro Stunde = Atemfrequenz * Minuten pro Stunde
= 16 Atemzüge pro Minute * 60 Minuten
= 960 Atemzüge
Um herauszufinden, wie viele Atemzüge eine Person an einem Tag macht, müssen wir diese stündliche Rate mit der Anzahl der Stunden an einem Tag multiplizieren, also 24:
Atemzüge pro Tag = Atemzüge pro Stunde * Stunden pro Tag
= 960 Atemzüge * 24 Stunden
= 23.040 Atemzüge
Also macht ein durchschnittlicher Mensch etwa 23.040 Atemzüge an einem Tag.
(更多示例,请访问 我们的Github仓库。)
致谢
非常感谢 winglian/caseus 在Axolotl上的出色工作,我使用它来训练EM模型。我也感谢 Jon Durbin 及其 Airoboros 模型和代码,我从中借鉴了许多想法和代码片段。
此外,非常感谢 Björn Plüster 和LeoLM团队在LeoLM上的出色预训练工作,最后但同样重要的是,非常感谢 TheBloke 以各种格式准备量化版本。
70b模型的训练得到了 OVH Cloud Startup Program 的支持。
联系
如果你对用于商业应用的定制大语言模型感兴趣,请通过 我的网站 与我联系。我也始终欢迎建议和反馈。
附言:我们也一直对支持我们的初创公司 ellamind 感兴趣,该公司未来将提供用于商业应用的定制模型(我们目前仍处于隐身模式)。如果你将我们的模型用于商业应用,并且对专业能力有高级需求,请与我们联系。
免责声明
我不对使用此模型的第三方的行为或模型的输出负责。此模型仅应用于研究目的。原始基础模型的许可证适用,并随模型文件一起分发。



