AI-team-UoA/greek_legal_code
Viewer • Updated • 143k • 656 • 13
How to use ilivieris/Raptarchis with sentence-transformers:
from sentence_transformers import SentenceTransformer
model = SentenceTransformer("ilivieris/Raptarchis")
sentences = [
"Κύρωση της Συνθήκης επί των συμβατικών δυνάμεων στην Ευρώπη.",
"Κύρωση του τελικού κειμένου της Έκτακτης Διάσκεψηςτων Χωρών που μετέχουν στη Συνθήκη για τις Συμβατικές Ένοπλες Δυνάμεις στην Ευρώπη.",
"Κύρωση της Συνθήκης επί των συμβατικών δυνάμεων στην Ευρώπη μετά των συνημμένων σ` αυτήν ( 8 ) Πρωτοκόλλων και προσαρτημάτων αυτής.",
"Η διαδικασία ολοκληρώνεται με την υπογραφή και την κύρωση της συνθήκης ένταξης, μόνο εφόσον όλα τα μέρη είναι ικανοποιημένα."
]
embeddings = model.encode(sentences)
similarities = model.similarity(embeddings, embeddings)
print(similarities.shape)
# [4, 4]This is a sentence-transformers model: It maps sentences & paragraphs to a 256 dimensional dense vector space and can be used for tasks like clustering or semantic search.
Using this model becomes easy when you have sentence-transformers installed:
pip install -U sentence-transformers
Then you can use the model like this:
from sentence_transformers import SentenceTransformer
sentences = ["Κύρωση της Συνθήκης επί των συμβατικών δυνάμεων στην Ευρώπη", "Οι επιθεωρητές θα είναι πολίτες του επιθεωρούντος Συμβαλλομένου ή άλλων Συμβαλλομένων Κρατών"]
model = SentenceTransformer('livieris/Raptarchis')
embeddings = model.encode(sentences)
print(embeddings)
For an automated evaluation of this model, see the Sentence Embeddings Benchmark: https://seb.sbert.net
The model was trained with the parameters:
DataLoader:
torch.utils.data.dataloader.DataLoader of length 58398 with parameters:
{'batch_size': 16, 'sampler': 'torch.utils.data.sampler.RandomSampler', 'batch_sampler': 'torch.utils.data.sampler.BatchSampler'}
Loss:
sentence_transformers.losses.CosineSimilarityLoss.CosineSimilarityLoss
Parameters of the fit()-Method:
{
"epochs": 1,
"evaluation_steps": 250,
"evaluator": "sentence_transformers.evaluation.BinaryClassificationEvaluator.BinaryClassificationEvaluator",
"max_grad_norm": 1,
"optimizer_class": "<class 'torch.optim.adamw.AdamW'>",
"optimizer_params": {
"eps": 1e-06,
"lr": 2e-05
},
"scheduler": "WarmupLinear",
"steps_per_epoch": null,
"warmup_steps": 10000,
"weight_decay": 0.01
}
SentenceTransformer(
(0): Transformer({'max_seq_length': 256, 'do_lower_case': False}) with Transformer model: BertModel
(1): Pooling({'word_embedding_dimension': 768, 'pooling_mode_cls_token': False, 'pooling_mode_mean_tokens': True, 'pooling_mode_max_tokens': False, 'pooling_mode_mean_sqrt_len_tokens': False})
(2): Dense({'in_features': 768, 'out_features': 256, 'bias': True, 'activation_function': 'torch.nn.modules.activation.Tanh'})
)