Chatgpt Clones, Computer Automation With Ai

RWKV
language models
Hugging Face
Baize
Dolly
LLaMA NLP models
download links
installation instructions
fine-tuned models
Alpaca
This article introduces the RWKV language models available on Hugging Face and discusses various NLP models such as Baize, Dolly, LLaMA, and Alpaca. It provides download links, installation instructions for these models, and information about fine-tuned models like Alpaca based on LLaMA.
Published

April 2, 2023


simply because the original note on chatgpt is too long, we start a new one, with more topics and more resources.


visit poe.com for a bunch of free chatbots, including GPT-4

chathub is a browser plugin which you can use ChatGPT, Bing and Bard


ts_server supports a bunch of models like GPT-J, GPT-NeoX, GPT-Neo, OPT, Fairseq GPT, M2M100, CodeGen, GPT2, T5, RWKV, LLAMA and Stable Diffusion, used by textsynth.com


to manage python versions and environments, pyenv and venv is lightweight and miniconda or mamba is more sophisticated.


javascript code for extracting model list from huggingface personal homepage:

var arr = [];
for (var i of document.getElementsByTagName("h4")) {var t = i.innerText; var tlist = t.split("/"); var t0 = tlist[0]; var t1 = tlist[1]; arr.push(`| [${t1}](https://huggingface.co/${t}) | unknown | unknown | ${t0} |`)};
console.log(arr.join('
'));

convert arxiv paper (pdf) into html: arxiv vanity (you will have a better view than before, though will not always work) code on github

aminer is similar to paperswithcode, in which you may find interesting papers.


someone prefers bert4keras since it implements multiple LLM into Keras, also easy for GPT-2 LoRA training (by adding a single layer)


people love to post uncensorable links and torrents to internet archive and the-eye, just like the gpt-4chan


to create a simple API (compatible with OpenAI APIs) for LLMs, use SimpleAI

fine-tuning and tricks

PEFT (Parameter Efficient Fine Tuning) supports LoRA, Prefix Tuning, P-Tuning and Prompt Tuning.

computer automation with ai

virtual machines and environments

it is not feasible to install ubuntu arm on macos m1 with virtualbox. use utm.app instead. instructions on installing ubuntu with utm includes guides on sharing clipboard and directory.

papers

playing atari using q-learning (viewing deepmind paper with arxiv vanity)

models

video pretraining can perform minecraft diamond mining tasks with keyboard and mouse movements

code and model


mm-cot (multimodal chain-of-thought) by amazon, with model weights

data collectors and controllers

mss for screenshot, remember to save raw pixels to SSD, then compress into mp4 with ffmpeg for further training (mind the timestamp!)


go-vncdriver by openai, to compile you need to clone the repo and modify code to find headers for libjpeg-turbo and python.

libvncdriver

asyncvnc (supports apple vnc), side project: asyncssh

python-vnc-client with keydown/keyup event support

vncdotool

pyVNC


pynput as input event listener and actor, listener may have some strange keycodes when pressing modifier keys on windows.

note that special care needed for aligning mouse location with screenshot size


ViT-pytorch can be used in many ViT-based models, listed and implemented in the repo.

spaces

openai universe (blog post here) and starter agents, remotes are using vnc protocol and a reward protocol using websocket sending json (can send actions). they prefer TigerVNC, maybe that will send the existing monitor instead of invisible ones.

gym is classic and modular. atari-py enables old games

retro deprecates universe, but might help with general computer controlling AI systems since they are compatible. human don’t play games all day and night. beware of this and don’t turn the model into a heavy gamer.

there is no meaning of recording terminal input/output when using tools like vim. get screenshots, keystrokes and mouse clicks instead (using ttyd, gremlins.js or monkey.js). tkterminal won’t do. it is just a thin wrapper around subprocess.run

talking of browser, you can spin up novnc server and let the gremlins.js do its job.

accelerators

cformers

cpu only

able to install from pip

ggml

cpu only

cpp, only compile from source

flexgen

gpu is mandatory, better than deepspeed and Hugging Face Accelerate

open source model and weights

awesome decentralized llm listed up-to-date related chatgpt-like repositories, datasets, model weights and resources.


model weights of open source chatgpt alternatives:

weight path model size model name author
openchatgpt-neox-125m 125m gpt-neox mrsteyk
openchatgpt-neo-125m 125m gpt-neo mrsteyk

LLaMA

it’s public.

weight path model name author
llama-13b-hf-int4 13b decapoda-research
llama-65b-hf-int4 65b decapoda-research
llama-30b-hf-int4 30b decapoda-research
llama-7b-hf-int4 7b decapoda-research
llama-30b-hf 30b decapoda-research
llama-65b-hf 65b decapoda-research
llama-13b-hf 13b decapoda-research
llama-7b-hf 7b decapoda-research
llama-smallint-pt unknown decapoda-research
llama-7b-hf-int8 7b decapoda-research

ChatYuan

v2 is censored.


model weights:

weight path model size model name author
ChatYuan-large-v1 unknown unknown ClueAI
ChatYuan-large-v2-paddle unknown unknown ClueAI
ChatYuan-large-v2 unknown unknown ClueAI
ChatYuan-large-v1-paddle unknown unknown ClueAI

Deepshard

LLaMA trained on custom instruction dataset.


model weights:

weight path weight size model name author
deepshard-13B-ft 13b deepshard swype
deepshard-13B-raw 13b deepshard swype

ChatGLM

Currently only open-sourced 6B version.

You can train ChatGLM using GXT3090: simple_thu_chatglm6b

Using 7GB VRAM, train ChatGLM with P-tuning

chatglm_finetuning supports loading from int4 weights


model weights:

weight path weight size model name author
chatglm-6b-int4-slim 6b chatglm silver
chatglm-6b-slim 6b chatglm silver
chatglm-6b-int4-qe-slim 6b chatglm silver
chatglm-6b-int4 6b chatglm THUDM
chatglm-6b-int4-qe 6b chatglm THUDM
chatglm-6b 6b chatglm THUDM

ChatDoctor

LLaMA-65B trained on medical dataset InstructorDoctor-200k

BELLE

开源中文对话大模型


model weights:

weight path weight size model name author
BELLE-LLAMA-7B-0.6M 7B LLaMA BelleGroup
BELLE-LLAMA-7B-2M 7B LLaBLOOMZMA BelleGroup
BELLE-LLAMA-7B-2M-gptq 7B LLaMA BelleGroup
BELLE-LLAMA-13B-2M 13B LLaMA BelleGroup
BELLE-7B-gptq 7B BLOOMZ BelleGroup
BELLE-7B-2M 7B BLOOMZ BelleGroup
BELLE-7B-0.6M 7B BLOOMZ BelleGroup
BELLE-7B-0.2M 7B BLOOMZ BelleGroup
BELLE-7B-1M 7B BLOOMZ BelleGroup

baize

trained on ChatGPT self-chatting data


model weights:

weight path weight size model name author
baize-lora-30B 30b baize project-baize
baize-lora-13B 13b baize project-baize
baize-healthcare-lora-7b 7B baize project-baize
baize-lora-7B 7B baize project-baize

dolly

model arch is gpt-j, trained on alpaca dataset


model weights:

weight path weight size model name author
dolly-v1-6b 6b dolly databricks
dolly-lora unknown dolly samwit

FastChat (Vicuna)

web interface


model weights:

weight path weight size model name
vicuna unknown Vicuna
vicuna2 unknown Vicuna
vicuna-13b-delta-v0 13b Vicuna
vicuna-13b-GPTQ-4bit-128g 13b vicuna
ggml-vicuna-13b-4bit 13b vicuna
vicuna-13b 13b vicuna
vicuna4all 13b vicuna

download official delta weights via [magnet](magnet:?xt=urn:btih:a7fac57094561a63d53eed943f904abf24c6969d&dn=Vicuna-13B-HF-fp16-delta-merged_2023-04-03&tr=udp%3a%2f%2ftracker.opentrackr.org%3a1337%2fannounce&tr=udp%3a%2f%2ftracker-udp.gbitt.info%3a80%2fannounce&tr=udp%3a%2f%2ftracker1.bt.moack.co.kr%3a80%2fannounce&tr=udp%3a%2f%2ftracker.tiny-vps.com%3a6969%2fannounce&tr=udp%3a%2f%2ftracker2.dler.org%3a80%2fannounce&tr=udp%3a%2f%2fopentracker.i2p.rocks%3a6969%2fannounce&tr=udp%3a%2f%2ftracker.altrosky.nl%3a6969%2fannounce&tr=udp%3a%2f%2ftracker.theoks.net%3a6969%2fannounce&tr=udp%3a%2f%2ftracker.dler.org%3a6969%2fannounce&tr=udp%3a%2f%2ftracker.torrent.eu.org%3a451%2fannounce&tr=udp%3a%2f%2ftracker.openbittorrent.com%3a6969%2fannounce&tr=https%3a%2f%2fopentracker.i2p.rocks%3a443%2fannounce&tr=http%3a%2f%2ftracker.openbittorrent.com%3a80%2fannounce&tr=udp%3a%2f%2ftracker.moeking.me%3a6969%2fannounce&tr=udp%3a%2f%2ftracker.monitorit4.me%3a6969%2fannounce&tr=udp%3a%2f%2f9.rarbg.com%3a2810%2fannounce

based)

Bloom-z

there is bloomz.cpp, converted model weights on huggingface

Alpaca

alpaca is LLaMA tuned on ChatGPT self-instruct dataset. officially there is just code and dataset, model weights are community provided.

ggml version: alpaca.cpp

example on how to load PEFT patched alpaca model: alpaca-lora/generate.py

it’s better to check for python bindings and webui like Alpaca-Turbo and Dalai for further development and interactions.


fine-tuning:

simple-llama-finetuner using LoRA, 16GB VRAM minimum

alpaca-lora: the OG LoRA alpaca


community model weights:

weight path weight size model name author
alpaca-lora-7b 7b Alpaca tloen
Alpaca Native 7B Alpaca chavinlo
Alpaca-65B 65B Alpaca chavinlo
Alpaca 13B 13B Alpaca chavinlo
GPT4-X-Alpaca 13B Alpaca chavinlo
Toolpaca 13B Alpaca chavinlo
instruct-gpt-j-fp16 6B GPT-J nlpcloud
alpaca-30b 30b Alpaca baseten
alpaca-lora-65b 65b alpaca chansung
alpaca-lora-30b 30b alpaca chansung
koalpaca-lora-13b 13b koalpaca chansung
alpaca-lora-13b 13b alpaca chansung
alpaca13B-lora 13b alpaca samwit
alpaca7B-lora 7b alpaca samwit
bloompaca-7b1-lora 7b bloom samwit
gpt4-x-alpaca-native-13B-ggml 13b alpaca Pi3141
alpaca-native-7B-ggml 7b alpaca Pi3141
alpaca-native-13B-ggml 13b alpaca Pi3141
alpaca-lora-30B-ggml 30b alpaca Pi3141
alpaca-lora-7B-ggml 7b alpaca Pi3141
alpaca-lora-13B-ggml 13b alpaca Pi3141
alpaca-7b-native-enhanced 7b alpaca Pi3141
gpt4-x-alpaca-13b-native-4bit-128g 13b alpaca anon8231489123
ggml-gpt4-x-alpaca-13b-native-4bit 13b alpaca eachadea
alpaca-13b-hf-fp16 13b alpaca teknium

codealpaca only provides dataset for training a code generation model, there are multiple models trained on this dataset, including bloom-7b1-lora-codealpaca20k

togethercomputer

released openchatkit with retrieval ability and its huggingface space


model weights:

weight path weight size model name author
GPT-NeoXT-Chat-Base-20B 20B GPT-NeoXT togethercomputer
Pythia-Chat-Base-7B 7B Pythia togethercomputer

moderation model weights:

weight path weight size model name author
GPT-JT-Moderation-6B 6B GPT-JT togethercomputer

SpikeGPT

inspired by RWKV


model weights:

weight path weight size model name author
SpikeGPT-BookCorpus unknown SpikeGPT ridger

RWKV


RWKV combines attention with RNN so the token window can be much larger.

Longformer is similar to this. Model weights in github repo or huggingface.


now we have rwkv.cpp (4bit quantization), build upon ggml and sure it works on cpu.

rwkvstic (with 8bit & offload for low VRAM GPUs)


RWKV-LoRA supports RWKV-v4-NeoX


model weights:

weight path weight size model name author
RWKV-7B-alpaca-finetuned 7b RWKV BlueSunflower
rwkv-4-14B-alpaca-finetune-lora-weights 14b RWKV BlueSunflower
rwkv-fastquant unknown rwkv Hazzzardous
rwkv-onnx unknown rwkv Hazzzardous
RWKV-8Bit unknown rwkv Hazzzardous
rwkv-4-raven unknown rwkv BlinkDL
rwkv-4-pile-7b 7b rwkv BlinkDL
rwkv-4-pile-14b 14b rwkv BlinkDL
rwkv-4-pile-430m 430m rwkv BlinkDL
rwkv-4-pile-3b 3b rwkv BlinkDL
rwkv-4-pile-1b5 1.5b rwkv BlinkDL
rwkv-4-pile-169m 169m unknown BlinkDL
rwkv-3-pile-1b5 1.5b rwkv BlinkDL
rwkv-3-pile-430m 430m rwkv BlinkDL
rwkv-2-pile-430m 430m rwkv BlinkDL
rwkv-3-pile-169m 169m rwkv BlinkDL
RWKV-LM-safetensors unknown RWKV mrsteyk
openchatrwkv-430m-r2.0.1 430m RWKV mrsteyk
openchatrwkw-430m-r2 430m RWKV mrsteyk
openchatrwkv-430m 430m RWKV mrsteyk

encrypted alpaca model weights released by point-network: point-alpaca

gpt4all by nomic

LLaMA trained on massive collection of clean assistant dialog data, with model weights

you need to install nomic to run the model:

pip3 install nomic

to run it on gpu, you need to install this

openassistant

researchers of open-assistant like andreaskoepf has releasesed oasst-sft-3-pythia-12b-epoch-3.5 and still updating


model weights:

weight path weight size model name author
oasst-llama-13b-2-epochs 13b llama dvruette
oasst-llama-13b-1000-steps 13b llama dvruette
oasst-gpt-neox-20b-1000-steps 20b gpt-neox dvruette
oasst-gpt-neox-20b-3000-steps 20b gpt-neox dvruette
oasst-pythia-12b-6000-steps 12b pythia dvruette
oasst-pythia-12b-3000-steps 12b pythia dvruette
oasst-pythia-12b-flash-attn-5000-steps 12b pythia dvruette
oasst-pythia-6.9b-4000-steps 12b pythia dvruette
oasst-sft-1-pythia-12b 12b pythia OpenAssistant
galactica-6.7b-finetuned 6.7b galatica OpenAssistant
oasst-sft-4-pythia-12b-epoch-3.5 12b pythia andreaskoepf
pythia-12b-pre-2000 12b pythia andreaskoepf
pythia-12b-pre-3500 12b pythia andreaskoepf
oasst-sft-3-pythia-12b-epoch-3.5 12b pythia andreaskoepf
oasst-sft-3-pythia-12b-epoch-2.35 12b pythia andreaskoepf
oasst-sft-2-candidiate-0 unknown unknown andreaskoepf
oasst-sft-2-pythia-12b-4000 12b pythia andreaskoepf
oasst-sft-1-gpt-neox-2000 unknown gpt-neox andreaskoepf
oasst-1_12b_4500 12b unknown andreaskoepf
oasst-1_12b_1500 12b unknown andreaskoepf
oasst-1_12b_3000 12b unknown andreaskoepf

reward model weights:

weight path weight size model name author
reward-model-deberta-v3-large unknown deberta-v3 OpenAssistant
reward-model-deberta-v3-large-v2 unknown deberta-v3 OpenAssistant
reward-model-electra-large-discriminator unknown electra-large OpenAssistant
reward-model-deberta-v3-base unknown deberta-v3 OpenAssistant
oasst-rm-1-pythia-1b 1b pythia andreaskoepf

openflamingo

using CLIP ViT-L and LLaMA-7B, model weights on huggingface

cerebras gpt

open sourced model weights and training code


model weights:

weight path weight size model name author
cerebras-gpt-6.7b-lora 6.7b cerebras-gpt samwit
Cerebras-GPT-2.7B-Alpaca-SP 2.7b cerebras-gpt lxe
Cerebras-GPT-2.7B-Alpaca-SP-ggml 2.7b cerebras-gpt lxe
lora-cerebras-gpt2.7b-alpaca-shortprompt 2.7b cerebras-gpt lxe
Cerebras-GPT-13B 13b cerebras-gpt cerebras
Cerebras-GPT-6.7B 6.7b cerebras-gpt cerebras
Cerebras-GPT-2.7B 2.7b cerebras-gpt cerebras
Cerebras-GPT-1.3B 1.3b cerebras-gpt cerebras
Cerebras-GPT-590M 590m cerebras-gpt cerebras
Cerebras-GPT-256M 256m cerebras-gpt cerebras
Cerebras-GPT-111M 111m cerebras-gpt cerebras

ColossalChat

Coati-7B has no public model weights, but claimed to be trained efficiently

you need to install LLaMA compatible transformers library

train on InstructionWild

enhancements

using external tools

toolformer-pytorch (WORK IN PROGRESS)


engshell: using LLM to execute command

using ai models

Microsoft JARVIS aka HuggingGPT leverages huggingface models so ChatGPT can complete complex multimodal tasks.

retrieval plugins

long term memory for oobabooga/text-generation-webui (can run pythia, galatica, opt, gpt-j, gpt-4chan, rwkv and support quantization/acceleration), also

complex memory (KoboldAI-like)


chatpaper summarize paper content.

similar website: typeset.io (can ask questions and explain confusing text, math symbols and tables)

related projects: ChatReviewer ChatImprovement ChatResponse ChatGenTitle


chatgpt retrieval plugin chop document into chunks, process them into vectors and search them using one of many vector search backends. hosted as a fastapi service.

datasets

assistant dialogue

botbots dataset (two chatgpt talking to each other), created by using datasetGPT (LLM automation tool)


ShareGPT52k, also ShareGPT90k (Vicuna)


instruct-102.4k by swype


datasets by BELLE:

train_1M_CN

train_0.5M_CN

multiturn_chat_0.8M

school_math_0.25M

unsupervised pretraining

Fandom23K (text classification), part of BigKnow2022

Kinda LLaMA replicates LLaMA dataset, including scraped webpages, code and stackexchange data.

oscar-corpus needs to be downloaded with access token, by accepting agreement with account. containing categorized content and adult content.

dataset preprocessing

deduplicate text dataset in rust, may remove verbose substrings like “to go to the”

oscar project (Open Super-large Crawled Aggregated coRpus) contains some tool for adult content filtering and deduplication.

NLP tools & training methods

fasttext for efficient learning of word representations and sentence classification.


langchain

prompt-engine

chatml: markup language for ChatGPT, by openai

react-agent-ts enables LLM to chat and use tools by internal dialogues.

babyagi: AI-powered task management system. original post on twitter


Chain-of-hindsights (can learn from negative feedback) in jax and pytorch

interfaces

serge is dockerized and the needs of RAM is according to the size of the model (alpaca), using CPU only