/ Модель

Характеристики

Контекст
16 384 токена
Параметры
6,6 млрд
Размер весов
13,5 ГБ
Лицензия
Llama 2
Архитектура
llama · dense
Опубликована
25 окт 2023

Code-Llama-2-7B-instruct-text2sql

Генерация текстаТекст → текст5 профессий

Дообученная англоязычная модель семейства Code Llama для генерации SQL-запросов по схеме базы данных и вопросу на естественном языке.

35скачиваний за 30 дней2лайкавеса обновлены7 ноя 2023

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Code-Llama-2-7B-instruct-text2sql — языковая модель, дообученная автором карточки на базе codellama/CodeLlama-7b-Instruct-hf для преобразования вопросов на естественном языке в SQL-запросы с учётом схемы базы данных. Модель построена на авторегрессионной архитектуре Transformer семейства Llama и содержит 6,6 млрд параметров; для обучения использовался датасет bugdaryan/sql-create-context-instruction. Контекст составляет до 16 384 токенов.

Модель предназначена прежде всего для генерации SQL по англоязычным запросам, а также поддерживает генерацию кода, заполнение пропусков и диалог по инструкциям. В описании обучения указаны LoRA-параметры и 4-битная настройка bitsandbytes NF4, однако доступный репозиторий содержит формат PyTorch; наличие отдельного адаптера или квантизированных весов по метаданным не подтверждено. Модель распространяется по лицензии Llama 2. Она может выдавать неточные или нежелательные ответы, поэтому SQL следует проверять перед выполнением; автор рекомендует тестирование и настройку безопасности для конкретного применения.

Сценарии применения

  • генерация SQL по вопросу на английском языке
  • преобразование описания структуры базы данных в контекст для SQL-запроса
  • создание прототипа интерфейса запросов к базе на естественном языке

Ограничения

Модель предназначена для английского языка и может генерировать ошибочные SQL-запросы или нежелательные ответы; проверяйте запросы перед выполнением и тестируйте модель перед внедрением.

Для каких профессий подходит5

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Code-Llama-2-7B-instruct-text2sql Model Card

Model Name: Code-Llama-2-7B-instruct-text2sql

Description: This model is a fine-tuned version of the Code Llama 2 with 7 billion parameters, specifically tailored for text-to-SQL tasks. It has been trained to generate SQL queries given a database schema and a natural language question.

Model Information

LoRA Parameters

  • lora_r: 64
  • lora_alpha: 16
  • lora_dropout: 0.1

bitsandbytes Parameters

  • use_4bit: True
  • bnb_4bit_compute_dtype: float16
  • bnb_4bit_quant_type: nf4
  • use_nested_quant: False

Training Parameters

  • Number of Training Epochs: 1
  • Mixed-Precision Training (fp16/bf16): False
  • Batch Size per GPU for Training: 32
  • Batch Size per GPU for Evaluation: 4
  • Gradient Accumulation Steps: 1
  • Gradient Checkpointing: True
  • Maximum Gradient Norm (Gradient Clipping): 0.3
  • Initial Learning Rate: 2e-4
  • Weight Decay: 0.001
  • Optimizer: paged_adamw_32bit
  • Learning Rate Scheduler Type: cosine
  • Max Steps: -1
  • Warmup Ratio: 0.03
  • Group Sequences by Length: True
  • Save Checkpoint Every X Update Steps: 0
  • Log Every X Update Steps: 25

License

This model is governed by a custom commercial license from Code Llama. For details, please visit: Custom Commercial License

Intended Use

Intended Use Cases: This model is intended for commercial and research use in English. It is designed for text-to-SQL tasks, enabling users to generate SQL queries from natural language questions.

Out-of-Scope Uses: Any use that violates applicable laws or regulations, use in languages other than English, or any other use prohibited by the Acceptable Use Policy and Licensing Agreement for Code Llama and its variants.

Model Capabilities

  • Code completion.
  • Infilling.
  • Instructions / chat.

Model Architecture

Code-Llama-2-7B-instruct-text2sql is an auto-regressive language model that uses an optimized transformer architecture.

Model Dates

This model was trained between January 2023 and July 2023.

Ethical Considerations and Limitations

Code-Llama-2-7B-instruct-text2sql is a powerful language model, but it may produce inaccurate or objectionable responses in some instances. Safety testing and tuning are recommended before deploying this model in specific applications.

Hardware and Software

  • Training Libraries: Custom training libraries
  • Training Hardware: 1 A100 40GB GPU provided by Google Colab Pro+
  • Carbon Footprint: Training all Code Llama models required 400K GPU hours on A100-80GB hardware with emissions offset by Meta's sustainability program.

Training Data

This model was trained and fine-tuned on the same data as Llama 2 with different weights.

Evaluation Results

For evaluation results, please refer to Section 3 and safety evaluations in Section 4 of the research paper.

Example Code

You can use the Code-Llama-2-7B-instruct-text2sql model to generate SQL queries from natural language questions, as demonstrated in the following code snippet:

pip install -q accelerate==0.24.1 transformers==4.35.0 torch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0
import torch
from transformers import (
    AutoModelForCausalLM,
    AutoTokenizer
)

model_name = 'support-pvelocity/Code-Llama-2-7B-instruct-text2sql'

model = AutoModelForCausalLM.from_pretrained(model_name, device_map='auto', torch_dtype=torch.float16)
tokenizer = AutoTokenizer.from_pretrained(model_name)

table = "CREATE TABLE sales ( sale_id number PRIMARY KEY, product_id number, customer_id number, salesperson_id number, sale_date DATE, quantity number, FOREIGN KEY (product_id) REFERENCES products(product_id), FOREIGN KEY (customer_id) REFERENCES customers(customer_id), FOREIGN KEY (salesperson_id) REFERENCES salespeople(salesperson_id)); CREATE TABLE product_suppliers ( supplier_id number PRIMARY KEY, product_id number, supply_price number, FOREIGN KEY (product_id) REFERENCES products(product_id)); CREATE TABLE customers ( customer_id number PRIMARY KEY, name text, address text ); CREATE TABLE salespeople ( salesperson_id number PRIMARY KEY, name text, region text ); CREATE TABLE product_suppliers ( supplier_id number PRIMARY KEY, product_id number, supply_price number );"

question = 'Find the salesperson who made the most sales.'

prompt = f"[INST] Write SQLite query to answer the following question given the database schema. Please wrap your code answer using ```: Schema: {table} Question: {question} [/INST] Here is the SQLite query to answer to the question: {question}: ``` "

tokens = tokenizer(prompt, return_tensors="pt").to('cuda:0')
input_ids = tokens.input_ids

generated_ids = model.generate(input_ids=input_ids, max_length=4048, pad_token_id=tokenizer.eos_token_id)
output = tokenizer.decode(generated_ids[0], skip_special_tokens=True)
output = output.split('```')[2]
print(output)

This code demonstrates how to utilize the model for generating SQL queries based on a provided database schema and a natural language question. It showcases the model's capability to assist in SQL query generation for text-to-SQL tasks.

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
LlamaForCausalLM
Ревизия весов
eab977a

0 моделей