原贴链接

我搜索过这些(以及更多)问题,但对我来说仍有很多不清楚的地方。我刚接触这个领域。到目前为止,我只运行过Ollama(和Alpaca),只是随便玩玩看看它能做什么。我正在使用Fedora系统,目前仅使用CPU。我正在制作一些调整后的模型,并尝试各种参数的作用等。我不是程序员,只是边做边学,目前我有一些随机的问题:1. 如何让模型更好地保持其个性?我一直在模型文件的SYSTEM设置中指定指令。通常效果还不错,但经常会出现问题。模型有时会忽略指令,与用户角色互换,用第三人称谈论自己,开始创建自己和用户之间的整个对话,或者在输出过程中转换个性。这其中有什么逻辑规则吗?还是更像是随机的?例如,我想看看能否让一个模型表现得像个调皮的青少年(我认为这对家庭助手来说是个有趣的个性)。如果指令是‘你是一个青少年’,它就完全被忽略了。当我把它重新表述为‘你表现得像个青少年’时,就起作用了。其他时候,‘你是用户的某某’或者‘助手是……’这种指令能成功,但这也取决于后续指令,有时还是不行。就是这样吗?你能给我一些你让模型做你想做之事的例子吗?还有,我正在使用STOP参数让它停止说(助手)之类的话,但现在我在想这是否会影响性能。我假设模型会预先评估很多可能的文本/标记/之类的东西,所以如果它‘想要’说(助手)并继续往下说,但生成在那里停止了,就有些工作白做了。或者至少它的内部指令足够复杂,它本可以继续的。还是我想多了?2. 有没有好的工具来管理模型文件?比如我可以对我所有的模型文件进行更改(比如当我找到另一个要添加到STOP列表的东西时),比较更改,保存时自动创建模型……诸如此类的功能。有这样的工具吗?3. 我能让模型停止使用某些短语,或者少用它们吗?或者其他特定的行为?例如,我试图用Zephyr 7b进行写作头脑风暴,它总是使用某些短语,如‘从那天起’等。我知道我可以设置一些重复惩罚,但我已经非常厌烦这些短语,不想再看到它们了。而且它倾向于很多句子以‘As’开头,如果我把重复惩罚设置得足够高来阻止这个,往往就会把一切都搞砸。而且它往往总是写一个最后的段落,这既无用又经常与我的指令相矛盾。我试图通过SYSTEM设置给模型指令,但没有什么实际效果。(而且其他模型也有它们自己恼人的特点。)这可以通过RAG(检索增强生成)实现吗?我发现这在OpenAI上应该是可以调整的,但还没有深入研究。4. 有效的上下文窗口值是多少?我想要一个小于32k的值以便在32GB内存上可靠运行。困惑度(Perplexity)告诉我24576是一个有效值,但可能取决于模型,如果模型不支持,可能会恢复到默认值。如何确定呢?我不是指最大值,而是中间的值。或者任何值都可以吗?还是只有2的幂次方?顺便说一下,24576似乎确实适用于我试过的基于Mistral的模型,即比32k占用更少的内存,比16k占用更多的内存,但我不能说它是否可靠。5. 我不明白如何让从HuggingFace下载的Phi3.5 3B以GGUF格式可靠地工作。在终于找到正确的模板(粘贴在此)后,它能够响应查询,但在回答我的问题之前往往会绕圈子,而且回答完之后还会继续生成它脑海中的东西。我还认为设置系统或温度等参数没有任何作用。Phi是不是有什么特殊之处,它是否使用了不同的格式?还是我只是下载了一个奇怪的模型,我应该尝试另一个吗?(我更喜欢下载GGUF格式而不是从Ollama拉取,这样我就可以在我的硬盘上把它们分类存到文件夹里)我还发现它需要将上下文窗口设置得比基于Mistral的模型低很多才能在相同的内存量下运行。对于Mistral 7B模型,我通常可以将窗口设置为32k以适应32GB内存,而对于Phi 3.5 3B则只有16k。这是怎么回事?6. 这些模型是否严格局限于输入->输出?我的意思是,是否有可能制作出一种可以在用户输入时读取并中断,或者一次创建多个输出的东西?一种能更好地模拟人类聊天的东西。这是大型语言模型(LLM)工作方式的固有限制,还是仅仅出于实际原因才这样做的?7. 我一直在想我可能会买一个GPU,但如果我买的话,我只能买得起像4060这种有6GB内存的,而且只能通过Thunderbolt外部使用。这样的设置值得吗?从我看过的基准测试来看,可能会有5倍的性能提升,但我还没有看到关于外接GPU(eGPU)的讨论,而且限制也不清楚。当我运行7B模型,上下文为32k并且它们耗尽了我32GB的系统内存时,如果我想在6GB的GPU上运行类似的东西,这意味着什么?无论来源如何,内存需求是否相同,还是内存是共享的?我很困惑。8. 我一直看到一个有趣的现象。在我和一个模型交谈一段时间后,然后问一些难题,给它一个选择,或者让它在一个新方向上继续叙述时,它可能需要很长时间来‘思考’,即需要一段时间来生成响应。然后在后续的提示下它又恢复到正常速度,即使提示的长度大致相同。在这种时候它做的事情和其他提示时有什么不同,为什么需要这么长时间?它是在重新评估整个上下文吗?它是在创建一个新的巨大概率表吗?它在哪里进行计算,因为内存使用保持不变?这看起来真的很酷,我想阅读更多关于这方面的内容,但我不确定要找什么来更好地理解这个问题。9. 你们有什么很酷的随机东西推荐我接下来尝试吗?信息太多了,充满了晦涩难懂的术语和首字母缩写词。系统地学习任何东西都太令人困惑了,所以我只想尝试一些更简单的东西,看看有没有什么特别的东西能让我感兴趣。我只对本地开源解决方案感兴趣。我已经安装了Docker,可能接下来会深入研究图像生成,但现在我只想继续尝试各种东西。有哪些值得一试的小模型、应用或资源可以查看吗?谢谢!

讨论总结

原帖作者提出了一系列在使用模型过程中遇到的问题,包括模型个性保持、模型文件管理、模型特定行为控制、上下文窗口值、模型下载运行、模型输入输出限制、GPU使用价值、模型反应现象以及寻求新的尝试方向等。评论者们大多以理性和专业的态度进行回应,从不同角度对这些问题进行解答并给出相关建议,整体氛围积极且充满技术交流氛围。

主要观点

  1. 👍 解决模型保持个性问题可使用更大模型。
    • 支持理由:更大的模型经过更多内容训练可能会更好地保持个性。
    • 反对声音:无
  2. 🔥 阻止模型使用某些短语基本无法实现。
    • 正方观点:模型会找到相似表达,强行阻止可能导致模型无话可说。
    • 反方观点:无
  3. 💡 语境窗口的值小于最大值即可,2的幂次并非必要条件。
    • 解释:不需要严格遵循2的幂次设定语境窗口值,小于最大值就行。
  4. 💡 6GB显存对于运行大模型价值不大。
    • 解释:显存容量较小,对于运行大模型可能无法提供足够性能提升。
  5. 💡 模型采用角色的方式是部分艺术部分科学的,有常见的指令格式且可能需详细阐述。
    • 解释:不同的LLM有差异,但“You are X”或“Respond as X”是较常见的指令格式,可能还需要一到两段阐述。

金句与有趣评论

  1. “😂 social_tech_10: Sorry, the limit is one question per customer.”
    • 亮点:以幽默诙谐的方式回应原帖提出过多问题的情况。
  2. “🤔 1. Use a bigger model trained on more stuff.”
    • 亮点:简洁地给出解决模型个性保持问题的一种思路。
  3. “👀 3. No, and you’re playing whack - a - mole by trying. The model will just find very slightly different ways of saying the same thing. If you manage to stamp out all possible ways, you will usually just find the model has no clue what else to say and goes nuts.”
    • 亮点:生动形象地解释了阻止模型使用某些短语难以实现的原因。

情感分析

总体情感倾向是积极的,大家都在认真解答原帖的问题,没有明显的分歧点。可能的原因是原帖是技术类问题探讨,评论者大多以分享技术经验和知识为主。

趋势与预测

  • 新兴话题:Kobold即将推出的特殊解码技术可能会引发后续关于提升CPU性能方面的讨论。
  • 潜在影响:这些关于模型使用的讨论有助于新手更好地理解和操作模型,对模型相关技术在开源社区的普及和发展有积极影响。

详细内容:

标题:Reddit 上关于模型使用与优化的热门讨论

在 Reddit 上,有一个题为“I have a bunch of random questions (and it’s not low effort)”的帖子引发了广泛关注。该帖子提出了一系列有关模型使用的问题,获得了众多点赞和大量评论。

帖子中,作者表示自己是模型使用的新手,在使用 Fedora 系统且仅依靠 CPU 运行 Ollama 和 Alpaca 模型时,遇到了诸多问题,比如如何让模型更好地保持特定性格、如何管理模型文件、怎样让模型减少使用某些短语等。

讨论焦点与观点分析:

  • 关于让模型保持性格的问题,有人认为这既有艺术成分也有科学成分,通常以“你是 X”或“以 X 身份回应”的方式引导模型,但往往需要更详细的阐述。
  • 对于是否能管理模型文件,有人推荐尝试 koboldcpp,它能保存和编辑模型卡。
  • 谈到限制模型使用某些短语,有人指出这就像打地鼠,模型可能会以略微不同的方式表达相同意思。
  • 在设置合适的上下文窗口值方面,有人认为只要小于模型支持的最大值即可,而以 2 的幂次设置可能在 GPU VRAM 中排列更优。
  • 对于使用较小显存的 GPU 是否值得,观点不一,有人认为 6GB 显存的 GPU 局限性较大,除非是很小的模型,也有人觉得可以结合系统内存和显存使用。
  • 至于模型是否存在固有功能限制,有人认为可以通过围绕模型构建装置来实现更多功能。

在这场讨论中,各方观点丰富多样,为模型的使用和优化提供了多维度的思考。你觉得这些观点对你理解和使用模型有帮助吗?