Clinton/Text-to-sql-v1
Viewer • Updated • 262k • 2.73k • 73
How to use circlelee/gemma-2-2b-it-nl2sql with Transformers:
# Use a pipeline as a high-level helper
from transformers import pipeline
pipe = pipeline("text-generation", model="circlelee/gemma-2-2b-it-nl2sql")
messages = [
{"role": "user", "content": "Who are you?"},
]
pipe(messages) # Load model directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("circlelee/gemma-2-2b-it-nl2sql")
model = AutoModelForCausalLM.from_pretrained("circlelee/gemma-2-2b-it-nl2sql")
messages = [
{"role": "user", "content": "Who are you?"},
]
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=40)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:]))How to use circlelee/gemma-2-2b-it-nl2sql with vLLM:
# Install vLLM from pip:
pip install vllm
# Start the vLLM server:
vllm serve "circlelee/gemma-2-2b-it-nl2sql"
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:8000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "circlelee/gemma-2-2b-it-nl2sql",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'docker model run hf.co/circlelee/gemma-2-2b-it-nl2sql
How to use circlelee/gemma-2-2b-it-nl2sql with SGLang:
# Install SGLang from pip:
pip install sglang
# Start the SGLang server:
python3 -m sglang.launch_server \
--model-path "circlelee/gemma-2-2b-it-nl2sql" \
--host 0.0.0.0 \
--port 30000
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:30000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "circlelee/gemma-2-2b-it-nl2sql",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'docker run --gpus all \
--shm-size 32g \
-p 30000:30000 \
-v ~/.cache/huggingface:/root/.cache/huggingface \
--env "HF_TOKEN=<secret>" \
--ipc=host \
lmsysorg/sglang:latest \
python3 -m sglang.launch_server \
--model-path "circlelee/gemma-2-2b-it-nl2sql" \
--host 0.0.0.0 \
--port 30000
# Call the server using curl (OpenAI-compatible API):
curl -X POST "http://localhost:30000/v1/chat/completions" \
-H "Content-Type: application/json" \
--data '{
"model": "circlelee/gemma-2-2b-it-nl2sql",
"messages": [
{
"role": "user",
"content": "What is the capital of France?"
}
]
}'How to use circlelee/gemma-2-2b-it-nl2sql with Unsloth Studio:
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for circlelee/gemma-2-2b-it-nl2sql to start chatting
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for circlelee/gemma-2-2b-it-nl2sql to start chatting
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for circlelee/gemma-2-2b-it-nl2sql to start chatting
pip install unsloth
from unsloth import FastModel
model, tokenizer = FastModel.from_pretrained(
model_name="circlelee/gemma-2-2b-it-nl2sql",
max_seq_length=2048,
)How to use circlelee/gemma-2-2b-it-nl2sql with Docker Model Runner:
docker model run hf.co/circlelee/gemma-2-2b-it-nl2sql
This gemma2 model was trained 2x faster with Unsloth and Huggingface's TRL library.
Summary description and brief definition of inputs and outputs.
This model is based on Gemma2 and is fine-tuned to generate SQL from Natural Language.
Below we share some code snippets on how to get quickly started with running the model. First, install the Transformers library with:
pip install -U transformers
...
from transformers import AutoTokenizer, AutoModelForCausalLM
model = AutoModelForCausalLM.from_pretrained("circlelee/gemma-2-2b-it-nl2sql")
tokenizer = AutoTokenizer.from_pretrained("circlelee/gemma-2-2b-it-nl2sql", trust_remote_code=True)
table_schemas = "CREATE TABLE person ( name VARCHAR, age INTEGER, address VARCHAR )"
user_query = "people whoes ages are older than 27 and name starts with letter 'k'"
messages = [
{"role": "user", "content": f"""Use the below SQL tables schemas paired with instruction that describes a task. make SQL query that appropriately completes the request for the provided tables. And make SQL query according the steps.
{table_schemas}
step 1. check columns that I want.
step 2. check condition that I want.
step 3. make SQL query to get every information that I want.
{user_query}
"""}
]
formated_messages = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True, return_tensors="pt")
input_ids = tokenizer(formated_messages, return_tensors="pt")
outputs = model.generate(**input_ids, max_new_tokens=64)
print(tokenizer.decode(outputs[0]))
Base model
unsloth/gemma-2-2b-it-bnb-4bit