initial commit
This commit is contained in:
commit
35f4fa39b2
126
Galen_AI_Demo.ipynb
Normal file
126
Galen_AI_Demo.ipynb
Normal file
@ -0,0 +1,126 @@
|
||||
{
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 0,
|
||||
"metadata": {
|
||||
"colab": {
|
||||
"provenance": [],
|
||||
"gpuType": "T4"
|
||||
},
|
||||
"kernelspec": {
|
||||
"name": "python3",
|
||||
"display_name": "Python 3"
|
||||
},
|
||||
"language_info": {
|
||||
"name": "python"
|
||||
},
|
||||
"accelerator": "GPU"
|
||||
},
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"source": [
|
||||
"# **Galen AI Demo**"
|
||||
],
|
||||
"metadata": {
|
||||
"id": "WX4uJNZWM9T9"
|
||||
}
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"source": [
|
||||
"%%capture\n",
|
||||
"# @title Install packages { display-mode: \"form\" }\n",
|
||||
"# @markdown Please wait for the model to be loaded, it takes minutes to load, make sure you enabled GPU in your notebook\n",
|
||||
"\n",
|
||||
"!pip install -q -U bitsandbytes\n",
|
||||
"!pip install -q -U git+https://github.com/huggingface/transformers.git\n",
|
||||
"!pip install -q -U git+https://github.com/huggingface/accelerate.git\n",
|
||||
"!pip install -q -U einops"
|
||||
],
|
||||
"metadata": {
|
||||
"id": "o0zCCilRMuqc"
|
||||
},
|
||||
"execution_count": null,
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"source": [
|
||||
"# @title Load the model {display-mode: \"form\"}\n",
|
||||
"from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig,HfArgumentParser,TrainingArguments,pipeline, logging\n",
|
||||
"import transformers\n",
|
||||
"import torch\n",
|
||||
"\n",
|
||||
"model_name = 'ahmed-ai/galen'\n",
|
||||
"\n",
|
||||
"tokenizer = AutoTokenizer.from_pretrained(model_name)\n",
|
||||
"model_pipeline = pipeline(task=\"text-generation\", model=model_name, tokenizer=tokenizer)\n",
|
||||
"\n",
|
||||
"# bnb_config = BitsAndBytesConfig(\n",
|
||||
"# load_in_4bit=True,\n",
|
||||
"# bnb_4bit_quant_type=\"nf4\",\n",
|
||||
"# bnb_4bit_use_double_quant=True,\n",
|
||||
"# )\n",
|
||||
"# model = AutoModelForCausalLM.from_pretrained(\n",
|
||||
"# model_name,\n",
|
||||
"# load_in_4bit=True,\n",
|
||||
"# quantization_config=bnb_config,\n",
|
||||
"# torch_dtype=torch.bfloat16,\n",
|
||||
"# device_map=\"auto\",\n",
|
||||
"# trust_remote_code=True,\n",
|
||||
"# )"
|
||||
],
|
||||
"metadata": {
|
||||
"id": "wfV5CarBc5h_"
|
||||
},
|
||||
"execution_count": null,
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"source": [
|
||||
"# @title Hyperparameters {display-mode: \"form\"}\n",
|
||||
"# @markdown The hypermeters of the input\n",
|
||||
"\n",
|
||||
"def user_prompt(prompt):\n",
|
||||
" return f\"\"\"\n",
|
||||
" Below is an instruction that describes a task, paired with an input that provides further context. Write a response that appropriately completes the request.\n",
|
||||
"\n",
|
||||
" ### Instruction:\n",
|
||||
" Generate an impressive qoute\n",
|
||||
"\n",
|
||||
"\n",
|
||||
" ### Input:\n",
|
||||
" {prompt}\n",
|
||||
"\n",
|
||||
" ### Response:\n",
|
||||
" \"\"\"\n",
|
||||
"\n",
|
||||
"input = \"what is squamous cell carcinoma\" # @param {type: \"string\"}\n",
|
||||
"max_length = 256 # @param {type:\"slider\", min:0, max:2048, step:2}\n",
|
||||
"temperature = 0.5 # @param {type: \"slider\", min:0, max:1, step:0.1}\n",
|
||||
"top_p = 0.5 # @param {type: \"slider\", min:0, max:1, step:0.1}"
|
||||
],
|
||||
"metadata": {
|
||||
"id": "S0ugjLBZc-1J"
|
||||
},
|
||||
"execution_count": null,
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"source": [
|
||||
"# @title Run the model {display-mode: \"form\"}\n",
|
||||
"\n",
|
||||
"prompt = user_prompt(input)\n",
|
||||
"result = model_pipeline(prompt, max_length=max_lenght, temperature=temperature, top_p=top_p)\n",
|
||||
"print(result[0]['generated_text'][len(prompt):])"
|
||||
],
|
||||
"metadata": {
|
||||
"id": "Q9pNcQs6eyFQ"
|
||||
},
|
||||
"execution_count": null,
|
||||
"outputs": []
|
||||
}
|
||||
]
|
||||
}
|
34
README.md
Normal file
34
README.md
Normal file
@ -0,0 +1,34 @@
|
||||
---
|
||||
inference: false
|
||||
datasets:
|
||||
- medalpaca/medical_meadow_medqa
|
||||
language:
|
||||
- en
|
||||
library_name: transformers
|
||||
tags:
|
||||
- biology
|
||||
- medical
|
||||
- QA
|
||||
- healthcare
|
||||
---
|
||||
# Galen
|
||||
Galen is fine-tuned from [Mistral-7B-Instruct-v0.2](https://huggingface.co/mistralai/Mistral-7B-Instruct-v0.2), using [medical quesion answering dataset](https://huggingface.co/datasets/medalpaca/medical_meadow_medqa)
|
||||
### Galen's view about future of medicine and AI:
|
||||
![alt text](1.png "Galen's view about future of medicine and AI")
|
||||
# Get Started
|
||||
Install "accelerate" to use CUDA GPU
|
||||
```bash
|
||||
pip install accelerate
|
||||
```
|
||||
```py
|
||||
from transformers import AutoTokenizer, pipeline
|
||||
```
|
||||
```py
|
||||
tokenizer = AutoTokenizer.from_pretrained('ahmed/galen')
|
||||
model_pipeline = pipeline(task="text-generation", model='ahmed/galen', tokenizer=tokenizer, max_length=256, temperature=0.5, top_p=0.6)
|
||||
```
|
||||
```py
|
||||
result = model_pipeline('What is squamous carcinoma')
|
||||
#print the generated text
|
||||
print(result[0]['generated_text'][len(prompt):])
|
||||
```
|
Loading…
Reference in New Issue
Block a user