mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
77 lines
3.7 KiB
Python
77 lines
3.7 KiB
Python
class ModelData:
|
|
def __init__(self, name, version = "", revision="", path="", download=""):
|
|
self.name = name
|
|
self.version = version
|
|
self.revision = revision
|
|
self.path = path
|
|
self.download = download
|
|
|
|
def __str__(self):
|
|
return self.args().__str__()
|
|
|
|
def args(self):
|
|
args = ["-m", self.name]
|
|
if (self.version):
|
|
args += ["-g", self.version]
|
|
if (self.revision):
|
|
args += ["-r", self.revision]
|
|
return args
|
|
|
|
|
|
class ModelFactory:
|
|
def __init__(self, **kwargs):
|
|
self.kwargs = kwargs
|
|
|
|
def NewModelData(self, name, **kwargs):
|
|
cpy = self.kwargs.copy()
|
|
cpy.update(kwargs)
|
|
return ModelData(name = name, **cpy)
|
|
|
|
|
|
def GetModels(Version):
|
|
mf = ModelFactory(version=Version)
|
|
return {
|
|
"Nerys V2 6B": mf.NewModelData("KoboldAI/OPT-6B-nerys-v2"),
|
|
"Erebus 6B": mf.NewModelData("KoboldAI/OPT-6.7B-Erebus"),
|
|
"Skein 6B": mf.NewModelData("KoboldAI/GPT-J-6B-Skein"),
|
|
"Janeway 6B": mf.NewModelData("KoboldAI/GPT-J-6B-Janeway"),
|
|
"Adventure 6B": mf.NewModelData("KoboldAI/GPT-J-6B-Adventure"),
|
|
"Pygmalion 6B": mf.NewModelData("PygmalionAI/pygmalion-6b"),
|
|
"Pygmalion 6B Dev": mf.NewModelData("PygmalionAI/pygmalion-6b", revision="dev"),
|
|
"Lit V2 6B": mf.NewModelData("hakurei/litv2-6B-rev3"),
|
|
"Lit 6B": mf.NewModelData("hakurei/lit-6B"),
|
|
"Shinen 6B": mf.NewModelData("KoboldAI/GPT-J-6B-Shinen"),
|
|
"Nerys 2.7B": mf.NewModelData("KoboldAI/fairseq-dense-2.7B-Nerys"),
|
|
"Erebus 2.7B": mf.NewModelData("KoboldAI/OPT-2.7B-Erebus"),
|
|
"Janeway 2.7B": mf.NewModelData("KoboldAI/GPT-Neo-2.7B-Janeway"),
|
|
"Picard 2.7B": mf.NewModelData("KoboldAI/GPT-Neo-2.7B-Picard"),
|
|
"AID 2.7B": mf.NewModelData("KoboldAI/GPT-Neo-2.7B-AID"),
|
|
"Horni LN 2.7B": mf.NewModelData("KoboldAI/GPT-Neo-2.7B-Horni-LN"),
|
|
"Horni 2.7B": mf.NewModelData("KoboldAI/GPT-Neo-2.7B-Horni"),
|
|
"Shinen 2.7B": mf.NewModelData("KoboldAI/GPT-Neo-2.7B-Shinen"),
|
|
"Fairseq Dense 2.7B": mf.NewModelData("KoboldAI/fairseq-dense-2.7B"),
|
|
"OPT 2.7B": mf.NewModelData("facebook/opt-2.7b"),
|
|
"Neo 2.7B": mf.NewModelData("EleutherAI/gpt-neo-2.7B"),
|
|
"Pygway 6B": mf.NewModelData("TehVenom/PPO_Pygway-6b"),
|
|
"Nerybus 6.7B": mf.NewModelData("KoboldAI/OPT-6.7B-Nerybus-Mix"),
|
|
"Pygway v8p4": mf.NewModelData("TehVenom/PPO_Pygway-V8p4_Dev-6b"),
|
|
"PPO-Janeway 6B": mf.NewModelData("TehVenom/PPO_Janeway-6b"),
|
|
"PPO Shygmalion 6B": mf.NewModelData("TehVenom/PPO_Shygmalion-6b"),
|
|
"LLaMA 7B": mf.NewModelData("decapoda-research/llama-7b-hf"),
|
|
"Janin-GPTJ": mf.NewModelData("digitous/Janin-GPTJ"),
|
|
"Javelin-GPTJ": mf.NewModelData("digitous/Javelin-GPTJ"),
|
|
"Javelin-R": mf.NewModelData("digitous/Javelin-R"),
|
|
"Janin-R": mf.NewModelData("digitous/Janin-R"),
|
|
"Javalion-R": mf.NewModelData("digitous/Javalion-R"),
|
|
"Javalion-GPTJ": mf.NewModelData("digitous/Javalion-GPTJ"),
|
|
"Javelion-6B": mf.NewModelData("Cohee/Javelion-6b"),
|
|
"GPT-J-Pyg-PPO-6B": mf.NewModelData("TehVenom/GPT-J-Pyg_PPO-6B"),
|
|
"ppo_hh_pythia-6B": mf.NewModelData("reciprocate/ppo_hh_pythia-6B"),
|
|
"ppo_hh_gpt-j": mf.NewModelData("reciprocate/ppo_hh_gpt-j"),
|
|
"Alpaca-7B": mf.NewModelData("chainyo/alpaca-lora-7b"),
|
|
"LLaMA 4-bit": mf.NewModelData("decapoda-research/llama-13b-hf-int4"),
|
|
"GPT-J-Pyg_PPO-6B": mf.NewModelData("TehVenom/GPT-J-Pyg_PPO-6B"),
|
|
"GPT-J-Pyg_PPO-6B-Dev-V8p4": mf.NewModelData("TehVenom/GPT-J-Pyg_PPO-6B-Dev-V8p4"),
|
|
"Dolly_GPT-J-6b": mf.NewModelData("TehVenom/Dolly_GPT-J-6b"),
|
|
"Dolly_Pyg-6B": mf.NewModelData("TehVenom/AvgMerge_Dolly-Pygmalion-6b")
|
|
} |