base_model: unsloth/meta-llama-3.1-8b-bnb-4bit
language:
- en
license: apache-2.0
tags:
- text-generation-inference
- transformers
- unsloth
- llama
- trl
- sft
Indian Legal Assistant: A LLaMA-based Model for Indian Legal Text Generation
This repository contains information and code for using the Indian Legal Assistant, a LLaMA-based model finetuned on Indian legal texts. This model is designed to assist with various legal tasks and queries related to Indian law.
Faculty In Charge
- Guide: Dr. Kalimuthu K
- Project Coordinator: Dr. Sandeep Kumar P
Team Members
- RA2111004010006: Ganesha Sai Varma
- RA2111004010008: Surendra Reddy
- RA2111004010055: Sampath Voona
Model Description
The Indian Legal Assistant is a text generation model specifically trained to understand and generate text related to Indian law. It can be used for tasks such as:
- Legal question answering
- Case summarization
- Legal document analysis
- Statute interpretation
Model Details
Attribute | Value |
---|---|
Model Name | Indian_Legal_Assitant |
Developer | varma007ut |
Model Size | 8.03B parameters |
Architecture | LLaMA |
Language | English |
License | Apache 2.0 |
Hugging Face Repo | varma007ut/Indian_Legal_Assitant |
Installation
To use this model, you'll need to install the required libraries:
pip install transformers torch
# For GGUF support
pip install llama-cpp-python
Usage
There are several ways to use the Indian Legal Assistant model:
1. Using Hugging Face Pipeline
from transformers import pipeline
pipe = pipeline("text-generation", model="varma007ut/Indian_Legal_Assitant")
prompt = "Summarize the key points of the Indian Contract Act, 1872:"
result = pipe(prompt, max_length=200)
print(result[0]['generated_text'])
2. Using Hugging Face Transformers directly
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("varma007ut/Indian_Legal_Assitant")
model = AutoModelForCausalLM.from_pretrained("varma007ut/Indian_Legal_Assitant")
prompt = "What are the fundamental rights in the Indian Constitution?"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_length=200)
print(tokenizer.decode(outputs[0]))
3. Using GGUF format with llama-cpp-python
from llama_cpp import Llama
llm = Llama.from_pretrained(
repo_id="varma007ut/Indian_Legal_Assitant",
filename="ggml-model-q4_0.gguf", # Replace with the actual GGUF filename if different
)
response = llm.create_chat_completion(
messages = [
{
"role": "user",
"content": "Explain the concept of judicial review in India."
}
]
)
print(response['choices'][0]['message']['content'])
4. Using Inference Endpoints
This model supports Hugging Face Inference Endpoints. You can deploy the model and use it via API calls. Refer to the Hugging Face documentation for more information on setting up and using Inference Endpoints.
Evaluation
To evaluate the model's performance:
- Prepare a test set of Indian legal queries or tasks.
- Use standard NLP evaluation metrics such as perplexity, BLEU score, or task-specific metrics.
Example using BLEU score:
from datasets import load_metric
bleu = load_metric("bleu")
predictions = model.generate(encoded_input)
results = bleu.compute(predictions=predictions, references=references)
Contributing
We welcome contributions to improve the model or extend its capabilities. Please see our Contributing Guidelines for more details.
License
This project is licensed under the Apache 2.0 License. See the LICENSE file for details.
Note: While this model is based on the LLaMA architecture, it has been finetuned on Indian legal texts. Ensure compliance with all relevant licenses and terms of use when using this model.