不是相关行业从业者,可能这个提问都有问题,请见谅。
我的需求是,对于一些开源的科学计算软件,如 OpenFOAM ,能否用相关的文档、代码来训练大语言模型,让它精通这个软件的使用,然后辅助学习?比如它学习了 OpenFOAM 的文档后,能告诉我某一求解器的各个参数的详细物理含义、设置范围,针对我提出的仿真需求,能给出关于物理模型选择、设置等建议。
请问应该如何训练大语言模型来满足这种需求?若有比较详细的方案就更好了,谢谢!
1
fox0001 2023-11-25 09:43:04 +08:00 via Android
如果要快速实现,建议找个开源项目部署一下。甚至直接使用相关产品(不用训练)。
深度学习,或者上一层的机器学习,涉及的东西太多,不是三言两语能说完。 另外,不要以为丢一本书给模型训练,它就能获得相关的能力。训练模型需要海量数据和大量硬件成本。像 ChatGPT 这种产品,不是普通人拿个笔记本电脑就能实现。 |
2
ossphil OP 部署开源项目也得训练吧?
看你的回复感觉个人要实现这种需求并不现实 |
3
matchalatte 2023-11-25 20:29:27 +08:00 1
训练还是比较困难。如果真的要训练的话,可以采用 LoRA 等高效参数微调的方式。
但是现在的 LLM 都是指令模型,微调并不是直接将文档放进去就行,而是需要构造问答形式的数据。如果只在文档上训练得到的模型就只有补全能力,并不具有针对问题回答的能力。 举个例子,如果直接将唐诗三百首喂给模型。你给模型输入“怀民亦未寝”,它能够继续续写。但你如果说“请给我写一个有关月亮的诗”模型就无法可靠输出,因为训练数据里并没有这样的指令形式。 目前主流的方法还是使用知识库,将文档放到一个基于向量的 KnowledgeBase 中,每次提问时自动在知识库中检索相关条目,拼接在上文里进行提问,也就是检索增强生成 Retrieval Augmented Generation (RAG)。 这种方法不需要对模型进行训练,因此可以使用本地部署的模型,也可以直接调用 OpenAI 的 API 。 现在已经有许多相关的框架了,如 [LangChain]( https://github.com/langchain-ai/langchain) 或是对 LangChain 的高层封装 [Chatchat]( https://github.com/chatchat-space/Langchain-Chatchat) |
4
ossphil OP 了解一些了,非常感谢!
|