Skip to content

Instantly share code, notes, and snippets.

View ruslanmv's full-sized avatar
😃

Ruslan Magana Vsevolodovna ruslanmv

😃
View GitHub Profile
@ruslanmv
ruslanmv / qa.py
Created May 30, 2024 13:21
watsonx question answering
# Import necessary libraries
import os
from ibm_watson_machine_learning.foundation_models import Model
from ibm_watson_machine_learning.metanames import GenTextParamsMetaNames as GenParams
from ibm_watson_machine_learning.foundation_models.utils.enums import ModelTypes, DecodingMethods
def get_model(model_type, api_key, project_id, max_tokens, min_tokens, decoding, temperature, top_k, top_p):
generate_params = {
GenParams.MAX_NEW_TOKENS: max_tokens,
GenParams.MIN_NEW_TOKENS: min_tokens,
@ruslanmv
ruslanmv / ollama-export.sh
Created May 24, 2024 10:45
Ollama Model Export Script
#!/bin/bash
# Ollama Model Export Script
# Usage: bash ollama-export.sh vicuna:7b
set -e
echo "Ollama Model Export Script"
echo ""
@ruslanmv
ruslanmv / notebook_to_markdown.py
Last active May 13, 2024 08:17
Saving the Notebook to markdown
pip install "notebook<7"
### Saving the Notebook to markdown
import IPython
#from IPython.lib import kernel
from ipykernel.kernelbase import Kernel
%%javascript
var kernel = IPython.notebook.kernel;
var thename = window.document.getElementById("notebook_name").innerHTML;
var command = "theNotebook = " + "'"+thename+"'";
@ruslanmv
ruslanmv / parallel.py
Created May 9, 2024 20:08
Parallel execution juyter notebook pytorch
import os
import torch
import torch.multiprocessing as mp
# Distributed training setup
def init_distributed(rank, world_size):
os.environ["MASTER_ADDR"] = "localhost"
os.environ["MASTER_PORT"] = "12345"
if rank == 0:
print("Initializing distributed process group...")
torch.distributed.init_process_group(backend='nccl', world_size=world_size, rank=rank)
@ruslanmv
ruslanmv / finetune.py
Last active May 9, 2024 16:39
Finetuning Llama 3 Mutiple GPU
from datasets import load_dataset
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig, AutoTokenizer
from peft import LoraConfig
from trl import SFTTrainer
from transformers import TrainingArguments
from accelerate import PartialState
# Load the dataset
dataset_name = "ruslanmv/ai-medical-dataset"
@ruslanmv
ruslanmv / download.py
Last active April 5, 2024 14:15
Download Files from Jupyter Notebook
from IPython.display import FileLink
!tar -czvf lm-evaluation-harness.tar.gz lm-evaluation-harness
def create_download_link(filename):
return FileLink(filename)
download_link = create_download_link("lm-evaluation-harness.tar.gz")
display(download_link)
@ruslanmv
ruslanmv / app.py
Created March 26, 2024 07:54
Medical Chatbot with Langchain with a Custom LLM
from datasets import load_dataset
from IPython.display import clear_output
import pandas as pd
import re
from dotenv import load_dotenv
import os
from ibm_watson_machine_learning.foundation_models.utils.enums import ModelTypes
from ibm_watson_machine_learning.metanames import GenTextParamsMetaNames as GenParams
from ibm_watson_machine_learning.foundation_models.utils.enums import DecodingMethods
from langchain.llms import WatsonxLLM
@ruslanmv
ruslanmv / app.py
Created February 19, 2024 17:24
Gemini App LLM
import streamlit as st
from PyPDF2 import PdfReader
from langchain.text_splitter import RecursiveCharacterTextSplitter
import os
from langchain_google_genai import GoogleGenerativeAIEmbeddings
import google.generativeai as genai
from langchain_community.vectorstores import FAISS
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain.chains.question_answering import load_qa_chain
from langchain.prompts import PromptTemplate
@ruslanmv
ruslanmv / app.py
Created February 17, 2024 19:10
Run Python commands with custom python environment in background from Jupyter Notebook
# Create a shell script
script_content = f'''
#!/bin/bash
source activate automatic
"$@"
'''
# Write the script to a file
script_filename = 'run'
with open(script_filename, 'w') as script_file:
script_file.write(script_content)
@ruslanmv
ruslanmv / app.py
Created February 17, 2024 18:34
Create python environment with venv
import subprocess
import sys
import venv
import os
venv.create("venv", with_pip=True)