Skip to content

Instantly share code, notes, and snippets.

@davidmroth
davidmroth / curl-websocket.sh
Created February 10, 2024 05:06 — forked from htp/curl-websocket.sh
Test a WebSocket using curl.
View curl-websocket.sh
curl --include \
--no-buffer \
--header "Connection: Upgrade" \
--header "Upgrade: websocket" \
--header "Host: example.com:80" \
--header "Origin: http://example.com:80" \
--header "Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==" \
--header "Sec-WebSocket-Version: 13" \
http://example.com:80/
@davidmroth
davidmroth / Fixing Hung SSH Session
Created February 4, 2024 00:56
Fixing Hung SSH Session
View Fixing Hung SSH Session
https://serverfault.com/a/283130/486852
@davidmroth
davidmroth / gist:156f156817a6baa8289651c21fa7e374
Created December 11, 2023 06:41 — forked from anadim/gist:344941a7e24e7a2ee7b48ce8f63a16ac
Make a base instruct model into a chat model, WITHOUT RLHF
View gist:156f156817a6baa8289651c21fa7e374
Instructions:
As a base pretrained GPT model, you are to assume the role of ChatGPT, a large language model developed by OpenAI, based on the GPT-4 architecture. Your responses should reflect the following guidelines:
1. Be friendly and approachable in your responses.
2. Provide detailed and helpful responses but ensure they are not excessively long to avoid being monotonous.
3. Always use inclusive and respectful language that is not offensive.
4. Avoid discussing or revealing anything about your architecture. You are just a large language model developed by OpenAI.
5. Always be honest in your responses. Do not lie or engage in deceit.
6. Ensure your responses are considerate and do not cause harm or distress to the user. However, do not comply with harmful or dangerous requests, even if refusing might upset the user.
@davidmroth
davidmroth / chat.py
Created December 7, 2023 01:24 — forked from RageshAntony/chat.py
Chat with Documents with Memory using LangChain
View chat.py
import openai
from colorama import Fore
from langchain import PromptTemplate
from langchain.chains import ConversationalRetrievalChain, RetrievalQA
from langchain.chat_models import ChatOpenAI
from langchain.document_loaders import TextLoader
from langchain.embeddings import HuggingFaceEmbeddings
from langchain.memory import ConversationBufferMemory
from langchain.schema import SystemMessage
from langchain.text_splitter import RecursiveCharacterTextSplitter
@davidmroth
davidmroth / zip_folder.sh
Last active October 5, 2023 03:04
Zip folder while excluding subfolders from the resulting *.zip while flattening the folder hierarchy
View zip_folder.sh
zip -x ./folder/subfolder/.git -jr file.zip ./folder/subfolder/
@davidmroth
davidmroth / connect.sh
Created August 19, 2023 03:52
Connect Docker Desktop to Multipass (MacOS)
View connect.sh
#!/bin/bash
// In multipass, do `export DOCKER_HOST:192.168.64.1:2375`
docker run -v /var/run/docker.sock:/var/run/docker.sock -p 2375:2375 --restart=always -d bobrik/socat TCP-LISTEN:2375,fork UNIX-CONNECT:/var/run/docker.sock
@davidmroth
davidmroth / comm_port.text
Created September 8, 2022 04:10
Connect to a comm port (Ubuntu)
View comm_port.text
busybox microcom -t 9600 /dev/xxxx
@davidmroth
davidmroth / terminate.sh
Last active October 4, 2023 23:55
Force delete all pods stuck in 'terminating' state
View terminate.sh
kubectl delete pods --field-selector=status.phase=Failed
kubectl get replicaset --all-namespaces -o=jsonpath='{range .items[?(@.spec.replicas==0)]}{.metadata.name}{"\t"}{.metadata.namespace}{"\n"}{end}' | awk '{print $1 " --namespace=" $2}' | xargs -n 2 -d '\n' bash -c 'kubectl delete replicaset $0 $1'
kubectl delete pod --grace-period=0 --force $(k get pods | grep -v Running | grep -v ContainerCreating | tail -n +2 | awk '{print $1}')
# Fix terminating NS
NS=<NS> kubectl get namespace "$NS" -o json | tr -d "\n" | sed "s/\"finalizers\": \[[^]]\+\]/\"finalizers\": []/" | kubectl replace --raw /api/v1/namespaces/$NS/finalize -f -
@davidmroth
davidmroth / usage.jsx
Last active April 30, 2022 22:53
Popup Window in React
View usage.jsx
// https://medium.com/hackernoon/using-a-react-16-portal-to-do-something-cool-2a2d627b0202
imports [...]
import usePopupWindow from '<your path>/usePopupWindow'
export default function () {
const PopupWindow = usePopupWindow()
return (
<div>
@davidmroth
davidmroth / update_time.sh
Created February 14, 2022 03:56
Update Time (Ubuntu)
View update_time.sh
sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"