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:

  1. Prepare a test set of Indian legal queries or tasks.
  2. 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.

Downloads last month
1,037
GGUF
Model size
8.03B params
Architecture
llama
Inference Examples
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social visibility and check back later, or deploy to Inference Endpoints (dedicated) instead.

Model tree for varma007ut/Indian_Legal_Assitant

Quantizations
2 models

Space using varma007ut/Indian_Legal_Assitant 1