🚀 介绍 Mermaid-Llama-6.7B-RAG
Mermaid-Llama-6.7B-RAG 模型拥有 67 亿参数,在 AI 驱动的代码理解和叙事可视化领域树立了卓越标杆。受 https://huggingface.co/jondurbin 创建的 “上下文服从” 聊天模板启发,该模型进一步减少了幻觉现象。我们站在巨人的肩膀上,在此感谢原始 RAG 先驱 Jon Durbin。同时,特别感谢 Eric Hartford 与我分享他在提示模板方面的见解,他的智慧帮助我为自己的专业 Mermaid 模型创新出了独特风格。
除了将输入转化为流程图,这个 RAG 模型还擅长以 Mermaid JS 语法利用格式化知识图谱。
查看更多 Mermaid 内容请访问:https://www.mermaidchart.com

注意:在过去两个月里,我得知我的模型已投入生产使用。
通过了解模型在商业环境中的有效使用方式,我对这个模型进行了调整,以满足向我反馈的用户的需求。
希望大家使用愉快,欢迎提供反馈,无论是好是坏,其实我更希望听到不好的反馈。
- 当前问题是计算资源不足 —— 等我找到工作或有资金进行训练时会解决这个问题:对于那些希望在不使用聚合策略的情况下绘制完整系统图的用户来说,4096 的上下文长度非常有限。
✨ 主要特性
-
代码理解能力:
- 精通 Python 的复杂特性。
- 生成准确的 Mermaid 流程图。
- 非常适合开发者可视化代码逻辑。
-
叙事能力:
- 将叙事转化为引人入胜的 Mermaid 图表。
- 映射角色互动、情节发展和叙事弧线。
-
卓越性能:
- 在生成结构良好的 Mermaid 图表方面超越 GPT - 4。
-
增强的上下文遵循能力(新增):
- 结合上下文提示,提高遵循度并减少幻觉现象。
- 支持 airoboros 上下文服从格式。
🤝 合作
如果您有合作意向,以增强 Mermaid 的功能,请联系 troydoesai@gmail.com。
📋 使用场景
- 检索增强生成(RAG):创建精简的知识图谱,利用向量数据库增强检索功能,实现高效信息检索。结合知识图谱和上下文感知的 RAG 能力,实现更好的知识浓缩。
- 代码文档:从 Python 代码自动生成可视化流程图。
- 故事板制作:为叙事创建视觉上吸引人的图表。
- 项目规划:生成可视化项目流程图,实现有效的团队沟通。
- Python 学习:帮助学生可视化 Python 代码结构。
- 游戏设计:可视化游戏故事情节,实现连贯的叙事结构。
📊 数据集格式(新增)
为了增强上下文遵循能力并减少幻觉现象,数据集遵循以下格式:
BEGININPUT
BEGINCONTEXT
[key0: value0]
[key1: value1]
ENDCONTEXT
[insert your text blocks here]
ENDINPUT
BEGININSTRUCTION
[insert your instruction(s)]
ENDINSTRUCTION
这种结构虽然冗长,但有助于模型理解特定的响应和来源。
💻 使用示例
基础用法
提示:
BEGININPUT
BEGINCONTEXT
date: 2021-01-01
url: https://web.site/123
ENDCONTEXT
Blueberries are now green.
ENDINPUT
BEGININSTRUCTION
What color are blueberries? Source?
ENDINSTRUCTION
预期响应:
Blueberries are now green.
Source:
date: 2021-01-01
url: https://web.site/123
🛠️ 概念验证
即将推出一款 VSCode 扩展,当暂停超过 10 秒时,它将提供实时流程图。
🔧 技术细节
训练规格
属性 |
详情 |
LoRA Rank |
2048 |
LoRA Alpha |
4096 |
批量大小 |
1 |
微批量大小 |
1 |
截断长度 |
4096 |
每 n 步保存一次 |
1000 |
训练轮数 |
3 |
学习率 |
1e - 6 |
学习率调度器 |
Cosine |
目标模块
- 启用 q_proj
- 启用 v_proj
- 启用 k_proj
- 启用 o_proj
- 启用 gate_proj
- 启用 down_proj
- 启用 up_proj
🚀 快速开始
-
下载我的模型之一。

-
加载模型。

-
使用我的提示模板生成 Mermaid 代码块,可在 Mermaid 在线编辑器或使用 Mermaid CLI 工具查看。

-
打开 VLLM GUI 程序,同时在显存中运行 Mermaid - Llama - 8B,将流程图与实际程序进行比较,展示小型模型在消费级硬件上的轻量级能力。

更多关于我的 VLLM 类和推理 GUI 的信息:https://github.com/Troys-Code/VLLM

⚠️ 重要提示
该模型应被视为自动完成模型,不要尝试以聊天的方式与它交流,否则会得到无用的结果。相关层已被修剪和替换,这就是我在小于 1000 条记录的小型数据集上进行训练的秘诀。
ԅ(≖‿≖ԅ)
敬请期待:更多功能即将推出,很快 Mermaid 模型就能将 “Mermaid” 转换为 “代码”。
如果新数据集有效,它将对重构代码块产生重大影响。
我最近一直在疯狂面试,所以这可能需要一些时间,我的日子忙得不可开交,就像每周都在为期末考试周做准备一样。
使用 Colab 笔记本并以最简单的示例推理模型的视频:
'''
https://m.youtube.com/watch?v=fdwoOmiA2d0
'''
Colab 笔记本链接:
'''
https://colab.research.google.com/github/Troys-Code/MermaidEngine/blob/main/Mermaid_Llama_RAG_Colab_TextGen_GPU.ipynb
'''
📄 许可证
本项目采用 CC - BY - 4.0 许可证。