项目介绍:Dolphin-2.6-Mixtral-8x7b 🐬
Dolphin-2.6-Mixtral-8x7b 是一个强大的人工智能模型,旨在提供高效和灵活的对话与编程能力。该模型基于 Mixtral-8x7b,并通过大量的编程数据进行微调,以提高代码处理能力。Dolphin-2.6在对话和编程方面表现出色,虽然未进行DPO(直接优化)调优,但在提供适当的提示后,模型仍能胜任复杂任务。
训练背景
这个模型由 convai 赞助训练,并在 Mixtral-8x7b 的基础上进行了优化。基模型支持32k上下文,而Dolphin-2.6经过微调后支持16k上下文。训练期间使用了qLoRA和Axolotl框架,在4个A100 GPU上进行了1.5个epoch,用时3天。该模型采用ChatML提示格式,可以更好地识别和处理上下文。
新版本功能
在2.6版本中,修复了训练配置问题,大幅提升了模型质量。此外,满足用户需求,重新引入了基于Samantha的同理心数据,并用Capybara数据替换了之前的Synthia和Pure-dove数据。
模型性能
该模型未经过内容审查,数据集中已移除对齐性和偏见内容,提高了模型的合规性。用户需要注意在开放服务前自行实施对齐层,以确保符合道德和法律的使用要求。
示例输出
模型能够解决复杂的编程问题,比如在LeetCode平台的“Find Largest Submatrix with All Ones”问题,并能够给出详细的Kotlin解决方案。以下是示例代码:
fun largestSubmatrix(matrix: Array<IntArray>): Int {
if (matrix.isEmpty()) return 0
val rows = matrix.size
val cols = matrix[0].size
val dp = Array(rows) { IntArray(cols) }
for (c in 0 until cols) {
for (r in 0 until rows) {
if (matrix[r][c] == 1) {
dp[r][c] = r.coerceAtMost(dp[r - 1][c] + 1)
}
}
}
var maxArea = 0
for (r in 0 until rows) {
for (c in 0 until cols) {
if (dp[r][c] != 0) {
val area = dp[r][c] * (cols - c)
maxArea = maxOf(maxArea, area)
}
}
}
return maxArea
}
未来计划
Dolphin项目的下一阶段是3.0版本,计划包括以下内容:
- 增强的一般聊天应用场景
- 增强的结构化输出能力
- 增强的自动生成、记忆型GPT和功能性案例
- 增强的角色扮演功能
感谢
特别感谢 Convai 的赞助,感谢MistralAI、Microsoft以及众多数据集作者和开源社区贡献者们的支持与帮助。通过大家的共同努力,Dolphin-2.6-Mixtral-8x7b得以实现并不断创新。
阅读者若有兴趣可以通过此链接 支持该项目的发展。