Comments (5)
我从uniem发布开始,大致细看过3个版本,前后分别是
加入了一段T5的判断
,和修改成model_class
。 我之前很多代码是在 Sentence Transformers 上的,uniem比较吸引我的是包装了数据处理等流程。如果说Finetuner着重于m3e,那我表示理解。
但如果uniem希望建立一套sentence transformers之上的工具,或许可以考虑更开放的模型支持(因为从实现上,这里的微调和从头训练已经很接近了)。
我尝试在decoder-only上做一些embedding的工作,所以做了些改动,更新时看到了model_class参数,故而提了这个issue。
以上可供您参考。
uniem 0.3.0 已经支持 sentence-transformers 了,整体代码的灵活性有了提升~ 如有问题,可以进一步沟通
from uniem.
是的,这个是我在设计的时候刻意这么做的。我当时的决策是这样的:
model_class
参数的引入,是为了兼容没有办法通过AutoModel.from_pretrianed
来加载的模型,通过这个参数就可以显式的指定模型类别。Finetuner
主要的场景是微调m3e-base
和m3e-small
,这两个模型都是可以通过AutoModel.from_pretrianed
来加载的,为了减少用户的认知负担,所以没有进行传递。
请问,您是在使用的时候需要传递这个参数吗?我在做以上决策的时候是非常武断的,如果您有需求,我可以支持传递这个参数。
from uniem.
我从uniem发布开始,大致细看过3个版本,前后分别是加入了一段T5的判断
,和修改成model_class
。
我之前很多代码是在 Sentence Transformers 上的,uniem比较吸引我的是包装了数据处理等流程。
如果说Finetuner着重于m3e,那我表示理解。
但如果uniem希望建立一套sentence transformers之上的工具,或许可以考虑更开放的模型支持(因为从实现上,这里的微调和从头训练已经很接近了)。
我尝试在decoder-only上做一些embedding的工作,所以做了些改动,更新时看到了model_class参数,故而提了这个issue。
以上可供您参考。
from uniem.
明白您的需求了,目前 uniem 的训练脚本 其实是可以直接训练 SGPT 的,只需要设置 model_class 和 bitfit 的参数。所以对于 uniem 现在的设计来讲,想要兼容 decoder-only 或者更多的模型,其实是没有什么大的困难。
您的建议非常好,我会尽快把这个参数加到 FineTuner
中。另外,我接下来也会优化这部分的设计,尽量让 uniem 在保持在低学习成本的约束下,兼容更多模型。
哈哈,主要 uniem 欠了好多债,SGPT 没测完,ReRaking 的模型没训练完,详细文档没有写。听说你有兴趣使用 uniem 来做你的工作,那太好了! 有啥问题和进展,直接和我说就好~
from uniem.
我写了一个最初版的实现在 finetuner-model-class 分支上,但是想要真正支持 sentence_transformers ,还是需要进一步开发~
from uniem.
Related Issues (20)
- 关于huggingface方法调用 HOT 1
- sentence-transformer调用huggingface模型 HOT 1
- 负采样 HOT 3
- 请教贴:文本最大长度 HOT 5
- 进行评测时会报错,分叉可能会导致死锁. HOT 1
- 求一份评测数据集 HOT 1
- 微调后模型保存和load的问题 HOT 3
- m3e-large数据集的相关问题 HOT 1
- m3e训练的时候使用的数据集是hugg上面列出的数据集,训练和测试集和验证集一起用来训练了吗? HOT 1
- 请问微调之后的模型如何支持C_MTEB数据集上的评测呢 HOT 2
- 实际测试 PairInBatchNegSoftmaxContrastLoss和PairInBatchNegCoSentLoss的值是一样的 HOT 1
- 转onnx问题 HOT 1
- 能不能说明一下显卡要求啊? HOT 3
- fintuner如何使用gpu? HOT 1
- 问题 HOT 3
- 代码跑着跑着就挂了,CUDA out of memory HOT 1
- Loss固定不变或者上升 HOT 2
- M3E如何指定为GPU训练,而不是CPU训练? HOT 1
- 模型训练后生成的内容不对 HOT 1
- 微调后模型没有保存2_Dense HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from uniem.